Создание буквицы - Форум
( Новые сообщения ·Правила форума ·Поиск ·RSS )
Страница 1 из 11
Модератор форума: Ezhik 
Форум » Статьи о CSS » Рецепты CSS » Создание буквицы
Создание буквицы
EvgenyДата: Четверг, 25.02.2010, 19:45 | Сообщение # 1
Контр-Адмирал
Группа: Администраторы
Сообщений: 287
Статус:
Буквица является художественным приемом оформления текста и представляет собой увеличенную первую букву, базовая линия которой ниже на одну или несколько строк базовой линии основного текста.
Заметьте, что это не просто увеличенный символ, буквица не выступает над блоком текста, а является его частью (рис. 1).


[small]
Рис. 1. Вид буквицы в тексте
[/small]

Буквица в виде картинки

Буквица привлекает внимание читателя к началу текста, особенно если страница лишена других ярких деталей. Обычно кроме самого символа используются изображения растений, животных и других объектов. Это, конечно, не обязательно, но может придать определенный настрой содержанию. Если хочется именно так сделать на сайте, лучше всего для этого подойдет рисунок, выровненный по левому краю (пример 1).

[small]Пример 1. Создание буквицы с помощью рисунка[/small]

Code
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1251">
<title>Буквица</title>
</head>
<body>
< p><img src="d.gif" width="70" height="70" align="left" hspace="4" alt="Д">олго ли, коротко ли, скоро сказка сказывается, да не скоро дело делается, - приходит Иван-царевич к избушке; стоит в чистом поле избушка, на куриных лапках повертывается.</p>
</body>
</html>

Расстояние от текста до изображения управляется параметрами hspace — отступы вокруг рисунка по горизонтали и vspace — отступы по вертикали. Выравнивание рисунка по левому краю и одновременно его обтекание текстом создается параметром align тега < IMG> со значением left.

Достоинства рисунков в качестве буквицы следующие:


  • применение любого шрифта и разных эффектов;
  • простота метода;
  • возможность использовать в качестве графического формата анимированный GIF-файл, что дает дополнительные параметры оформления.

Недостатки: если буквица на сайте применяется довольно часто, придется подготовить множество рисунков разных букв, также усложняется возможность редактирования текста, т.к. вместо простого изменения буквы потребуется вставлять новый рисунок.

Буквица в тексте

Можно создать буквицу не в виде рисунка, а в качестве простого текста, увеличенного по сравнению с базовым шрифтом. Для того чтобы текст огибал первую букву, ее необходимо поместить в контейнер < SPAN> и для него задать свойство float со значением left, как показано в примере 2.

[small]Пример 2. Использование стилей для создания буквицы[/small]

Code
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1251">
<title>Буквица</title>
<style type="text/css">
.letter {
     font-size: 220%; /* Размер шрифта буквицы */
     float: left; /* Выравнивание по левому краю */
     color: blue; /* Цвет буквицы */
     padding-right: 3px; /* Отступ между буквицей и текстом */
     line-height: 32px; /* Положение символа */     
}
</style>
</head>
<body>
< p><span class="letter">Р</span>ангоут - совокупность деревянных частей оснащения судна, предназначенных для постановки парусов, сигнализации, поддержания грузовых стрел и проч. (мачты, стеньги, гафеля, бушприт и т.д.).</p>
</body>
</html>

Результат данного примера показан на рис. 2.


[small]Рис. 2. Вид буквицы, созданной с помощью стилей[/small]

Размер шрифта буквицы управляется с помощью параметра font-size, а цвет символа через color. Чтобы добавить небольшое пространство между буквицей и текстом используется атрибут padding-right. Также можно слегка сдвигать букву вверх или вниз за счет добавленного свойства line-height. Значение подбирается самостоятельно, исходя из гарнитуры шрифта, размера текста и собственны х предпочтений.

На самом деле создание буквицы можно автоматизировать, если вспомнить о псевдоэлементе first-letter. Он через двоеточие добавляется к требуемому селектору и определяет стиль первого символа текста. Таким образом, запись p:first-line будет задавать стиль первой буквы каждого абзаца текста (тега < P>). Так что в простейшем случае CSS перепишется, как показано в примере 3.

[small]Пример 3. Использование псевдоэлемента first-letter[/small]

Code
P:first-letter {
     font-size: 220%; /* Размер шрифта буквицы */
     float: left; /* Выравнивание по левому краю */
     color: blue; /* Цвет буквицы */
     padding-right: 3px; /* Отступ между буквицей и текстом */
}

Пойдем дальше и сделаем так, чтобы буквица добавлялась только для первого абзаца текста. Для этой цели конечно можно ввести новый класс и применять его к первому тегу < P> в тексте, но проще опять же воспользоваться всей мощью стилей и по максимуму автоматизировать свою работу. В частности, существуют соседние селекторы, благодаря которым и можно установить, чтобы стиль первого абзаца отличался от последующих. Общая запись в этом случае будет следующей.

