1. Внешняя таблица стилей
Таблица стилей располагается в отдельном файле с расширением .css. Построена из записей (селекторов), каждая из которых состоит из наименования элемента и правила отображения:
элемент {свойство: значение; свойство: значение; ...}
элемент {свойство: значение; свойство: значение; ...}
. . . .
Параллельно в заголовок веб-страницы вставляется строчка
<head>
. . . .
<link href="адрес_файла_таблицы" rel="stylesheet" type="text/css">
. . . .
</head>
Очерёдность следования параметров в строке не имеет значения.
К одному документу можно подключить сразу несколько таблиц стилей.
Пример.
2. Внутренняя таблица стилей
Таблица стилей располагается в заголовке веб-страницы:
<head>
. . . .
<style type="text/css">
элемент {свойство: значение; свойство: значение; ...}
элемент {свойство: значение; свойство: значение; ...}
. . . .
</style>
. . . .
</head>
3. Встроенный стиль
Стиль описывается внутри дескриптора и действует только на его содержимое. Для этого внутрь тега на месте атрибута вставляется запись вида
style="свойство: значение; свойство: значение; ..."
Пример оформления:
<h3 style="color: chocolate; font-family: newroman"> ... </h3>
4. Импортирование таблиц
Метод позволяет встроить содержание одного CSS-файла в другой или во внутреннюю таблицу стилей. Для этого в таблицу вставляется запись вида
@import url("имя_файла"); (или @import "имя_файла", но в этом случае с обязательными кавычками). Данная запись должна располагаться до описания встроенных стилей, иначе обрабатываться браузером не будет. Можно также добавить необязательный параметр <тип устройства>, в котором определяется, для какого устройства предназначена эта подключаемая таблица.
Пример оформления:
<style type="text/css">
@import url(my_table.css) print; /*для принтеров*/
. . . .
</style>
5. Связь дескриптора с таблицей через идентификатор (id)
Существует ещё один способ установить связь между селектором (записью) в таблице стилей и конкретным дескриптором, обычно используется совместно со скриптами. Для этого в дескриптор должен быть помещён идентификатор
id="произвольное_имя", а в таблице стилей создана запись
#произвольное_имя {свойство: значение; свойство: значение; ...}.
Пример оформления:
<head>
. . . .
<style type="text/css">
#my_heading {color: black; text-decoration: underline}
. . . .
</style>
</head>
<body>
. . . .
<h2 id=my_heading>ВАЖНЫЙ ЗАГОЛОВОК</h2>
. . . .
Дополнительные замечания
Ниже перечислен ряд плохосвязанных между собой замечаний-напоминалок, касающихся использования внешних и внутренних стилевых таблиц.
- В качестве элемента можно использовать либо названия html-элементов (body, h3, p, ul), либо стилевые классы, названия которых придумывает пользователь (h2.my_style_class, font.ojprst23, .my_css2, .italic_font). Во втором случае для связи изменяемого текста с таблицей стиля тот должен быть помещён внутрь дексриптора, содержащего на месте атрибута запись вида class="имя_стилевого_класса" (к примеру, <h2 class=my_style_class>Изменённый заголовок второго уровня</h2> ).
- Если нужно нескольким элементам присвоить одинаковые правила отображение, можно сделать это в одном селекторе, перечислив названия элементов через запятую. ( элемент1, элемент2 {свойство: значение} )
- Можно создать контекстные стили. Т.е. стиль будет применён к элементу только в том случае, если данный элемент располагается сразу внутри нескольких определённых дескрипторов. (Пример: ul i {color : blue;} - синим будут окрашены только те участки текста, которые принадлежат к неупорядоченному списку и написаны курсивом.)
- Допускается создание нескольких селекторов, описывающих один и тот же элемент. При этом непересекающиеся правила отображения объединятся, а среди пересекающихся будет иметь приоритет тот, который расположен ниже.
- Если вдруг необходимо, чтобы какое-либо правило нельзя было перекрыть в дальнейшем, после него ставится выражение "!important" (без кавычек). К примеру: h3 {text-align: center !important; color: blue} - выравнивание переопределить в дальнейшем нельзя, а вот цвет можно.
- В содержимое таблиц стилей можно вставлять комментарии. Для этого те должны быть окружены символосочетаниями /* ... */ .
- К одному веб-документу допускается подключать сразу несколько внешних таблиц стилей.
- Некоторые старые браузеры не поддерживают CSS. Чтобы они не отображали встроенную таблицу стилей как текст документа, её содержимое можно заключить в комментарии HTML (<!-- -->). (стр. 202 учебника по HomesSite)
- Дополнить 5-ый пункт: существует также атрибут "class", аналогичный "id", но применяющийся к нескольким тегам или даже разновидностям тегов (учебник по HomeSite стр.198). Стоит отметить, что описание id начинается с "#", описание "class" c ".".