Code
P {
/* Стиль для первого абзаца */
}

P + P { /* Соседние селекторы */     
/* Стиль для всех абзацев, кроме первого */
}

Пробелы вокруг плюса не обязательны, стиль при такой записи применяется к текстовому абзацу только в том случае, если перед ним был еще один абзац. Поскольку перед первым абзацем ничего нет (на то он и первый), то стиль соседнего селектора к нему не применим.

[off]Соседние селекторы не поддерживаются браузером Internet Explorer.[/off]

Для создания буквицы требуется добавить псевдоэлемент first-letter к селектору P и определить вид первого символа. Но поскольку это действие будет распространяться на все параграфы текста, то с помощью соседних селекторов требуется придать буквице вид обычного текста (пример 3).

[small]Пример 4. Использование дочерних селекторов[/small]

Code
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1251">
<title>Буквица</title>
<style type="text/css">
p:first-letter {
     font-size: 30pt; /* Размер шрифта буквицы */
     float: left; /* Выравнивание по левому краю */
     background-color: #fc0; /* Цвет фона */     
     padding: 3px; /* Поля вокруг буквы */
     margin-right: 4px; /* Отступ от фона до текста */     
}
p + p:first-letter {
     color: black; /* Черный цвет текста */     
     font-size: 12pt; /* Размер шрифта в пунктах */     
     background-color: #fff; /* Белый цвет фона */     
     padding: 0; /* Обнуляем поля */     
     margin: 0; /* Обнуляем отступы */     
}
</style>
</head>
<body>
<h1>Ловля льва методом случайных чисел</h1>
< p>Разделим пустыню, в которой живет лев, на ряд элементарных прямоугольников. После чего перебираем выделенные фрагменты пустыни, каждый раз выбирая фрагмент случайным образом. На каждом цикле итерации проверяем, находится ли здесь лев. Если да, то лев окажется пойман.</p>
< p>Некоторым читателям может показаться, что этот вариант похож на метод простых итераций, в котором происходит простой перебор участков пустыни для поиска льва. Это действительно так, за исключением того, что прямоугольники выбираются не последовательно, а случайно. Таким образом, в лучшем случае поиск может закончиться сразу же, а в худшем - превратиться в метод последовательного перебора.</p>
< p>Во всех случаях предполагается, что лев стационарен и не покидает своего места. Для поиска мобильного льва следует воспользоваться методом обратной реверберации или методом искривленного квазипространства.</p>
</body>
</html>

Результат данного примера показан ниже. В браузере Internet Explorer буквица будет добавлена к каждому абзацу без исключений.


[small]Рис. 3. Буквица для первого абзаца текста[/small]

Команда p + p:first-letter определяет стиль первой буквы всех абзацев кроме первого и предназначена для того, чтобы преобразовать буквицу в рядовой текст. Впрочем, ничего не мешает изменить цвет символов и получить тем самым новое оформление текстового материала.

 
Форум » Статьи о CSS » Рецепты CSS » Создание буквицы
Страница 1 из 11
Поиск:

Статистика Форума
Уважаемые пользователи
Популярные темы
Недавно обновленные темы
Evgeny Репутация [ 122 ]
akkemir22 Репутация [ 113 ]
Kuks64 Репутация [ 49 ]
Gavrik Репутация [ 48 ]
Anatoliy03 Репутация [ 37 ]
MiRel Репутация [ 33 ]
hius Репутация [ 23 ]
mVizio Репутация [ 19 ]
ewa69 Репутация [ 16 ]
straik67 Репутация [ 14 ]
Прочие [ 10 ]
О програмистах и Веб-Мастерах [ 6 ]
Про детей [ 6 ]
Про автомобилистов [ 5 ]
Про женщин [ 3 ]
Блондинка сдает на права ! (МЕГА ЖЕСТЬ) [ 2 ]
Про новых русских [ 2 ]
ВАЗ-2107 1000 лошадей [ 2 ]
Новый вид ББ-кодов на вашем сайте [ 2 ]
Про компьютеры [ 1 ]
Игры на телефон бесплатно [ 0 ]
Лучшее онлайн казино. Как обыграть казино? [ 0 ]
Инвест-Проект. Прибыль каждые 5 мин. [ 1 ]
Финансовая Взаимопомощь. Каждые 24ч получаете % [ 0 ]
Играть и зарабатывать онлайн [ 0 ]
Новый Топ пользователей с аватарами для Ucoz [ 0 ]
Простой и красивый вид формы опроса [ 0 ]
Красивый информер "кто нас сегодня посетил" для Ucoz [ 0 ]
Flash радио для сайта [ 0 ]
Заработок на играх [ 0 ]