Справочник CSS в удобном формате книги

Справочник CSS от htmlbook.ru в удобном формате книги. Все права на материал пренадлежат: htmlbook.ru

Часто пользуемся этим замечательным ресурсом, решили материалы выложить немного в другой форме.

Браузеры

Хотя большинство свойств CSS описаны достаточно давно, разработчики не всегда включали их поддержку в браузер или делали это не в полном объеме. По этой причине часто возникала ситуация, когда стандарты нельзя было применять только потому, что они не работали. К счастью, эта ситуация исправляется и современные браузеры поддерживают спецификацию CSS 2.1 практически в полном объеме, хотя еще и не до конца. Тем не менее, при создании универсальных веб-страниц, которые корректно отображаются в разных браузерах, необходимо знать, какие свойства будут работать и где, а какие нет. Для этого в таблице приведены популярные браузеры — Internet Explorer, Chrome, Opera, Safari и Firefox, а также используются следующие обозначения:

Да — свойство полностью поддерживается браузером со всеми допустимыми значениями;

Нет — свойство браузером не воспринимается и игнорируется;

Ошибки — свойство понимается браузером, но при его работе возможно появление различных ошибок. В примечании обычно указывается, какого рода ошибки обнаруживаются в браузере.

Предупреждение — свойство понимается браузером, но с некоторыми оговорками. Например, не все допустимые значения действуют; свойство применяется не ко всем элементам, которые указаны в спецификации; свойство работает только с вендорным префиксом.

Значение по умолчанию

Если какое-то свойство в стиле не приводится явно, то браузер, тем не менее, самостоятельно применяет его со значением, которое установлено по умолчанию. Подобные значения не всегда являются оптимальными, поэтому их можно переназначить, если напрямую указать свойство с желаемым значением.

Наследование

Наследование — это перенос правил форматирования для элементов, находящихся внутри других. Например, если для тега <p> задан красный цвет текста, а для курсива <i>, который находится внутри абзаца, нет, то в этом случае вложенный элемент наследует свойства своего родителя и курсивный текст также будет красным.

Наследование полезно для задания свойств, применяемых к элементу по умолчанию. Так, достаточно задать параметры форматирования тега <table> и к ячейкам таблицы <td> они будут применены автоматически. Точно так же можно определить свойства тега <body>, который порождает стиль всех остальных элементов веб-страницы.

Существует два варианта применения наследования. Если свойство наследуется, то для дочернего элемента то же свойство можно не указывать, кроме случая, когда его использование желательно. Наоборот, если свойство не наследуются, то для дочернего элемента требуется указать свойство снова или пропустить, когда оно не требуется.

Применение

Свойства CSS можно применять далеко не ко всем элементам веб-страницы, а только к тем, с которыми они «дружат». Большинство свойств работают со всеми элементами, а некоторые только с блочными или позиционированными. Например, для изображений совершенно бессмысленно устанавливать свойства, которые манипулируют с текстом. Так что в каждом случае следует решать самостоятельно, когда применять свойство, а когда нет.

Ссылка на спецификацию

Для объективности информации приводится ссылка на спецификацию CSS 2.1 или CSS 3 по указанному свойству. Саму спецификацию можно почитать по адресу http://www.w3.org/TR/CSS21/

Свойства CSS 3 еще не носят окончательный характер, поэтому ссылка приводится, как правило, на рабочие версии спецификации.

Версии CSS

Указано, в каких версиях CSS поддерживается стилевое свойство, а в каких нет. Используются следующие обозначения:

Да — свойство описано в указанной версии CSS.

Нет — свойство в эту версию спецификации CSS не включено.

Синтаксис

При описании синтаксиса применяются следующие обозначения:

  • вертикальная черта между значениями (например, fixed | scroll) указывает на логическое исключающее ИЛИ, это означает, что надо выбрать только одно значение из предложенных;
  • двойная вертикальная черта (border-style || color) обозначает объединяющее ИЛИ (ИЛИ/И), каждое значение может использоваться самостоятельно или совместно с другими через пробел;
  • квадратные скобки ([left | center | right]) помечают группу, из которой, как правило, выбирается одно значение, причем оно не является обязательным к использованию;
  • два числа в фигурных скобках ({a,b}) говорят, что предшествующее им значение следует повторять не менее a, но не более b раз.

Примеры

Все примеры проверены на соответствие спецификации HTML с помощью валидатора по адресу http://validator.w3.org, а также на соответствие спецификации CSS 2.1 и CSS 3 с помощью валидатора (http://jigsaw.w3.org/css-validator). Возле каждого примера располагается таблица, где цветом выделяется, валиден пример или нет. Также приводятся некоторые популярные браузеры, в которых выполнялся пример и указано, работает в них пример или нет. Работоспособность обозначается той же цветовой схемой, что и для таблицы с браузерами.

!important

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
6.0 7.0+ 1.0+ 3.5+ 3.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Значение по умолчанию Нет
Наследуется Нет
Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/CSS21/cascade.html#important-rules

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Играет роль в том случае, когда пользователи подключают свою собственную таблицу стилей. Если возникает противоречие, когда стиль автора страницы и пользователя для одного и того же элемента не совпадает, то !important позволяет повысить приоритет стиля.

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

  • !important добавлен в авторский стиль — будет применяться стиль автора.
  • !important добавлен в пользовательский стиль — будет применяться стиль пользователя.
  • !important нет как в авторском стиле, так и стиле пользователя — будет применяться стиль автора.
  • !important содержится в авторском стиле и стиле пользователя — будет применяться стиль пользователя.

Итог от применения !important в общем случае показан в табл. 1.

Табл. 1. Результат применения !important
Стиль автора Стиль пользователя Результат
BODY {
/* Серый цвет текста */
color: silver;

/* Размер текста 8 пунктов */
font-size: 8pt
}
BODY {
/* Черный цвет текста */
color: #000;

/* Размер текста 12 пунктов */
font-size: 12pt
}

Lorem ipsum dolor sit amet...

Будет применяться стиль автора, а именно: установлен серый цвет текста, размер шрифта 8 пунктов.

BODY {
/* Серый цвет текста */
color: silver;

/* Размер текста 8 пунктов */
font-size: 8pt
}
BODY {
/* Черный цвет текста, повышенная важность */
color: #000 !important;

/* Размер текста 12 пунктов */
font-size: 12pt
}

Lorem ipsum dolor sit amet...

Цвет текста будет установлен пользовательским, а размер шрифта останется исходным. В итоге увидим черный текст размером 8 пунктов.

BODY {
/* Серый цвет текста */
color: silver;

/* Размер текста 8 пунктов */
font-size: 8pt
}
BODY {
/* Черный цвет текста, повышенная важность */
color: #000 !important;

/* Размер текста 12 пунктов, повышенная важность */
font-size: 12pt !important
}

Lorem ipsum dolor sit amet...

Будут использоваться все стилевые свойства пользователя. Текст станет отображаться как черный, размер 12 пунктов.

BODY {
/* Серый цвет текста, повышенная важность */
color: silver !important;

/* Размер текста 8 пунктов, повышенная важность */

font-size: 8pt !important
}
BODY {
/* Черный цвет текста, повышенная важность */
color: #000 !important;

/* Размер текста 12 пунктов, повышенная важность */
font-size: 12pt !important
}

Lorem ipsum dolor sit amet...

При добавлении !important в ту и другую таблицу приоритет в этом случае имеет стиль пользователя. В результате текст станет черным, а размер его увеличится до 12 пунктов.

В браузере Internet Explorer подключение стиля пользователя делается через меню Сервис > Свойство обозревателя > Оформление, как показано на рис. 1.

Подключение стиля пользователя в браузере Internet Explorer

Рис. 1. Подключение стиля пользователя в браузере Internet Explorer

В браузере Opera аналогичное действие происходит через команду Инструменты > Общие настройки > Вкладка «Расширенные» > Содержимое > Кнопка «Настроить стили» (рис. 2).

Подключение стиля пользователя в браузере Opera

Рис. 2. Подключение стиля пользователя в браузере Opera

Синтаксис

Свойство: значение !important

Значения

У этого свойства нет значений.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>important</title>
  <style>
   p {
    background: url(images/tune1.png) no-repeat !important;
    min-height: 112px; /* Минимальная высота */
    padding-left: 65px; /* Поле слева от текста */
   }
   p {
    background: url(images/tune2.png) no-repeat;
   }
  </style>
 </head>
 <body>
    <p>Минорная пентатоника с пониженной V ступенью также называется блюзовой 
    пентатоникой.</p>
 </body>
</html>

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

Браузеры

При добавлении !important к значению стилевого свойства его важность повышается. Если переопределить значение того же свойства без !important, оно будет игнорироваться браузерами. Но только не в Intenet Explorer версии 6 и ниже.

Псевдоэлемент ::after

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
9.0+ 1.0+ 7.0+ 1.0+ 1.5+ 1.0+ 1.0+

Краткая информация

Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/css3-selectors/#gen-content

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Псевдоэлемент, который используется для вывода желаемого текста после содержимого элемента, к которому он добавляется. Псевдоэлемент ::after работает совместно со свойством content.

Для ::after характерны следующие особенности.

  1. При добавлении ::after к блочному элементу, значение свойства display может быть только: block, inline, none, marker. Все остальные значения будут трактоваться как block.
  2. При добавлении ::after к встроенному элементу, display ограничен значениями inline и none. Все остальные будут восприниматься как inline.

Синтаксис

элемент::after { content: "текст" }

Значения

Нет.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>after</title>
  <style>
    p.new::after {
      content: "Новьё!"; /* Добавляемый текст */ 
      color: #333; /* Цвет текста */ 
      background-color: #fc0; /* Цвет фона */ 
      font-size: 90%; /* Размер шрифта */ 
      padding: 2px; /* Поля вокруг текста */ 
    }
  </style>
 </head>
 <body>
  <h2>Истории</h2>
  <p class="new">История о том, как необходимо было сделать могилу, 
     ее начали копать, а потом закапывать, и что из этого получилось.</p>
  <p>История о том, как возле столовой появились загадочные розовые
     следы с шестью пальцами, и почему это случилось.</p>
 </body>
</html>

В данном примере в конце текстового абзаца, помеченного классом new, выводится определенный текст для привлечения внимания. Результат примера показан на рис. 1.

Результат использования псевдоэлемента ::after

Псевдоэлемент ::before

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
9.0+ 1.0+ 7.0+ 1.0+ 1.5+ 1.0+ 1.0+

Краткая информация

Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/css3-selectors/#gen-content

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Псевдоэлемент ::before применяется для отображения желаемого контента до содержимого элемента, к которому он добавляется. Работает совместно со свойством content.

Для ::before характерны следующие особенности.

  1. При добавлении ::before к блочному элементу, значение свойства display может быть только: block, inline, none, marker. Все остальные значения будут трактоваться как block.
  2. При добавлении ::before к встроенному элементу, display ограничен значениями inline и none. Все остальные будут восприниматься как inline.
  3. ::before наследует стиль от элемента, к которому он добавляется.

Синтаксис

элемент::before { content: "текст" }

Значения

Нет.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>before</title>
  <style>
   li::before {
     content: "¶ "; /* Добавляем желаемый символ перед элементом списка */ 
   }
   li {
     list-style: none; /* Убираем исходные маркеры */ 
   }
  </style>
 </head>
 <body>
   <ul>
     <li>Альфа</li>
     <li>Бета</li>
     <li>Гамма</li>
   </ul>
 </body>
</html>

В данном примере вместо стандартных маркеров списка с помощью псевдоэлемента ::before выводится символ ¶. Результат примера продемонстрирован на рис. 1.

Использование псевдоэлемента ::before в списках

Рис. 1. Использование псевдоэлемента ::before в списках

Браузеры

Браузер Internet Explorer до версии 9.0 работает только с нотацией :before, описанной в спецификации CSS 2.1.

Псевдоэлемент ::first-letter

Internet Explorer Chrome Opera Safari Firefox Android iOS
9.0+ 1.0+ 7.0+ 1.0+ 1.5+ 1.0+ 1.0+

Краткая информация

Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/css3-selectors/#first-letter

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

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

Синтаксис

элемент::first-letter { ... }

Значения

Нет.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>first-letter</title>
  <style>
   p {
    font-family: Arial, Helvetica, sans-serif; /* Гарнитура шрифта основного текста */
    font-size: 0.9em; /* Размер шрифта */
   }
   p::first-letter {
    font-family: "Times New Roman", Times, serif; /* Гарнитура шрифта первой буквы */
    font-size: 2em; /* Размер шрифта первого символа */
    color: red; /* Красный цвет текста */
   }
  </style>
 </head>
 <body>
   <p>Луч фонарика высветил старые скрипучие ступени, по которым не далее 
   как пять минут назад в дом поднялся Паша. Оля осторожно приоткрыла дверь и посветила
   внутрь дома. Луч света, словно нехотя, пробивался сквозь тугую 
   завесу из мрака и пыли. </p>
   <p>Взгляд Оли опустился на пол, и она вскрикнула. В пустом помещении никого
   не было, и лишь на полу валялась порванная туфля Паши.</p>
 </body>
</html>

Результат примера показан на рис. 1. В данном примере изменяется шрифт, размер и цвет первой буквы каждого абзаца текста.

Результат использования псевдоэлемента ::first-letter

Рис. 1. Результат использования псевдоэлемента ::first-letter

Браузеры

Браузер Internet Explorer до версии 9.0 работает только с нотацией :first-letter, описанной в спецификации CSS 2.1.

Псевдоэлемент ::first-line

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
9.0+ 1.0+ 7.0+ 1.0+ 1.5+ 1.0+ 1.0+

Краткая информация

Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/css3-selectors/#first-line

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Псевдоэлемент ::first-line задает стиль первой строки форматированного текста. Длина этой строки зависит от многих факторов, таких как используемый шрифт, размер окна браузера, ширина блока, языка и т.д. В правилах стиля допустимо использовать только свойства, относящиеся к шрифту, изменению цвета текста и фона.

Синтаксис

элемент::first-line { ... }

Значения

Нет.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>first-line</title>
  <style>
    p::first-line {
     color: red; /* Красный цвет текста */
     font-style: italic; /* Курсивное начертание */
     font-weight: bold; /* Жирное начертание */
    }
  </style>
 </head>
 <body>
   <p>Олимпия 2008<br />
   Основной претендент на I место это конечно же Джей Катлер, достигший наивысшего 
   результата за последние два года.</p>
 </body>
</html>

Результат примера показан на рис. 1. В данном примере первая строка, выделенная с помощью тега <br>, изменяет свой вид за счет начертания и цвета.

Результат использования псевдоэлемента ::first-line

Рис. 1. Результат использования псевдоэлемента ::first-line

Браузеры

Браузер Internet Explorer до версии 9.0 работает только с нотацией :first-line, описанной в спецификации CSS 2.1.

Псевдоэлемент ::selection

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
9.0+ 2.0+ 9.5+ 1.1+ 1.0+ 1.0+ 1.0+

Краткая информация

Применяется К выделенному тексту
Ссылка на спецификацию http://www.w3.org/TR/css3-selectors/#selection

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Псевдоэлемент ::selection применяет стиль к выделенному пользователем тексту. В правилах стилей допускается использовать следующие свойства: color, background и background-color.

Синтаксис

элемент::selection { ... }

Значения

Нет.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>selection</title>
  <style>
   p::selection {
    color: #ff0; /* Цвет текста */
    background: #000; /* Цвет фона */
   }
  </style>
 </head>
 <body>
  <p>При выделении этого текста он изменит свой цвет.</p>
 </body>
</html>

Результат примера показан на рис. 1. В данном примере при выделении текста он изменяет свой цвет и фон.

Результат использования псевдоэлемента :selection

Рис. 1. Результат использования псевдоэлемента ::selection

Браузеры

Firefox использует нестандартный псевдоэлемент ::-moz-selection.

Псевдокласс :active

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
6.0+ 1.0+ 3.5+ 1.3+ 1.0+ 1.0+ 1.0+

Краткая информация

Применяется К ссылкам (тег <a>)
Ссылка на спецификацию http://www.w3.org/TR/CSS21/selector.html#dynamic-pseudo-classes

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Псевдокласс :active определяет стиль для активной ссылки. Активной ссылка становится при нажатии на нее.

Синтаксис

A:active { ... }

Значения

Нет.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>active</title>
  <style>
   a:link {
    color: #0000d0; /* Цвет ссылок */
   }
   a:visited {
    color: #900060; /* Цвет посещенных ссылок */
   }
   a:active {
    color: #f00; /* Цвет активной ссылки */ 
   } 
  </style>
 </head>
 <body>
  <p><a href="task1.html">Вычислить число оборотов двигателя в минуту</a></p>
  <p>Дается: линейка, часы с секундной стрелкой, лист бумаги, нитка, карандаш, ножницы.</p>
 </body>
</html>

В данном примере задается цвет обычных, посещеных и активных ссылок. Результат примера показан на рис. 1.

Результат использования псевдокласса active

Рис. 1. Результат использования псевдокласса :active

Псевдоэлемент :after

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
8.0+ 1.0+ 4.0+ 9.2 1.0+ 1.0+ 3.5+ 1.0+ 1.0+

Краткая информация

Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/CSS21/selector.html#before-and-after

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Псевдоэлемент, который используется для вывода желаемого текста после содержимого элемента, к которому он добавляется. Псевдоэлемент :after работает совместно со свойством content.

Для :after характерны следующие особенности.

  • При добавлении :after к блочному элементу, значение свойства display может быть только: block, inline, none, list-item. Все остальные значения будут трактоваться как block.
  • При добавлении :after к встроенному элементу, display ограничен значениями inline и none. Все остальные будут восприниматься как inline.

Синтаксис

элемент:after  { content: "текст"  }

Значения

Нет.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>after</title>
  <style>
    p.new:after {
      content: "Новьё!"; /* Добавляемый текст */ 
      color: #333; /* Цвет текста */ 
      background-color: #fc0; /* Цвет фона */ 
      font-size: 90%; /* Размер шрифта */ 
      padding: 2px; /* Поля вокруг текста */ 
    }
  </style>
 </head>
 <body>
  <h2>Истории</h2>
  <p class="new">История о том, как необходимо было сделать могилу, 
     ее начали копать, а потом закапывать, и что из этого получилось.</p>
  <p>История о том, как возле столовой появились загадочные розовые
     следы с шестью пальцами, и почему это случилось.</p>
 </body>
</html>

В данном примере в конце текстового абзаца, помеченного классом new, выводится определенный текст для привлечения внимания. Результат примера показан на рис. 1.

Результат использования псевдоэлемента :after

Рис. 1. Результат использования псевдоэлемента :after

Браузеры

Opera 9.2 учитывает все пробелы, как если бы они были заключены в тег <pre>.

Браузер Firefox до версии 2.0 включительно нестабильно работает с позиционированными элементами, а также не применяет :after к тегу <fieldset>.

Firefox до версии 3.5 не допускал применение к :after свойств position, float, list-style-type и некоторых значений display.

Псевдоэлемент :before

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
8.0+ 1.0+ 4.0+ 9.2 1.0+ 1.0+ 3.5+ 1.0+ 1.0+

Краткая информация

Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/CSS21/selector.html#before-and-after

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Псевдоэлемент :before применяется для отображения желаемого контента до содержимого элемента, к которому он добавляется. Работает совместно со свойством content.

Для :before характерны следующие особенности.

  • При добавлении :before к блочному элементу, значение свойства display может быть только: block, inline, none, list-item. Все остальные значения будут трактоваться как block.
  • При добавлении :before к встроенному элементу, display ограничен значениями inline и none. Все остальные будут восприниматься как inline.
  • :before наследует стиль от элемента, к которому он добавляется.

Синтаксис

элемент:before { content: "текст" }

Значения

Нет.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>before</title>
  <style>
   li:before {
     content: "¶ "; /* Добавляем желаемый символ перед элементом списка */ 
   }
   li {
     list-style: none; /* Убираем исходные маркеры */ 
   }
  </style>
 </head>
 <body>
   <ul>
     <li>Альфа</li>
     <li>Бета</li>
     <li>Гамма</li>
   </ul>
 </body>
</html>

В данном примере вместо стандартных маркеров списка с помощью псевдоэлемента :before выводится символ ¶. Результат примера продемонстрирован на рис. 1.

Использование псевдоэлемента :before в списках

Рис. 1. Использование псевдоэлемента :before в списках

Браузеры

Opera 9.2 учитывает все пробелы, как если бы они были заключены в тег <pre>.

Браузер Firefox до версии 2.0 включительно нестабильно работает с позиционированными элементами, а также не применяет :before к тегу <fieldset>.

Firefox до версии 3.5 не допускает применение к :before свойств position, float, list-style-type и некоторых значений display.

Псевдокласс :checked

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
9.0+ 1.0+ 9.0+ 3.1+ 1.0+ 1.0+ 2.0+

Краткая информация

Применяется <input type="checkbox">, <input type="radio">
Ссылка на спецификацию http://www.w3.org/TR/css3-selectors/#checked

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Псевдокласс :checked применяется к элементам интерфейса, таким как переключатели (checkbox) и флажки (radio), когда они находятся в положение «включено». Переключение элементов в такое состояние происходит с помощью атрибута checked тега <input> или пользователем.

Синтаксис

элемент:checked { ... }

Значения

Нет.

Пример

<!DOCTYPE html>
 <head>
  <meta charset="utf-8">
  <title>checked</title>
  <style>
   input:checked + span {
    background: #fc0;
   }
  </style>
 </head>
 <body>
  <p><strong>С какими операционными системамы вы знакомы?</strong></p>
  <p><input type="checkbox" name="a1"><span>Windows 7</span><br>
  <input type="checkbox" name="a2"><span>Windows Vista</span><br>
  <input type="checkbox" name="a3"><span>Windows XP</span><br>
  <input type="checkbox" name="a4"><span>System X</span><br> 
  <input type="checkbox" name="a5"><span>Linux</span><br> 
  <input type="checkbox" name="a6"><span>Mac OS</span></p>
  <p><input type="submit" value="Отправить"></p>
 </body>
</html>

В данном примере текст возле отмеченных флажков выделяется фоновым цветом. Результат примера показан на рис. 1.

Результат использования псевдокласса checked

Рис. 1. Результат использования псевдокласса :checked

Псевдокласс :default

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
1.0+ 3.1+ 3.0+ 2.1+ 2.0+

Краткая информация

Применяется К элементам форм
Ссылка на спецификацию http://www.w3.org/TR/css3-ui/#pseudo-default

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Псевдокласс :default применяет стиль к элементам форм, которые установлены по умолчанию в группе похожих элементов.

Синтаксис

элемент:default { ... }

Значения

Нет.

Пример

<!DOCTYPE html>
 <head>
  <meta charset="utf-8">
  <title>default</title>
  <style>
   :default { 
    background-color: lime; 
   } 
  </style>
 </head>
 <body>
  <form>
   <p><input type="submit"> <input type="submit"> <input type="reset"></p>
  </form>
 </body>
</html>

Результат примера показан на рис. 1. В данном примере кнопка Submit, заданная по умолчанию, имеет другой цвет.

Результат использования псевдокласса :default

Рис. 1. Результат использования псевдокласса :default

Псевдокласс :disabled

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
9.0+ 1.0+ 9.0+ 3.1+ 1.0+ 1.0+ 2.0+

Краткая информация

Применяется к элементам формы
Ссылка на спецификацию http://www.w3.org/TR/css3-selectors/#enableddisabled

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Псевдокласс :disabled используется для применения стиля к заблокированным элементам форм. Такие элементы не могут получить фокус, быть нажатыми или активированы, в текстовых полях нельзя набирать текст.

Синтаксис

элемент:disabled { ... }

Значения

Нет.

Пример

<!DOCTYPE html>
 <head>
  <meta charset="utf-8">
  <title>disabled</title>
  <style>
   textarea:disabled { 
    background: url(images/dline.png); 
    border: 1px solid #666; 
    padding: 5px;
   }
  </style>
 </head>
 <body>
  <form>
   <p><textarea disabled cols="30" rows="5">
   Это заблокированное поле, в него нельзя ничего писать</textarea></p>
  </form> 
 </body>
</html>

В данном примере изменен стиль заблокированного текстового поля. Результат примера показан на рис. 1.

Результат использования псевдокласса :disabled

Рис. 1. Результат использования псевдокласса :disabled

Псевдокласс :empty

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
9.0+ 1.0+ 9.5+ 3.1+ 1.0+ 1.0+ 2.0+

Краткая информация

Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/css3-selectors/#empty-pseudo

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Псевдокласс :empty представляет пустые элементы, иными словами такие, которые не содержат дочерних элементов, текста или пробелов. К примеру, <p></p> является пустым элементов, а <p> </p>, <p>&nbsp;</p> или <p>эге</p> уже нет.

Синтаксис

элемент:empty { ... }

Значения

Нет.

Пример

<!DOCTYPE html>
 <head>
  <meta charset="utf-8">
  <title>empty</title>
  <style>
   span:empty {
    background: red;
    padding: 3px;
    margin-left: 7px;
    display: inline-block;
   }
  </style>
 </head> 
 <body> 
  <p>Линеарная фактура, в том числе, иллюстрирует фузз, и здесь мы видим 
  ту самую каноническую секвенцию с разнонаправленным шагом 
  отдельных звеньев<span></span></p>
 </body> 
</html>

Результат данного примера в браузере Safari показан на рис. 1.

Применение псевдокласса :empty

Рис. 1. Применение псевдокласса :empty

Псевдокласс :empty

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
9.0+ 1.0+ 9.0+ 3.1+ 1.0+ 1.0+ 2.0+

Краткая информация

Применяется К элементам формы
Ссылка на спецификацию http://www.w3.org/TR/css3-selectors/#enableddisabled

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Псевдокласс :enabled используется для применения стиля к доступным (не заблокированным) элементам форм. По умолчанию, все элементы форм являются доступными, если в коде HTML к ним  не добавляется атрибут disabled.

Синтаксис

элемент:enabled { ... }

Значения

Нет.

Пример

<!DOCTYPE html>
 <head>
  <meta charset="utf-8">
  <title>enabled</title>
  <script>
   function agreeForm(f) {
    if (f.agree.checked) f.submit.disabled = 0;
    else f.submit.disabled = 1;
   }
  </script>
  <style>
   input:enabled { background: red; }
  </style>
 </head>
 <body>
  <form>
   <p>Типовой договор</p>
   <p><input type="checkbox" name="agree" onclick="agreeForm(this.form)"> 
   Я согласен со всеми условиями</p>
   <p><input type="submit" name="submit" value="Отправить" disabled></p>
  </form>
 </body>
</html>

В данном примере при включении галочки добавляется стиль к кнопке. Результат примера показан на рис. 1.

Результат использования псевдокласса :enabled

Рис. 1. Результат использования псевдокласса :enabled

Псевдокласс :first-child

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
7.0+ 1.0+ 3.5+ 1.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/CSS21/selector.html#first-child

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Псевдокласс :first-child применяет стилевое оформление к первому дочернему элементу своего родителя.

Синтаксис

элемент:first-child { ... }

Значения

Нет.

Пример 1

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
 <head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <title>first-child</title>
  <style type="text/css">
    B:first-child {
     color: red; /* Красный цвет текста */
    }
  </style>
 </head>
 <body>
   <p><b>Lorem ipsum</b> dolor sit amet, <b>consectetuer</b> 
   adipiscing <b>elit</b>, sed diem nonummy nibh euismod tincidunt ut lacreet 
   dolore magna aliguam erat volutpat.</p>
   <p><b>Ut wisis enim</b> ad minim veniam, <b>quis nostrud</b> 
   exerci tution ullamcorper suscipit lobortis nisl ut aliquip ex ea <b>commodo 
   consequat</b>.</p>
 </body>
</html>

Результат примера показан на рис. 1. В данном примере псевдокласс :first-child добавляется к селектору b и устанавливает для него красный цвет текста. Хотя контейнер <b> встречается в первом абзаце три раза, красным цветом будет выделено лишь первое упоминание, т.е. текст «Lorem ipsum». В остальных случаях содержимое контейнера <b> отображается черным цветом. Со следующим абзацем все начинается снова, поскольку родительский элемент поменялся. Поэтому фраза «Ut wisis enim» также будет выделена красным цветом.

Выделение цветом первого дочернего элемента абзаца

Рис. 1. Выделение цветом первого дочернего элемента абзаца

Пример 2

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>Меню</title>
  <style>
   .links { 
    background: #F6967D; /* Цвет фона */
   }
   .links a {
    color: #FFFDEB; /* Цвет ссылок */
    display: inline-block; /* Строчно-блочный элемент */
    border-left: 1px solid #B62025; /* Параметры рамки слева */
    padding: 5px 10px; /* Поля вокруг ссылок */
   }
   .links a:first-child {
    border-left: none; /* Убираем первую линию слева */
   }
  </style>
 </head>
 <body>
  <div class="links">
    <a href="1.html">uno</a>
    <a href="2.html">dos</a>
    <a href="3.html">tres</a>
    <a href="4.html">cuatro</a>
  </div>
 </body>
</html>

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

Ссылки с линией слева

Псевдоэлемент :first-letter

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
6.0+ 8.0+ 1.0+ 3.5+ 1.0+ 1.0+ 3.0+ 1.0+ 1.0+

Краткая информация

Применяется К блочным элементам
Ссылка на спецификацию http://www.w3.org/TR/CSS21/selector.html#first-letter

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

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

Синтаксис

элемент:first-letter { ... }

Значения

Нет.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>first-letter</title>
  <style>
   p {
    font-family: Arial, Helvetica, sans-serif; /* Гарнитура шрифта основного текста */
    font-size: 90%; /* Размер шрифта */
   }
   P:first-letter {
    font-family: "Times New Roman", Times, serif; /* Гарнитура шрифта первой буквы */
    font-size: 200%; /* Размер шрифта первого символа */
    color: red; /* Красный цвет текста */
   }
  </style>
 </head>
 <body>
   <p>Луч фонарика высветил старые скрипучие ступени, по которым не далее 
   как пять минут назад в дом поднялся Паша. Оля осторожно приоткрыла дверь и посветила
   внутрь дома. Луч света, словно нехотя, пробивался сквозь тугую 
   завесу из мрака и пыли. </p>
   <p>Взгляд Оли опустился на пол, и она вскрикнула. В пустом помещении никого
   не было, и лишь на полу валялась порванная туфля Паши.</p>
 </body>
</html>

Результат примера показан на рис. 1. В данном примере изменяется шрифт, размер и цвет первой буквы каждого абзаца текста.

Результат использования псевдоэлемента :first-letter

Рис. 1. Результат использования псевдоэлемента :first-letter

Браузеры

Internet Explorer до версии 7 включительно, Firefox до версии 2.0 включительно игнорируют свойство letter-spacing, когда оно применяется к псевдоэлементу :first-letter.

Псевдоэлемент :first-line

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
6.0+ 1.0+ 3.5+ 1.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Применяется К блочным элементам, а также к элементам, у которых значение display задано как inline-block, table-caption или table-cell
Ссылка на спецификацию http://www.w3.org/TR/CSS21/selector.html#first-line-pseudo

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Псевдоэлемент :first-line задает стиль первой строки форматированного текста. Длина этой строки зависит от многих факторов, таких как используемый шрифт, размер окна браузера, ширина блока, языка и т.д. В правилах стиля допустимо использовать только свойства, относящиеся к шрифту, изменению цвета текста и фона.

Синтаксис

элемент:first-line { ... }

Значения

Нет.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>first-line</title>
  <style>
    p:first-line {
     color: red; /* Красный цвет текста */
     font-style: italic; /* Курсивное начертание */
     font-weight: bold; /* Жирное начертание */
    }
  </style>
 </head>
 <body>
   <p>Олимпия 2008<br />
   Основной претендент на I место это конечно же Джей Катлер, достигший наивысшего 
   результата за последние два года.</p>
 </body>
</html>

Результат примера показан на рис. 1. В данном примере первая строка, выделенная с помощью тега <br>, изменяет свой вид за счет начертания и цвета.

Результат использования псевдоэлемента :first-line

Рис. 1. Результат использования псевдоэлемента :first-line

Псевдокласс :first-of-type

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
9.0+ 1.0+ 9.5+ 3.1+ 3.5+ 2.1+ 2.0+

Краткая информация

Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/css3-selectors/#first-of-type-pseudo

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Псевдокласс :first-of-type задает правила стилей для первого элемента в списке дочерних элементов своего родителя. К примеру, добавление :first-of-type к селектору TD устанавливает стиль для всех первых ячеек, поскольку родителем для тега <td> выступает тег <tr>.

Синтаксис

элемент:first-of-type { ... }

Значения

Нет.

Пример

<!DOCTYPE html>
 <head>
  <meta charset="utf-8">
  <title>first-of-type</title>
  <style>
   table {
    border-collapse: collapse; /* Убираем двойные границы */
    width: 100%; /* Ширина таблицы */
    border-spacing: 0; /* Расстояние между ячеек */
   }
   td { 
    border: 1px solid #6A3E14; /* Параметры рамки */
    padding: 4px; /* Поля в ячейках */
   }
   tr:first-of-type {
    background: #808990; /* Цвет фона */
    color: #fff; /* Цвет текст */
   }
   td:first-of-type {
    background: #CFD6D3; /* Цвет фона */
   }
  </style>
 </head>
 <body>
  <table>
   <tr> 
    <td>&nbsp;</td><td>1998</td><td>1999</td><td>2000</td><td>2001</td>
    <td>2002</td><td>2003</td>
   </tr>
   <tr> 
    <td>Нефть</td>
    <td>3</td><td>22</td><td>34</td><td>62</td><td>74</td><td>57</td>
   </tr>
   <tr>
    <td>Золото</td>
    <td>4</td><td>13</td><td>69</td><td>72</td><td>56</td><td>47</td>
   </tr>
   <tr>
    <td>Дерево</td>
    <td>4</td><td>7</td><td>73</td><td>79</td><td>34</td><td>86</td>
   </tr>
  </table>
 </body>
</html>

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

Результат использования псевдокласса :first-of-type в таблице

Рис. 1. Результат использования псевдокласса :first-of-type в таблице

Псевдокласс :focus

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
8.0+ 1.0+ 7.0+ 1.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Применяется К элементам, которые могут получить фокус (<a>, <input>, <select> и <textarea>)
Ссылка на спецификацию http://www.w3.org/TR/CSS21/selector.html#dynamic-pseudo-classes

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Псевдокласс :focus определяет стиль для элемента получающего фокус. Например, им может быть текстовое поле формы, в которое устанавливается курсор.

Синтаксис

элемент:focus { ... }

Значения

Нет.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>focus</title>
  <style>
   #enter .label {
     width: 80px; /* Ширина блока с текстом */
     float: left; /* Расположение в одну строку с полем */
     text-align: right; /* Выравнивание по правому краю */
   }
   #enter .form-text {
     width: 240px; /* Ширина поля */
     margin-left: 10px; /* Расстояние между полем и текстом */
     border: 1px solid #abadb3; /* Рамка вокруг текстового поля */
     padding: 2px; /* Поля вокруг текста */
   }
   #enter .form-item {
     margin-bottom: 5px; /* Отступ снизу */
   }
   #enter .form-text:focus {
     background: #ffe; /* Цвет фона */
     border: 1px solid #29B0D9; /* Параметры рамки */
   }
   #enter p {
    margin-left: 90px; /* Сдвиг вправо */
   }
  </style>
 </head>
 <body>
  <form action="login.php" method="post" id="enter">
   <div class="form-item">
     <span class="label">Логин:</span>
     <span class="field"><input type="text" name="login" value="" class="form-text"></span>
   </div>
   <div class="form-item">
     <span class="label">Пароль:</span>
     <span class="field"><input type="password" name="pass" class="form-text"></span>
   </div>
   <p><input type="submit" value="Войти" /></p>
  </form>
 </body>
</html>

Результат данного примера показан на рис. 1. При получении фокуса текстовое поле меняет цвет фона и цвет границы.

Результат использования псевдокласса :focus

Рис. 1. Результат использования псевдокласса :focus

Браузеры

Chrome не добавляет стиль для селектора a, чтобы заставить его понимать правило a:focus, добавьте к тегу <a> атрибут tabindex.

<a href="1.html" tabindex="1">Ссылка</a>

Псевдокласс :hover

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
6.0+ 8.0+ 1.0+ 4.0+ 1.0+ 1.0+

Краткая информация

Применяется Не определено
Ссылка на спецификацию http://www.w3.org/TR/CSS21/selector.html#dynamic-pseudo-classes

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Определяет стиль элемента при наведении на него курсора мыши, но при этом элемент еще не активирован, иными словами кнопка мыши не нажата.

Синтаксис

элемент:hover { ... }

Значения

Нет.

Пример 1

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8" />
  <title>hover</title>
  <style>
   a:link {
    color: #0000d0; /* Цвет ссылок */
    padding: 2px; /* Поля вокруг текста */ 
   }
   a:hover {
    background: #786b59; /* Цвет фона под ссылкой */ 
    color: #ffe; /* Цвет ссылки */ 
   } 
  </style>
 </head>
 <body>
  <p><a href="1.html">Ссылка 1</a></p>
  <p><a href="2.html">Ссылка 2</a></p>
  <p><a href="3.html">Ссылка 3</a></p> 
 </body>
</html>

В данном примере псевдокласс :hover применяется к ссылке (тегу <a>), при этом меняется цвет ссылки и фона под ней. Результат примера показан на рис. 1.

Результат использования псевдокласса :hover для ссылок

Рис. 1. Результат использования псевдокласса :hover для ссылок

Пример 2

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>hover</title>
  <style>
   ul {
    width: 180px; /* Ширина меню */
    list-style: none; /* Для списка убираем маркеры */
    margin: 0; /* Нет отступов вокруг */
    padding: 0; /* Убираем поля вокруг текста */
    font-family: Arial, sans-serif; /* Рубленый шрифт для текста меню */
    font-size: 10pt; /* Размер названий в пункте меню */
   }
   li ul {
    position: absolute; /* Подменю позиционируются абсолютно */
    display: none; /* Скрываем подменю */
    margin-left: 165px; /* Сдвигаем подменю вправо */
    margin-top: -2em; /* Сдвигаем подменю вверх */
   }
   li a {
    display: block; /* Ссылка как блочный элемент */
    padding: 5px; /* Поля вокруг надписи */
    text-decoration: none; /* Подчеркивание у ссылок убираем */
    color: #666; /* Цвет текста */
    border: 1px solid #ccc;/* Рамка вокруг пунктов меню */
    background-color: #f0f0f0; /* Цвет фона */
    border-bottom: none; /* Границу снизу не проводим */
   }
   li a:hover {
    color: #ffe; /* Цвет текста активного пункта */
    background-color: #5488af; /* Цвет фона активного пункта */
   }
   li:hover ul { 
    display: block; /* При выделении пункта курсором мыши отображается подменю */
   }
   .brd {
    border-bottom: 1px solid #ccc; /* Линия снизу */
   }
  </style>
 </head>
 <body>
  <ul class="menu">
   <li><a href="russian.html">Русская кухня</a>
    <ul> 
     <li><a href="linkr1.html">Бефстроганов</a></li> 
     <li><a href="linkr2.html">Гусь с яблоками</a></li> 
     <li><a href="linkr3.html">Крупеник новгородский</a></li> 
     <li><a href="linkr4.html" class="brd">Раки по-русски</a></li> 
    </ul> 
   </li> 
   <li><a href="ukrainian.html">Украинская кухня</a> 
    <ul> 
     <li><a href="linku1.html">Вареники</a></li> 
     <li><a href="linku2.html">Жаркое по-харьковски</a></li> 
     <li><a href="linku3.html">Капустняк черниговский</a></li> 
     <li><a href="linku4.html" class="brd">Потапцы с помидорами</a></li> 
    </ul> 
   </li>
   <li><a href="caucasus.html">Кавказская кухня</a> 
    <ul> 
     <li><a href="linkc1.html">Суп-харчо</a></li> 
     <li><a href="linkc2.html">Лилибдж</a></li> 
     <li><a href="linkc3.html">Чихиртма</a></li> 
     <li><a href="linkc4.html" class="brd">Шашлык</a></li> 
    </ul> 
   </li> 
   <li><a href="asia.html" class="brd">Кухня Средней Азии</a></li> 
  </ul>
 </body>
</html>

В данном примере псевдокласс :hover добавляется к элементу списка (тег <li>) для создания двухуровневого меню. Результат примера показан на рис. 2.

Использование :hover для создания меню

Рис. 2. Использование :hover для создания меню

Браузеры

В браузере Internet Explorer до версии 6.0 включительно псевдокласс :hover работает только для ссылок.

Псевдокласс :indeterminate

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
9.0+ 1.0+ 10.60+ 3.1+ 3.6+ 2.1+ 2.0+

Краткая информация

Значение по умолчанию Нет
Ссылка на спецификацию http://www.w3.org/TR/css3-selectors/#indeterminate

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Псевдокласс :indeterminate задает стиль для элементов форм, таким как флажки и переключатели, когда они находятся в неопределенном состоянии. К примеру, если из группы флажков ни один не помечен, то флажки находятся в указанном состоянии. В реальности, стиль применяется только к элементам, у которых DOM-атрибут :indeterminate через JavaScript установлен в значение true.

Синтаксис

элемент:indeterminate { ... }

Значения

Нет.

Пример

<!DOCTYPE html>
 <head>
  <meta charset="utf-8">
  <title>indeterminate</title>
  <style>
   :indeterminate, :indeterminate + span { background: limegreen; }
   input, span { background: red; }
  </style>
 </head>
 <body>
  <form>
   <p><input type="checkbox"> <span>Этот текст станет зеленым, если чекбокс 
    находится в неопределенном состоянии.</span></p>
  </form> 
  <script>
   document.getElementsByTagName("input")[0].indeterminate = true;
  </script>
 </body>
</html>

В данном примере с помощью JavaScript первый элемент формы переводится в неопределенное состояние и к нему применяются стили. Результат примера показан на рис. 1.

Результат использования псевдоэлемента :indeterminate

Рис. 1. Результат использования псевдоэлемента :indeterminate

Псевдокласс :invalid

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
8.0+ 9.5+ 5.0+ 4.0+ 2.1+ 3.0+

Краткая информация

Применяется К <input>
Ссылка на спецификацию http://www.w3.org/TR/css3-ui/#pseudo-validity

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Применяется к полям формы, содержимое которых не соответствует указанному типу. Например, для type="number" должно вводиться число, а не буквы, для type="email" корректный адрес электронной почты.

Синтаксис

input:invalid { ... }

Значения

Нет.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>:invalid</title>
  <style>
   input:invalid {
    background: #fdd; /* Красный цвет фона */
   }
   input:valid {
    background: #dfd; /* Зеленый цвет фона */
   }
  </style>
 </head>
 <body>
  <form>
   <p>Адрес сайта</p>
   <p><input type="url" required></p>
   <p>Адрес электронной почты</p>
   <p><input type="email" required></p>
   <p><input type="submit" value="Отправить" /></p>
  </form>
 </body>
</html>

В данном примере корректно заполненные поля формы обозначаются зеленым фоном, а некорректные красным. Результат примера в Chrome показан на рис. 1.

Использование псевдокласса :invalid

Рис. 1. Использование псевдокласса :invalid

Псевдокласс :lang

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
8.0+ 2.0+ 8.0+ 3.1+ 1.0+ 2.1+ 2.0+

Краткая информация

Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/CSS21/selector.html#lang

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Определяет язык, который используется в документе или его фрагменте. В коде HTML язык устанавливается через атрибут charset тега <meta>. В XML для этой цели применяется xml:lang.

С помощью псевдокласса :lang можно задавать определенные настройки, характерные для разных языков, например, вид кавычек в цитатах.

Синтаксис

элемент:lang(<язык>) { ... }

Значения

В качестве языка могут выступать следующие значения: ru — русский; en — английский ; de — немецкий; fr — французский; it — итальянский и др.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>lang</title>
  <style>
   p {
    font-size: 1.5em; /* Размер текста */ 
   }
   q:lang(de) {
    quotes: "\201E" "\201C"; /* Вид кавычек для немецкого языка */ 
   }
   q:lang(en) {
    quotes: "\201C" "\201D"; /* Вид кавычек для английского языка */ 
   }
   q:lang(fr), q:lang(ru) { /* Вид кавычек для русского и французского языка */ 
    quotes: "\00AB" "\00BB"; 
   }
  </style>
 </head>
 <body>
  <p>Цитата на французском языке: <q lang="fr">Ce que femme veut, Dieu le veut</q>.</p>
  <p>Цитата на немецком: <q lang="de">Der Mensch, versuche die Gotter nicht</q>.</p>
  <p>Цитата на английском: <q lang="en">То be or not to be</q>.</p>
 </body>
</html>

Результат данного примера показан на рис. 1. Для отображения типовых кавычек в примере используется стилевое свойство quotes, а само переключение языка и соответствующего вида кавычек происходит через атрибут lang, добавляемый к тегу <q>.

Результат использования псевдокласса :lang

Рис. 1. Результат использования псевдокласса :lang

Псевдокласс :last-child

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
9.0+ 1.0+ 9.6+ 1.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/css3-selectors/#last-child-pseudo

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Псевдокласс :last-child задает стилевое оформление последнего элемента своего родителя.

Синтаксис

элемент:last-child { ... }

Значения

Нет.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>last-child</title>
  <style>
   .block {
    background: #7da7d9; /* Цвет фона */
    color: #fff; /* Цвет текста */
   }
   .block :first-child {
    padding: 10px; /*  Поля вокруг текста */
   }
   .block :last-child { 
    background: #dda458 url(images/line.png) repeat-x; /* Параметры фона */
    height: 5px; /* Высота блока */
   }
  </style>
 </head>
 <body>
  <div class="block">
   <div>
    При истечении возможности понимания вышеизложенной информации вы
    имеете объективную возможность подать официальный запрос главному 
    субординатору локальной виртуальной вселенной.
   </div>
   <div></div>
  </div>
 </body>
</html>

Результат примера показан на рис. 1. В данном примере псевдокласс :last-child применяется для определения стиля последнего тега <div>, расположенного внутри контейнера с именем класса block. Это позволило создать цветную полосу внизу блока без включения новых классов.

Результат использования псевдокласса :last-child

Рис. 1. Результат использования псевдокласса :last-child

Псевдокласс :last-of-type

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
9.0+ 1.0+ 9.6+ 3.1+ 3.5+ 2.1+ 2.0+

Краткая информация

Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/css3-selectors/#last-of-type-pseudo

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Псевдокласс :last-of-type задает правила стилей для последнего элемента в списке дочерних элементов своего родителя. К примеру, добавление :last-of-type к селектору li устанавливает стиль только для последнего пункта списка, при этом не распространяется на остальные пункты.

Синтаксис

элемент:last-of-type { ... }

Значения

Нет.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>last-of-type</title>
  <style>
   p:last-of-type:after {
    content: " \25C4"; /* Добавляем символ в конце текста */
    color: #c00000; /* Цвет символа */
   }
  </style>
 </head>
 <body>
  <p>Этот старинный скандинавский напиток пришел к нам из древних времен и 
  воспет во многих песнях. Теперь вы самостоятельно можете приготовить 
  его и насладиться чудесным вкусом и ароматом легендарного нектара.</p>
  <p>...</p>
  <p>Осталось добавить хлива и хрольва, чтобы напиток был готов. Подавать горячим.</p>
 </body>
</html>

В данном примере в последнем абзаце текста добавляется специальный символ красного оттенка. Результат примера показан на рис. 1.

Результат использования псевдокласса :last-of-type

Рис. 1. Результат использования псевдокласса :last-of-type

Псевдокласс :link

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
6.0+ 1.0+ 3.5+ 1.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Применяется К ссылкам (тег <a>)
Ссылка на спецификацию http://www.w3.org/TR/CSS21/selector.html#link-pseudo-classes

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Псевдокласс :link применяется к ссылкам, которые еще не посещались пользователем, и задает для них стилевое оформление.

Синтаксис

a:link { ... }

Значения

Нет.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>link</title>
  <style>
   a:link {
    color: #0000d0; /* Цвет ссылок */
   }
   a:visited {
    color: #900060; /* Цвет посещенных ссылок */
   }
  </style>
 </head>
 <body>
   <p><a href="task2.html">Выяснить вес нестандартного груза (камень)</a></p> 
   <p>Дается: стул, палка, веревка, безмен с ограничением по весу.</p>
 </body>
</html>

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

Результат использования псевдокласса :link

Рис. 1. Результат использования псевдокласса :link

Псевдокласс :not

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
9.0+ 1.0+ 9.6+ 1.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/css3-selectors/#negation

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Псевдокласс :not задаёт правила стилей для элементов, которые не содержат указанный селектор.

Синтаксис

элемент:not(<селектор>) { ... }

В качестве селектора могут указываться псевдоклассы, теги, идентификаторы, классы и селекторы атрибутов. Нельзя использовать псевдокласс :not (конструкция :not(:not(...)) запрещена) и псевдоэлементы.

Значения

Нет.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>not</title>
  <style>
   input:not([type="submit"]) {
    border: 1px solid #ccc;
    padding: 3px;
   }
  </style>
 </head>
 <body>
  <form>
   <p>Ваше имя: <input name="user"></p>
   <p>Прилагаемый файл: <input type="file" name="file"></p>
   <p><input type="submit" value="Отправить"></p>
  </form>
 </body>
</html>

В данном примере стиль применяется ко всем тегам <input> за исключением тега, в параметрах которого установлено type="submit" (кнопка «Отправить»). Результат примера показан на рис. 1.

Результат использования псевдокласса :not

Рис. 1. Результат использования псевдокласса :not

Псевдокласс :nth-child

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
9.0+ 1.0+ 9.6+ 3.1+ 3.6+ 2.1+ 2.0+

Краткая информация

Значение по умолчанию Нет
Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/css3-selectors/#nth-child-pseudo

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Псевдокласс :nth-child используется для добавления стиля к элементам на основе нумерации в дереве элементов.

Синтаксис

элемент:nth-child(odd | even | <число> | <выражение>) {...}

Значения

odd
Все нечетные номера элементов.
even
Все четные номера элементов.
число
Порядковый номер дочернего элемента относительно своего родителя. Нумерация начинается с 1, это будет первый элемент в списке.
выражение
Задается в виде an+b, где a и b целые числа, а n — счетчик, который автоматически принимает значение 0, 1, 2...

Если a равно нулю, то оно не пишется и запись сокращается до b. Если b равно нулю, то оно также не указывается и выражение записывается в форме an. a и b могут быть отрицательными числами, в этом случае знак плюс меняется на минус, например: 5n-1.

За счет использования отрицательных значений a и b некоторые результаты могут также получиться отрицательными или равными нулю. Однако на элементы оказывают влияние только положительные значения из-за того, что нумерация элементов начинается с 1.

В табл. 1 приведены некоторые возможные выражения и ключевые слова, а также указано, какие номера элементов будут задействованы.

Табл. 1. Результат для различных значений псевдокласса
Значение Номера элементов Описание
1 1 Первый элемент, является синонимом псевдокласса :first-child.
5 5 Пятый элемент.
2n 2, 4, 6, 8, 10 Все четные элементы, аналог значения even.
2n+1 1, 3, 5, 7, 9 Все нечетные элементы, аналог значения odd.
3n+2 2, 5, 8, 11, 14
-n+3 3, 2, 1
5n-2 3, 8, 13, 18, 23
even 2, 4, 6, 8, 10 Все четные элементы.
odd 1, 3, 5, 7, 9 Все нечетные элементы.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>nth-child</title>
  <style>
   table { 
    width: 100%; /* Ширина таблицы */
    border-spacing: 0; /* Расстояние между ячейками */
   }
   tr:nth-child(2n) {
    background: #f0f0f0; /* Цвет фона */
   } 
   tr:nth-child(1) {
    background: #666; /* Цвет фона */
    color: #fff; /* Цвет текста */
   } 
  </style>
 </head>
 <body>
  <table border="1">
   <tr> 
    <td>&nbsp;</td><td>2134</td><td>2135</td>
    <td>2136</td><td>2137</td><td>2138</td>
   </tr>
   <tr> 
    <td>Нефть</td><td>16</td><td>34</td>
    <td>62</td><td>74</td><td>57</td>
   </tr>
   <tr>
    <td>Золото</td><td>4</td><td>69</td>
    <td>72</td><td>56</td><td>47</td>
   </tr>
   <tr>
    <td>Дерево</td><td>7</td><td>73</td>
    <td>79</td><td>34</td><td>86</td>
   </tr>
   <tr>
    <td>Камни</td><td>23</td><td>34</td>
    <td>88</td><td>53</td><td>103</td>
   </tr>
  </table> 
 </body>
</html>

В данном примере псевдокласс :nth-child используется для изменения стиля первой строки таблицы, а также для выделения цветом всех четных строк (рис. 1).

Применение псевдокласса :nth-child к строкам таблицы

Рис. 1. Применение псевдокласса :nth-child к строкам таблицы

Псевдокласс :nth-last-of-type

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
9.0+ 1.0+ 9.6+ 3.1+ 3.6+ 2.1+ 2.0+

Краткая информация

Значение по умолчанию Нет
Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/css3-selectors/#nth-last-of-type-pseudo

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Псевдокласс :nth-last-of-type используется для добавления стиля к элементам указанного типа на основе нумерации в дереве элементов. В отличие от псевдокласса :nth-of-type отсчет ведется не от первого элемента, а от последнего.

Синтаксис

элемент:nth-last-of-type(odd | even | <число> | <выражение>) {...}

Значения

odd
Все нечетные номера элементов.
even
Все четные номера элементов.
число
Порядковый номер дочернего элемента относительно своего родителя. Нумерация начинается с 1, это соответствует последнему элементу в списке.
выражение
Задается в виде an+b, где a и b целые числа, а n — счетчик, который автоматически принимает значение 0, 1, 2...

Если a равно нулю, то оно не пишется и запись сокращается до b. Если b равно нулю, то оно также не указывается и выражение записывается в форме an. a и b могут быть отрицательными числами, в этом случае знак плюс меняется на минус, например: 5n-1.

За счет использования отрицательных значений a и b некоторые результаты могут также получиться отрицательными или равными нулю. Однако на элементы оказывают влияние только положительные значения из-за того, что нумерация элементов начинается с 1.

В табл. 1 приведены некоторые возможные выражения и ключевые слова, а также указано, какие номера элементов будут задействованы.

Табл. 1. Результат для различных значений псевдокласса
Значение Номера элементов Описание
1 1 Последний элемент.
5 5 Пятый элемент с конца.
2n 2, 4, 6, 8, 10 Все четные элементы, аналог значения even.
2n+1 1, 3, 5, 7, 9 Все нечетные элементы, аналог значения odd.
3n+2 2, 5, 8, 11, 14
-n+3 3, 2, 1
5n-2 3, 8, 13, 18, 23
even 2, 4, 6, 8, 10 Все четные элементы.
odd 1, 3, 5, 7, 9 Все нечетные элементы.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>nth-last-of-type</title>
  <style>
   table { 
    width: 100%; /* Ширина таблицы */
    border-collapse: collapse; /* Убираем двойные границы */
    border-spacing: 0; /* Расстояние между ячейками */
   }
   td {
    border: 1px solid #333; /* Параметры рамки */
    padding: 3px; /* Поля в ячейках */
   }
   td:not(:first-of-type) {
    border-left: 3px double #333; /* Граница слева */ 
   }
   td:first-of-type {
    background: #eb9; /* Цвет фона */ 
   }
   td:nth-last-of-type(2n+1) {
    background: #f0f0f0; /* Цвет фона */
   }
  </style>
 </head>
 <body>
  <table>
   <tr> 
    <td>&nbsp;</td><td>2134</td><td>2135</td>
    <td>2136</td><td>2137</td><td>2138</td>
   </tr>
   <tr> 
    <td>Нефть</td><td>16</td><td>34</td>
    <td>62</td><td>74</td><td>57</td>
   </tr>
   <tr>
    <td>Золото</td><td>4</td><td>69</td>
    <td>72</td><td>56</td><td>47</td>
   </tr>
   <tr>
    <td>Дерево</td><td>7</td><td>73</td>
    <td>79</td><td>34</td><td>86</td>
   </tr>
   <tr>
    <td>Камни</td><td>23</td><td>34</td>
    <td>88</td><td>53</td><td>103</td>
   </tr>
  </table> 
 </body>
</html>

В данном примере псевдокласс :nth-last-of-type используется для выделения цветом всех нечётных колонок, начиная с последней (рис. 1).

Применение псевдокласса :nth-last-of-type к колонкам таблицы

Рис. 1. Применение псевдокласса :nth-last-of-type к колонкам таблицы

Псевдокласс :nth-of-type

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
9.0+ 1.0+ 9.6+ 3.1+ 3.6+ 2.1+ 2.0+

Краткая информация

Значение по умолчанию Нет
Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/css3-selectors/#nth-of-type-pseudo

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Псевдокласс :nth-of-type используется для добавления стиля к элементам указанного типа на основе нумерации в дереве элементов.

Синтаксис

элемент:nth-of-type(odd | even | <число> | <выражение>) {...}

Значения

odd
Все нечетные номера элементов.
even
Все четные номера элементов.
число
Порядковый номер указанного элемента. Нумерация начинается с 1, это будет первый элемент в списке.
выражение
Задается в виде an+b, где a и b целые числа, а n — счетчик, который автоматически принимает значение 0, 1, 2...

Если a равно нулю, то оно не пишется и запись сокращается до b. Если b равно нулю, то оно также не указывается и выражение записывается в форме an. a и b могут быть отрицательными числами, в этом случае знак плюс меняется на минус, например: 5n-1.

За счет использования отрицательных значений a и b некоторые результаты могут также получиться отрицательными или равными нулю. Однако на элементы оказывают влияние только положительные значения из-за того, что нумерация элементов начинается с 1.

В табл. 1 приведены некоторые возможные выражения и ключевые слова, а также указано, какие номера элементов будут задействованы.

Табл. 1. Результат для различных значений псевдокласса
Значение Номера элементов Описание
1 1 Первый элемент.
5 5 Пятый элемент.
2n 2, 4, 6, 8, 10 Все четные элементы, аналог значения even.
2n+1 1, 3, 5, 7, 9 Все нечетные элементы, аналог значения odd.
3n+2 2, 5, 8, 11, 14
-n+3 3, 2, 1
5n-2 3, 8, 13, 18, 23
even 2, 4, 6, 8, 10 Все четные элементы.
odd 1, 3, 5, 7, 9 Все нечетные элементы.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>nth-of-type</title>
  <style>
   img:nth-of-type(2n+1) { float: left; }
   img:nth-of-type(2n) { float: right; }
  </style>
 </head>
 <body>
  <p><img src="images/left.gif" alt="">
   <img src="images/right.gif" alt=""></p>
   <h1>Исторический турнир</h1>
 </body>
</html>

В данном примере нечётные картинки выравниваются по левому краю окна, а чётные картинки по правому (рис. 1).

Применение псевдокласса :nth-of-type к изображениям

Рис. 1. Применение псевдокласса :nth-of-type к изображениям

Псевдокласс :only-child

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
9.0+ 1.0+ 9.6+ 1.0+ 3.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/css3-selectors/#only-child-pseudo

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Псевдокласс :only-child применяется к дочернему элементу, только если он единственный у родителя. Аналогичен использованию :first-child:last-child или :nth-child(1):nth-last-child(1).

Синтаксис

элемент:only-child { ... }

Значения

Нет.

Браузеры

В Safari до версии 3.0 псевдокласс :only-child воспринимается как :first-child.

Псевдокласс :only-of-type

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
9.0+ 1.0+ 9.6+ 3.1+ 3.5+ 2.1+ 2.0+

Краткая информация

Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/css3-selectors/#only-of-type-pseudo

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Псевдокласс :only-of-type применяется к дочернему элементу указанного типа, только если он единственный у родителя. Аналогичен использованию :first-of-type:last-of-type или :nth-of-type(1):nth-last-of-type(1).

Синтаксис

элемент:only-of-type { ... }

Значения

Нет.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>only-of-type</title>
  <style>
   img:only-of-type {
    border: 2px solid red; /* Параметры рамки */
   }
  </style>
 </head> 
 <body> 
  <p><img src="images/figure.jpg" alt="">
     <img src="images/figure.jpg" alt=""></p>
  <p><img src="images/figure.jpg" alt=""></p>
 </body> 
</html>

В примере псевдокласс :only-of-type применяется к селектору img, в правилах стиля которого задаётся рамка красного цвета для картинок. Сама рамка добавляется к изображениям, которые у своих родителей (в данном случае это тег <p>) встречаются только один раз. В первой строке повторяется два изображения, поэтому псевдокласс не действует, во второй строке вставлено одно изображение, для него :only-of-type и работает.

Применение псевдокласса :only-of-type к картинкам

Рис. 1. Применение псевдокласса :only-of-type к картинкам

Псевдокласс :optional

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
  8.0+ 9.6+ 5.0+ 4.0+ 2.1+ 3.0+

Краткая информация

Применяется К <input>
Ссылка на спецификацию http://www.w3.org/TR/css3-ui/#pseudo-required-value

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Применяет стилевые правила к тегу <input>, у которого не задан атрибут required. Он позволяет выделять поля обязательные к заполнению перед отправкой формы. Таким образом :optional применяется к необязательным полям формы.

Синтаксис

input:optional { ... }

Значения

Нет.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>:optional</title>
  <style>
   input:optional {
    opacity: 0.5; /* Полупрозрачность */
   }
  </style>
 </head>
 <body>
  <form>
   <p>Пожалуйста, укажите ваше имя и возраст.</p>
   <p>Имя: <input name="name"></p>
   <p>Возраст: <input type="number" min="18" required name="old"></p>
   <p><input type="submit" value="Отправить"></p>
  </form>
 </body>
</html>

В данном примере необязательное текстовое поле делается полупрозрачным с помощью свойства opacity.

Псевдокласс :read-only

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
  8.0+ 10.5+ 5.0+   2.1+ 3.0+

Краткая информация

Применяется К <input>
Ссылка на спецификацию http://www.w3.org/TR/css3-ui/#pseudo-ro-rw

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Применяется к полям формы, у которых задан атрибут readonly. Такое поле не может быть модифицировано и получить фокус.

Синтаксис

input:read-only { ... }

Значения

Нет.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>:read-only</title>
  <style>
   input:read-only {
    opacity: 0.3; /* Полупрозрачность */
   }
  </style>
 </head>
 <body>
  <form>
    <p><input type="text" name="comment" size="40" 
       value="Введенный текст не может изменяться" readonly></p>
    <p><input type="submit" value="Отправить"></p>
  </form>
 </body>
</html>

Псевдокласс :read-write

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
  12.0+ 10.5+ 5.0+   2.1+ 3.0+

Краткая информация

Применяется К <input>
Ссылка на спецификацию http://www.w3.org/TR/css3-ui/#pseudo-ro-rw

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Применяется к полям формы, доступных для изменения. Псевдокласс :read-write является противоположным по своему действию :read-only, который применяется к полям с атрибутом readonly (только для чтения).

Синтаксис

input:read-write { ... }

Значения

Нет.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>:read-write</title>
  <style>
   input:read-write {
    border: 1px solid green;
   }
  </style>
 </head>
 <body>
  <form>
    <p><input type="text" size="40" 
       value="Введенный текст не может изменяться" readonly></p>
    <p><input type="text" size="40"
       value="Этот текст может изменяться"></p>
    <p><input type="submit" value="Отправить"></p>
  </form>
 </body>
</html>

Псевдокласс :required

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
  8.0+ 9.5+ 5.0+ 4.0+ 2.1+ 3.0+

Краткая информация

Применяется К <input>
Ссылка на спецификацию http://www.w3.org/TR/css3-ui/#pseudo-required-value

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Применяет стилевые правила к тегу <input>, у которого установлен атрибут required. Он позволяет выделять поля обязательные к заполнению перед отправкой формы.

Синтаксис

input:required { ... }

Значения

Нет.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>Комментарии</title>
  <style>
   #comment p {
    margin: 0 0 5px; /* Отступ снизу */
   }
   #comment label {
    width: 110px; /* Ширина текста */
    float: left; /* Выстраиваем по горизонтали */
    text-align: right; /* Текст по правому краю */
    padding-right: 10px; /* Поле справа */
   }
   #comment input[type="text"], #comment textarea {
    width: 320px; /* Ширина текстовых полей */
   }
   input:required {
    border: 1px solid red; /* Красная рамка для обязательных полей */
   }
  </style>
 </head>
 <body>
  <form id="comment">
   <p><label for="user">Имя</label>
      <input id="user" type="text" required></p>
   <p><label for="email">E-mail</label><input id="email" type="text"></p>
   <p><label for="text">Комментарий</label>
      <textarea cols="40" rows="10" id="text"></textarea></p>
   <p><label>&nbsp;</label><input type="submit" id="send" value="Отправить"></p>
  </form>
 </body>
</html>

Псевдокласс :root

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
 9.0+ 1.0+ 9.5+ 1.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/css3-selectors/#root-pseudo

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Псевдокласс :root определяет корневой элемент документа. В HTML этот селектор всегда соответствует элементу <html>.

Синтаксис

:root { ... }

Значения

Нет.

Псевдокласс :target

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
9.0+ 1.0+ 9.6+ 1.0+ 3.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/css3-selectors/#target-pseudo

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Для перехода к выбранному фрагменту документа, в адресе пишется символ # и указывается имя идентификатора. К примеру, в адресе http://www.w3.org/TR/css3-selectors/#target-pseudo происходит переход к элементу, атрибут id которого задан как target-pseudo. Такая запись адреса называется «целевой элемент». Псевдокласс :target применяется к целевому элементу, иными словами, к идентификатору, который указан в адресной строке браузера.

Синтаксис

элемент:target { ... }

Значения

Нет.

Пример

HTML5CSS3IECrOpSaFx

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>target</title>
  <style>
   h2:target {
    background: #fc0; /* Цвет фона */
    padding: 3px; 
   }
  </style>
 </head>
 <body>
  <h2 id="h1">История 1</h2>
  <p>История о том, как необходимо было сделать могилу, 
  ее начали копать, а потом закапывать, и что из этого получилось.</p>
  <h2 id="h2">История 2</h2>
  <p>История о том, как возле столовой появились загадочные розовые
  следы с шестью пальцами, и почему это случилось.</p>
 </body>
</html>

В данном примере целевой элемент выделяется цветом фона.

Браузеры

В Safari до версии 3.0 стилевые правила не применяются, если пользователь использует навигацию в браузере (кнопки «Назад» и «Вперед»).

Псевдокласс :valid

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
8.0+ 9.5+ 5.0+ 4.0+ 2.1+ 3.0+

Краткая информация

Применяется К <input>
Ссылка на спецификацию http://www.w3.org/TR/css3-ui/#pseudo-validity

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Применяется к полям формы, содержимое которых проходит проверку в браузере на соответствие указанному типу. Например, для type="number" вводится число, а не буквы, для type="email" корректный адрес электронной почты.

Синтаксис

input:valid { ... }

Значения

Нет.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>:valid</title>
  <style>
   input:invalid {
    background: #fdd; /* Красный цвет фона */
   }
   input:valid {
    background: #dfd; /* Зеленый цвет фона */
   }
  </style>
 </head>
 <body>
  <form>
   <p>Адрес сайта</p>
   <p><input type="url" required></p>
   <p>Адрес электронной почты</p>
   <p><input type="email" required></p>
   <p><input type="submit" value="Отправить"></p>
  </form>
 </body>
</html>

В данном примере корректно заполненные поля формы обозначаются зеленым фоном, а некорректные красным. Результат примера в Chrome показан на рис. 1.

Использование псевдокласса :valid

Псевдокласс :visited

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
4.0+ 1.0+ 3.5+ 1.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Применяется К ссылкам (тег <a>)
Ссылка на спецификацию http://www.w3.org/TR/CSS21/selector.html#link-pseudo-classes

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Псевдокласс :visited применяется к ссылкам, уже посещённые пользователем, и задаёт для них стилевое оформление.

Синтаксис

a:visited { ... }

Значения

Нет.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>visited</title>
  <style>
   a:link {
    color: #0000d0; /* Цвет ссылок */
   }
   a:visited {
    color: #900060; /* Цвет посещенных ссылок */
   }
  </style>
 </head>
 <body>
  <p><a href="1.html">Посещенная ссылка</a></p> 
  <p><a href="2.html">Непосещенная ссылка</a></p>
  <p><a href="3.html">Непосещенная ссылка</a></p>
 </body>
</html>

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

Результат использования псевдокласса visited

Рис. 1. Результат использования псевдокласса :visited

@charset

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
6.0+ 8.0+ 2.0+ 9.0+ 4.0+ 1.5+ 1.0+ 1.0+

Краткая информация

Значение по умолчанию UTF-8
Ссылка на спецификацию http://www.w3.org/TR/CSS21/syndata.html#charset

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Команда @charset применяется для задания кодировки внешнего CSS-файла. Это имеет значение в том случае, если в CSS-файле используются символы национального алфавита.

Для внешней таблицы стилей браузер последовательно просматривает следующие пункты для определения кодировки таблицы стилей:

  1. кодировка, которую отдает сервер;
  2. правило @charset;
  3. атрибут charset тега <link>;
  4. кодировка, установленная в документе через метатег (<meta charset="utf-8">).

Приведенный список имеет четко выраженную иерархию — чем выше находится пункт, тем выше его приоритет. Если ни один из пунктов не найден, будет установлена кодировка UTF-8.

Синтаксис

@charset "кодировка";

Значения

Для русского языка обычно указывается кодировка windows-1251 или utf-8. Значение кодировки обязательно должно быть взято в кавычки.

Пример

@charset "windows-1251";
body {
 font: 11pt Arial, Helvetica, sans-serif;
 margin: 0;
 color: #000;
}
p.new:after {
 content: " Новье!";
}

Браузеры

В браузере Internet Explorer до версии 7.0 включительно название кодировки допускается писать без кавычек, что противоречит спецификации CSS.

@font-face

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
6.0+ 9.0+ 2.0+ 9.0+ 12.0+ 4.0+ 3.5+ 2.1+ 2.0+

Краткая информация

Значение по умолчанию Нет
Ссылка на спецификацию http://www.w3.org/TR/css3-fonts/#font-face-rule

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Правило @font-face позволяет определить настройки шрифтов, а также загрузить специфичный шрифт на компьютер пользователя.

Синтаксис

@font-face { свойства шрифта }

Значения

Внутри конструкции @font-face может находиться набор свойств для изменения параметров шрифта (font-family, font-size, font-style и др.), а также ссылка на шрифтовой файл. Ссылка записывается в виде src: url(URI), где URI — относительный или абсолютный путь к файлу.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>@font-face</title>
  <style>
   @font-face {
    font-family: Pompadur; /* Имя шрифта */
    src: url(fonts/pompadur.ttf); /* Путь к файлу со шрифтом */
   }
   P {
    font-family: Pompadur;
   }
  </style>
 </head>
 <body>
  <p>Протяженность варьирует дорийский микрохроматический интервал, 
     но если бы песен было раз в пять меньше, было бы лучше для всех.</p>
 </body>
</html>

Результат данного примера в браузере Safari показан на рис. 1.

Собственный шрифт на странице

Рис. 1. Собственный шрифт на странице

Браузеры

Браузер Internet Explorer до версии 9.0 поддерживает только шрифты формата EOT (Embedded OpenType).

Opera в некоторых случаях может не показывать на веб-странице текст выбранным шрифтом, заменяя его стандартным. Причём для локальных документов всё работает корректно. Это происходит в тех случаях, когда имя пользователя в Windows написано кириллицей.

@import

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
6.0+ 8.0+ 2.0+ 4.0+ 2.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Значение по умолчанию all
Ссылка на спецификацию http://www.w3.org/TR/CSS21/cascade.html#at-import

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Правило @import позволяет импортировать содержимое CSS-файла в текущую стилевую таблицу. @import не разрешается вставлять после любых объявлений кроме @charset или другого @import.

Синтаксис

@import url("имя файла") [типы носителей];
@import "имя файла" [типы носителей];

В качестве типа носителя выступают различные устройства, например, принтер, КПК, монитор и др. В табл. 1 перечислены некоторые из них.

Табл. 1. Типы носителей и их описание
Тип Описание
all
Все типы. Это значение используется по умолчанию.
aural Речевые синтезаторы, а также программы для воспроизведения текста вслух. Сюда, например, можно отнести речевые браузеры.
braille Устройства, основанные на системе Брайля, которые предназначены для слепых людей.
handheld Наладонные компьютеры и аналогичные им аппараты.
print Печатающие устройства вроде принтера.
projection Проектор.
screen Экран монитора.
tv Телевизор.

Использование типов носителей совместно с импортом файла дает возможность указывать стиль только для определенных устройств.

Значения

В качестве значения используется путь к стилевому файлу, который указывается внутри необязательной конструкции url(). Путь к файлу при этом можно писать как в кавычках (двойных или одинарных), так и без них.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>Импорт стиля</title>
  <style>
    @import "/style/main.css" screen; /* Стиль для вывода результата на монитор */
    @import "/style/palm.css" handheld, print; /* Стиль для печати */
  </style>
 </head>
 <body>
  <p>...</p>
 </body>
</html>

Браузеры

Браузер Internet Explorer до версии 7.0 включительно не поддерживает типы носителей при импорте стилевого файла. Более того, при добавлении типа носителя стилевой файл вообще не загружается.

@media

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
9.0+ 1.0+ 9.2+ 1.3+ 1.0+ 1.0+ 1.0+

Краткая информация

Значение по умолчанию all
Ссылка на спецификацию http://www.w3.org/TR/CSS21/cascade.html#at-import

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Правило @media позволяет указать тип носителя, для которого будет применяться указанный стиль. В качестве типов выступают различные устройства, например, принтер, КПК, монитор и др. В табл. 1 перечислены некоторые из них.

Табл. 1. Типы носителей и их описание
Тип Описание
all Все типы. Это значение используется по умолчанию.
aural Речевые синтезаторы, а также программы для воспроизведения текста вслух. Сюда, например, можно отнести речевые браузеры.
braille Устройства, основанные на системе Брайля, которые предназначены для слепых людей.
handheld Наладонные компьютеры и аналогичные им аппараты.
print Печатающие устройства вроде принтера.
projection Проектор.
screen Экран монитора.
tv Телевизор.

Синтаксис

@media тип1 [, тип2] {
  Описание стиля 
}

Значения

После ключевого слова @media идет один или несколько типов носителя, перечисленных в табл. 1; если их больше одного, то они разделяются между собой запятой. После чего следуют обязательные фигурные скобки, внутри которых идет обычное описание стилевых правил.

Пример 1

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
 <head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <title>@media</title>
  <style type="text/css">
   @media screen { /* Стиль для отображения в браузере */
    body {
     font-family: Arial, Verdana, sans-serif; /* Рубленый шрифт */
     font-size: 0.9em; /* Размер шрифта */
     color: #000080; /* Цвет текста */
    }
    h1 {
     background: #faf0e6; /* Цвет фона под текстом */
     border: 2px dashed #800000; /* Рамка вокруг заголовка */
     color: #a0522d; /* Цвет текста */
     padding: 7px; /* Поля вокруг текста */
    }
    h2 {
     color: #556b2f; /* Цвет текста */
     margin: 0; /* Убираем отступы */
    }
    p {
     margin-top: 0.5em; /* Отступ сверху */
    }
   }
   @media print { /* Стиль для печати */
    body {
     font-family: Times, 'Times New Roman', serif; /* Шрифт с засечками */
    }
    h1, h2, p {
     color: #000; /* Черный цвет текста */
    }
   }
  </style>
 </head>
 <body>
   <h1>Метод ловли льва в пустыне</h1>
   <h2>Метод последовательного перебора</h2>
   <p>Пусть лев имеет габаритные размеры LxWxH, где L — длина льва от кончика носа 
   до кисточки хвоста, W — ширина льва, а H — его высота. После чего пустыню разбиваем на 
   ряд элементарных прямоугольников, размер которых совпадает с шириной и длиной льва. 
   Учитывая, что лев может находиться не строго на заданном участке, а одновременно на 
   двух из них, клетку для ловли следует делать повышенной площади, а именно 2Lx2W. 
   Благодаря этому мы избежим ошибки, когда в клетке окажется пойманным лишь половина 
   льва или, что хуже, только его хвост.</p>
   <p>Далее последовательно накрываем каждый из размеченных прямоугольников пустыни 
   клеткой и проверяем, пойман лев или нет. Как только лев окажется в клетке, процедура 
   поимки считается завершенной.</p>
 </body>
</html>

В данном примере вводится два стиля — один для изменения вида элементов при их обычном отображении в браузере, а второй — при выводе страницы на печать. При этом облик документа для разных носителей может сильно различаться между собой, например, как это показано на рис. 1 и рис. 2.

Рис. 1

Рис. 1. Страница для отображения в окне браузера

Рис. 2

Рис. 2. Страница, предназначенная для печати

Просмотреть документ, у которого CSS установлен как тип print можно, если распечатать определенную страницу. Или пойти на хитрость и временно заменить слово print на screen, чтобы отобразить итог в браузере. Именно так был получен рис. 2.

Команда @media применяется в основном для формирования одного стилевого файла, который разбит на блоки по типу устройств. Иногда же имеет смысл создать несколько разных CSS-файлов — один для печати, другой для отображения в браузере — и подключать их к документу по мере необходимости. В подобном случае следует воспользоваться тегом <link> с атрибутом media, значением которого выступают те же типы, перечисленные в табл. 1.

Пример 2

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>@media</title>
  <link media="print, handheld" rel="stylesheet" href="print.css">
  <link media="screen" rel="stylesheet" href="main.css">
 </head>
 <body>
  <p>...</p>
 </body>
</html>

В данном примере используются две таблицы связанных стилей, одна для отображения в браузере, а вторая — для печати документа и его просмотре на КПК. Хотя на страницу загружаются одновременно два разных стиля, применяются они только для определенных устройств.

@page

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
8.0+ 2.0+ 6.0+ 5.0+

Краткая информация

Значение по умолчанию Нет
Ссылка на спецификацию http://www.w3.org/TR/CSS2/page.html#page-box

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Правило @page позволяет задать значение полей при печати документа или для страниц, у которых тип носителя задан как print.

Синтаксис

@page [ { :left | :right | :first } ] { Значения отступов }

Значения

Для установки полей на странице используется универсальное свойство margin или его производные — margin-top, margin-right, margin-bottom и margin-left, задающие соответственно отступ сверху, справа, снизу и слева. Отрицательное значение допускается, но часть страницы может оказаться «отрезанной». Свойства border и padding не применимы.

Ключевое слово :left позволяет задать поля для всех левых страниц, :right — для всех правых, а :first — для первой страницы.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>@page</title>
  <style>
   @media print { /* Стиль для печати */
    body {
     font-family: Times, 'Times New Roman', serif; /* Шрифт с засечками */
    }
    h1, h2, p {
     color: #000; /* Черный цвет текста */
    }
   }
   @page :first {
    margin: 1cm; /* Отступы для первой страницы */ 
   }
   @page :left {
    margin: 1cm 3cm 1cm 1.5cm; /* Отступы для всех левых страниц */ 
   }
   @page :right {
    margin: 1cm 3cm 1cm 1.5cm; /* Отступы для всех правых страниц */ 
   }
  </style>
 </head>
 <body>
  <h1>Метод ловли льва в пустыне</h1>
  <h2>Метод последовательного перебора</h2>
  <p>Пусть лев имеет габаритные размеры LxWxH, где L — длина льва от кончика носа 
  до кисточки хвоста, W — ширина льва, а H — его высота. После чего пустыню разбиваем на 
  ряд элементарных прямоугольников, размер которых совпадает с шириной и длиной льва. 
  Учитывая, что лев может находиться не строго на заданном участке, а одновременно на 
  двух из них, клетку для ловли следует делать повышенной площади, а именно 2Lx2W. 
  Благодаря этому мы избежим ошибки, когда в клетке окажется пойманным лишь половина 
  льва или, что хуже, только его хвост.</p>
  <p>Далее последовательно накрываем каждый из размеченных прямоугольников пустыни 
  клеткой и проверяем, пойман лев или нет. Как только лев окажется в клетке, процедура 
  поимки считается завершенной.</p>
 </body>
</html>

Функция attr()

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
8.0+ 2.0+ 9.0+ 3.1+ 1.0+ 1.0+ 1.0+

Краткая информация

Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/css3-values/#attr

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Функция attr() применяется для добавления значения атрибута HTML-элемента в стилевое свойство. Например, можно получить значение атрибута class, а затем использовать его в качестве значения свойства background для изменения цвета.

Синтаксис

CSS2.1
attr(имя_атрибута)
CSS3
attr(имя_атрибута, <тип>, <значение>)

Значения

имя_атрибута

Имя атрибута элемента передаваемое в CSS.
<тип>
Тип значения свойства CSS. Допустимы следующие ключевые слова: string (строки), color (цвет), url (веб-адрес), integer (целое число), number (вещественное число), angle (угол), time (время), deg (градус), а также единицы CSS вроде em, px и др.
<значение>
Значение, которое будет использоваться в том случае, если атрибута нет или браузер не может его получить.
Между версиями CSS есть небольшая разница по прочтению некоторых особенностей attr(). В CSS2.1 функция attr() может использоваться только совместно со свойством content и всегда возвращает строку в качестве значения. В CSS3 attr() допустимо применять с любым свойством и возвращаемое значение может быть в любом корректном для CSS3 формате.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>attr()</title>
  <style>
   .site::after {
    content: ' (' attr(href) ') '; /* Выводим адрес ссылки в скобках */
    font-size: 0.8em; /* Уменьшаем текст*/
    background: yellow; /* Жёлтый фон */
   }
  </style>
 </head>
 <body>
   <p><a href="http://htmlbook.ru" class="site">Полезный сайт</a></p>
 </body>
</html>

В данном примере после ссылок с классом site в скобках выводится значение атрибута href, к которому применяется стилевое оформление.

background

Работа в браузерах

CSS Internet Explorer Chrome Opera Safari Firefox Android iOS
2.1 6.0+ 8.0+ 1.0+ 3.5+ 1.0+ 1.0+ 2.1+ 1.0+
3 9.0+ 1.0+ 10.5+ 1.3+ 3.6+ 2.1+ 1.0+

Краткая информация

Значение по умолчанию transparent || none || repeat || scroll || 0% 0%
Наследуется Нет
Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/CSS21/colors.html#propdef-background

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Универсальное свойство background позволяет установить одновременно до пяти характеристик фона. Значения могут идти в любом порядке, браузер сам определит, какое из них соответствует нужному свойству. Для подробного ознакомления смотрите информацию о каждом свойстве отдельно. В CSS3 допустимо указывать параметры сразу нескольких фонов, перечисляя их через запятую.

Синтаксис

CSS2.1
background: [background-attachment || background-color|| background-image
  || background-position|| background-repeat] | inherit
CSS3
background: [<фон>, ]* <последний_фон>

Здесь:

<фон> = [background-attachment || background-image || background-position || background-repeat] | inherit

<последний_фон> = [background-attachment || background-color || background-image || background-position || background-repeat] | inherit

Если наряду с фоновыми изображениями требуется задать цвет фона элемента, он указывается в последнюю очередь после перечисления.

Значения

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

Пример 1

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
 <head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <title>background</title>
  <style type="text/css">
   div {
    height: 200px; /* Высота блока */
    width: 200px; /* Ширина блока */
    overflow: auto; /* Добавляем полосы прокрутки */
    padding-left: 15px; /* Отступ от текста слева */
    background: url(images/hand.png) repeat-y #fc0; /* Цвет фона, 
                                                    путь к фоновому изображению и 
                                                    повторение фона по вертикали */
   }
  </style>
 </head>
 <body>

  <div>
   Duis te feugifacilisi. Duis autem dolor in hendrerit in vulputate velit esse molestie 
   consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et 
   iusto odio dignissim qui blandit praesent luptatum zzril delenit au gue duis dolore
   te feugat nulla facilisi. Ut wisi enim ad minim veniam, quis nostrud exerci taion 
   ullamcorper suscipit lobortis nisl ut aliquip ex en commodo consequat. Duis te 
   feugifacilisi per suscipit lobortis nisl ut aliquip ex en commodo consequat.
  </div>

 </body>
</html>

Результат данного примера показан ниже (рис. 1).

Вид фона и фонового рисунка в блоке фиксированного размера

Рис. 1. Вид фона и фонового рисунка в блоке фиксированного размера

Пример 2

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>background</title>
  <style>
   body {
    background: url(images/hand.png) repeat-y, 
                #fc0 url(images/bg-right.png) repeat-y 100% 0;
   }
  </style>
 </head>
 <body>
 </body>
</html>

Объектная модель

[window.]document.getElementById("elementID").style.background

Браузеры

Internet Explorer до версии 7.0 включительно не поддерживает значение inherit.

background-attachment

Работа в браузерах

CSS Internet Explorer Chrome Opera Safari Firefox Android iOS
2.1 6.0 7.0 8.0+ 1.0+ 3.5+ 1.0+ 1.0+ 2.1+ 1.0+
3 9.0+ 1.0+ 10.5+ 1.3+ 3.6+ 2.1+ 1.0+

Краткая информация

Значение по умолчанию scroll
Наследуется Нет
Применяется Ко всем элементам
Процентная запись Неприменима
Ссылка на спецификацию

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Свойство background-attachment устанавливает, будет ли прокручиваться фоновое изображение вместе с содержимым элемента. Изображение может быть зафиксировано и оставаться неподвижным, либо перемещаться совместно с документом. В CSS3 можно указать несколько значений для ряда фоновых изображений, перечисляя значения через запятую.

Синтаксис

CSS2.1
background-attachment: fixed | scroll | inherit
CSS3
background-attachment: fixed | scroll | local[, fixed | scroll | local]*

Значения

fixed
Делает фоновое изображение элемента неподвижным.
scroll
Позволяет перемещаться фону вместе с содержимым.
inherit
Наследует значение родителя.
local
Фон фиксируется с учётом поведения элемента. Если элемент имеет прокрутку, то фон будет прокручиваться вместе с содержимым, но фон выходящий за рамки элемента остаётся на месте.

Пример 1

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>background-attachment</title>
  <style>
   body {
    background-image: url(images/help.png); /* Путь к фоновому изображению */
    background-attachment: fixed; /* Фиксируем фон веб-страницы */
   }
  </style>
 </head>
 <body>
  <div style="height:2000px">
    Пример текста
  </div>
 </body>
</html>

Пример 2

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>background-attachment</title>
  <style>
   body {
    background-image: url(images/pattern-left.png), url(images/pattern-right.png);
    background-repeat: repeat-y, repeat-y;
    background-position: left, right;
    background-attachment: fixed, fixed;
   }
  </style>
 </head>
 <body>
  <div style="height:2000px">
  </div>
 </body>
</html>

Объектная модель

[window.]document.getElementById("elementID").style.backgroundAttachment

Браузеры

В браузере Internet Explorer 6 значение fixed работает только для тегов <body> или <html>.

Internet Explorer до версии 7.0 включительно не поддерживает значение inherit.

Chrome поддерживает значение local с версии 4.0.

Safari поддерживает значение local с версии 5.0.

Firefox не понимает значение local.

background-clip

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
9.0+ 1.0+ 10.5+ 12.0+ 3.0+ 1.0+ 4.0+ 2.1+ 1.0+

Краткая информация

Значение по умолчанию border-box
Наследуется Нет
Применяется Ко всем элементам
Процентная запись Неприменима
Ссылка на спецификацию http://www.w3.org/TR/css3-background/#the-background-clip

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Определяет, как цвет фона или фоновая картинка должна выводиться под границами. Эффект заметен при прозрачных или пунктирных границах.

Синтаксис

background-clip: [padding-box | border-box | content-box] [, [padding-box | border-box | content-box]]

Значения

padding-box
Фон отображается внутри границ.
border-box
Фон выводится под границами.
content-box
Фон отображается только внутри контента.

Значений может быть несколько (для каждого из множественных фоновых рисунков), при этом значения разделяются между собой запятой.

Результат использования значений свойства background-clip для элемента с пунктирной рамкой толщиной 10 пикселов показан на рис. 1.

Рис. 1а Рис. 1а Рис. 1а
padding-box border-box content-box

Рис. 1. Результат применения разных значений

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>background-clip</title>
  <style>
   .example {
    background: #5f392f url(images/gear.png); /* Фоновый рисунок */
    border: 10px dotted red; /* Параметры рамки */   
    background-clip: border-box; /* Фон под рамкой */    
    padding: 10px; /* Поля */
    color: #fff; /* Цвет текста */    
    min-height: 48px; /* Минимальная высота */
   }
  </style>
 </head>
 <body>
  <div class="example">Содержимое страницы</div>
 </body>
</html>
  

Браузеры

В IE7 фон по умолчанию выводится как при значении padding-box.

Safari понимает только нестандартное свойство -webkit-background-clip, также с ним работает и Chrome.

Opera до версии 12.0 не поддерживает значение content-box.

Firefox до версии 4.0 поддерживает нестандартное свойство -moz-background-clip.

background-color

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
6.0+ 8.0+ 1.0+ 3.5+ 1.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Значение по умолчанию transparent
Наследуется Нет
Применяется Ко всем элементам
Процентная запись Неприменима
Ссылка на спецификацию http://www.w3.org/TR/CSS21/colors.html#propdef-background-color

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Определяет цвет фона элемента. Хотя это свойство не наследует свойства своего родителя, из-за того, что начальное значение устанавливается прозрачным, цвет фона дочерних элементов совпадает с цветом фона родительского элемента.

Синтаксис

background-color: цвет | transparent | inherit

Значения

См. цвет

transparent
Устанавливает прозрачный фон.
inherit
Наследует значение родителя.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8" />
  <title>background-color</title>
  <style>
   body{
    background-color: #3366CC; /* Цвет фона веб-страницы */
   } 
   h1 {
    background-color: RGB(249, 201, 16); /* Цвет фона под заголовком */
   }
   p {
    background-color: maroon; /* Цвет фона под текстом параграфа */
    color: white; /* Цвет текста */
   }
  </style>
 </head>
 <body>
  <h1>Lorem ipsum dolor sit amet</h1>
  <p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diem 
  nonummy nibh euismod tincidunt ut lacreet dolore magna aliguam erat volutpat.</p>
 </body>
</html>

В данном примере для элементов веб-страницы применяется три различных способа задания фонового цвета. Результат примера показан на рис. 1.

Применение background-color

Рис. 1. Применение background-color

Объектная модель

[window.]document.getElementById("elementID").style.backgroundColor

Браузеры

Internet Explorer до версии 7.0 включительно не поддерживает значение inherit.

background-image

Работа в браузерах

CSS Internet Explorer Chrome Opera Safari Firefox Android iOS
2.1 6.0+ 9.0+ 1.0+ 3.5+ 1.0+ 1.0+ 2.1+ 1.0+
3 9.0+ 1.0+ 10.5+ 1.3+ 3.6+ 2.1+ 1.0+

Краткая информация

Значение по умолчанию none
Наследуется Нет
Применяется Ко всем элементам
Процентная запись Неприменима
Ссылка на спецификацию

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Устанавливает фоновое изображение для элемента. Если одновременно для элемента задан цвет фона, он будет показан, пока фоновая картинка не загрузится полностью. То же произойдет, если изображения не доступны или их показ в браузере отключен. В случае наличия в рисунке прозрачных областей, через них будет проглядывать фоновый цвет. В CSS3 допустимо указывать несколько фоновых изображений, перечисляя их параметры через запятую.

Синтаксис

CSS2.1
background-image: url(путь к файлу) | none | inherit
CSS3
background-image: url(путь к файлу) | none[, url(путь к файлу) | none]*

Значения

url
В качестве значения используется путь к графическому файлу, который указывается внутри конструкции url(). Путь к файлу при этом можно писать как в кавычках (двойных или одинарных), так и без них.
none
Отменяет фоновое изображение для элемента.
inherit
Наследует значение родителя.

Пример 1

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>background-image</title>
  <style>
   body {
    background-image: url(images/bg.jpg); /* Путь к фоновому изображению */
    background-color: #c7b39b; /* Цвет фона */
   }
  </style>
   </head>
 <body>
  <p>...</p>
 </body>
</html>

Объектная модель

[window.]document.getElementById("elementID").style.backgroundImage

Браузеры

Internet Explorer до версии 7.0 включительно применяет фон к внутренней части границы элемента, у которого установлено свойство hasLayout. Если у элемента нет hasLayout, свойство background-image будет учитывать границы элемента, как это и задано в спецификации. Разница в отображении будет заметна, если границы пунктирные (dashed или dotted), а не сплошные.

Если для элемента значение overflow установлено как scroll или auto, в Internet Explorer 8 будет вертикальная задержка в один пиксел при прокрутке фона.

Internet Explorer до версии 7.0 включительно не поддерживает значение inherit.

Если фон задаётся для строки таблицы (тег <tr>), то Chrome, Safari, iOS отображают его не так, как предписывает спецификация, а именно для каждой ячейки отдельно. В то время как браузер должен показывать цельный фон для всего ряда. В примере 2 приведён код демонстрирующий ошибку.

Пример 2

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>Фон для TR</title>
  <style>
   table {width: 100%; border-spacing: 0; }
   tr { background: #f6d654 url(images/orangebg.png) repeat-y; }
  </style>
 </head>
 <body>
  <table>
   <tr>
    <td>1</td><td>2</td><td>3</td>
   </tr>
  </table>
 </body>
</html>

Результат данного примера в браузере Chrome показан на рис. 1. Браузер Internet Explorer, Opera и Firefox корректно отображают фон для строки (рис. 2).

Рис. 1. Повторение фона для каждой ячейки

Рис. 2. Фон для всей строки

background-origin

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
9.0+ 1.0+ 10.5+ 3.0+ 5.0+ 1.0+ 4.0+ 2.1+ 1.0+

Краткая информация

Значение по умолчанию padding-box
Наследуется Нет
Применяется Ко всем элементам
Процентная запись Неприменима
Ссылка на спецификацию http://www.w3.org/TR/css3-background/#background-origin

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Свойство background-origin определяет область позиционирования фонового рисунка. Это свойство не применяется, когда значение background-attachment задано как fixed.

Синтаксис

background-origin: [padding-box | border-box | content-box] [, [padding-box | border-box | content-box]]*

Значения

padding-box
Фон позиционируется относительно края элемента с учетом толщины границы.
border-box
Фон позиционируется относительно границы, при этом линия границы может перекрывать изображение.
content-box
Фон позиционируется относительно содержимого элемента.

Значений может быть несколько (для каждого из множественных фоновых рисунков), при этом значения разделяются между собой запятой.

Результат использования значений свойства background-origin для элемента с рамкой толщиной 20 пикселов показан на рис. 1.

Рис. 1а Рис. 1а Рис. 1а
padding-box border-box content-box

Рис. 1. Результат применения разных значений

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>background-origin</title>
  <style>
   .example {
    border: 20px solid #fc0;
    padding: 20px;
    height: 200px;
    background: url(images/figure.jpg) no-repeat;
    background-origin: content-box;
   }
  </style>
 </head>
 <body>
  <div class="example">...</div>
 </body>
</html>

Браузеры

Если фон задан один, а значений background-original несколько, то браузеры покажут разное поведение. Firefox и Opera используют первое значение, Chrome и Safari создадут несколько фоновых рисунков.

Chrome до версии 3.0 и Safari до версии 5.0 поддерживают нестандартное свойство -webkit-background-origin.

Firefox до версии 4.0 поддерживает нестандартное свойство -moz-background-origin.

background-position

Работа в браузерах

CSS Internet Explorer Chrome Opera Safari Firefox Android iOS
2.1 6.0+ 8.0+ 1.0+ 3.5+ 1.0+ 1.0+ 2.1+ 1.0+
3 9.0+ 1.0+ 10.5+ 1.3+ 3.6+ 2.1+ 1.0+

Краткая информация

Значение по умолчанию 0% 0%
Наследуется Нет
Применяется К блочным элементам
Ссылка на спецификацию

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Задает начальное положение фонового изображения, установленного с помощью свойства background-image. В CSS3 допустимо указывать несколько значений для каждого фона, перечисляя значения через запятую.

Синтаксис

CSS2.1
background-position: [left | center | right | <проценты> | <значение>] || 
                     [top | center | bottom | <проценты> | <значение>] | inherit
CSS3
background-position: <позиция>[, <позиция>]*

Здесь:

<позиция> = [left | center | right | <проценты> | <значение>] || [top | center | bottom | <проценты> | <значение>] | inherit.

Значения

У свойства background-position два значения, положение по горизонтали (может быть — left, center, right) и вертикали (может быть — top, center, bottom). Кроме использования ключевых слов положение также можно задавать в процентах, пикселах или других единицах. Если применяются ключевые слова, то порядок их следования не имеет значения, при процентной записи вначале задается положение рисунка по горизонтали, а затем, через пробел, положение по вертикали. Отношение между используемыми ключевыми словами и процентной записью следующее.

  • top left = left top = 0% 0% (в левом верхнем углу)
  • top = top center = center top = 50% 0% (по центру вверху)
  • right top = top right = 100% 0% (в правом верхнем углу)
  • left = left center = center left = 0% 50% (по левому краю и по центру)
  • center = center center = 50% 50% (по центру)
  • right = right center = center right = 100% 50% (по правому краю и по центру)
  • bottom left = left bottom = 0% 100% (в левом нижнем углу)
  • bottom = bottom center = center bottom = 50% 100% (по центру внизу)
  • bottom right = right bottom = 100% 100% (в правом нижнем углу)

В скобках указано, где располагается фоновый рисунок относительно контейнера.

При inherit значение наследуется у родителя элемента.

Пример 1

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
 <head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <title>background-position</title>
  <style type="text/css">
   html {
    height: 100%; /* Высота страницы */     
   }
   body {
    background-image: url(images/mybg.png); /* Путь к фоновому рисунку */
    background-position: right bottom; /* Положение фона */
    background-repeat: no-repeat; /* Отменяем повторение фона */
   }
  </style>
 </head>
 <body>
  <p>...</p>
 </body>
</html>

Пример 2

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>background-position</title>
  <style>
   body {
    background-image: url(images/pattern-left.png), url(images/pattern-right.png);
    background-repeat: repeat-y, repeat-y;
    background-position: left, right;
   }
  </style>
 </head>
 <body>
  <div style="height:2000px">
  </div>
 </body>
</html>

Объектная модель

[window.]document.getElementById("elementID").style.backgroundPosition

Браузеры

Internet Explorer до версии 7.0 включительно не поддерживает значение inherit.

background-repeat

Работа в браузерах

CSS Internet Explorer Chrome Opera Safari Firefox Android iOS
2.1 6.0+ 8.0+ 1.0+ 3.5+ 1.0+ 1.0+ 2.1+ 1.0+
3 9.0+ 1.0+ 10.5+ 11.0+ 1.3+ 3.6+ 2.1+ 1.0+

Краткая информация

Значение по умолчанию repeat
Наследуется Нет
Применяется Ко всем элементам
Ссылка на спецификацию

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Определяет, как будет повторяться фоновое изображение, установленное с помощью свойства background-image. Можно установить повторение рисунка только по горизонтали, по вертикали или в обе стороны. В CSS3 допустимо указывать несколько значений для каждого фона, перечисляя значения через запятую.

Синтаксис

CSS2.1
background-repeat: no-repeat | repeat | repeat-x | repeat-y | inherit
CSS3
background-repeat: <повторение> [ , <повторение> ]* 

Здесь:

<повторение> = repeat-x | repeat-y | [repeat | space | round | no-repeat]{1,2}

Допустимо указывать два значения, первое ключевое слово задаёт повторение по горизонтали, второе по вертикали.

Значения

no-repeat
Устанавливает одно фоновое изображение в элементе без его повторений, положение которого определяется свойством background-position (по умолчанию в левом верхнем углу). Аналогично no-repeat no-repeat.
repeat
Фоновое изображение повторяется по горизонтали и вертикали. Аналогично repeat repeat.
repeat-x
Фоновый рисунок повторяется только по горизонтали. Аналогично repeat no-repeat.
repeat-y
Фоновый рисунок повторяется только по вертикали. Аналогично no-repeat repeat.
inherit
Наследует значение родителя.
space
Изображение повторяется столько раз, чтобы полностью заполнить область; если это не удаётся, между картинками добавляется пустое пространство.
round
Изображение повторяется так, чтобы в области поместилось целое число рисунков; если это не удаётся сделать, то фоновые рисунки масштабируются.

Пример 1

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
 <head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <title>background-repeat</title>
  <style type="text/css">
   body { 
    background-image: url(images/bg_grey.png); /* Путь к фоновому рисунку */
    background-position: left bottom; /* Положение фона */
    background-repeat: repeat-x; /* Повторяем фон по горизонтали */
   }
  </style>
 </head>
 <body>
  <p>Даже опытному верстальщику приходится иногда смотреть свой код
  на наличие опечаток и ошибок. Так что не брезгуй проверять код валидатором,
  это поможет избежать множества ляпов в будущем.</p>
 </body>
</html>

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

Повторение фона по горизонтали

Рис. 1. Повторение фона по горизонтали

Сама фоновая картинка приведена на рис. 2.

Фон для блока

Рис. 2. Фон для блока

Пример 2

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>background-repeat</title>
  <style>
   body {
    background-image: url(images/pattern-left.png), url(images/pattern-right.png);
    background-position: left, right;
    background-repeat: repeat-y, repeat-y;
   }
  </style>
 </head>
 <body>
  <div style="height:2000px">
  </div>
 </body>
</html>

Объектная модель

[window.]document.getElementById("elementID").style.backgroundRepeat

Браузеры

Internet Explorer до версии 7.0 включительно не поддерживает значение inherit.

Значения round и space поддерживаются только в IE9 и Opera 11.0.

background-size

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
9.0+ 1.0+ 9.5+ 3.0+ 3.6+ 2.1+ 1.0+

Краткая информация

Значение по умолчанию auto
Наследуется Нет
Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/css3-background/#the-background-size

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Масштабирует фоновое изображение согласно заданным размерам.

Синтаксис

background-size: [ <значение> | <проценты> | auto ]{1,2} | cover | contain

Значения

значение
Задает размер в любых доступных для CSS единицах — пикселы (px), сантиметры (cm), em и др.
проценты
Задает размер фоновой картинки в процентах от ширины или высоты элемента.
auto
Если задано одновременно для ширины и высоты (auto auto), размеры фона остаются исходными; если только для одной стороны картинки (100px auto), то размер вычисляется автоматически исходя из пропорций картинки.
cover
Масштабирует изображение с сохранением пропорций таким образом, чтобы картинка целиком поместилась внутрь блока.
contain
Масштабирует изображение с сохранением пропорций так, чтобы его ширина или высота равнялась ширине или высоте блока.

Если установлено одно значение, оно задает ширину фона, второе значение принимается за auto. Пропорции картинки при этом сохраняются. Использование двух значений через пробел задает ширину и высоту фоновой картинки.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>background-size</title>
  <style>
   div {
    height: 200px; /* Высота блока */
    border: 2px solid #000; /* Параметры рамки */
    background: url(images/mybg.png) 100% 100% no-repeat; /* Добавляем фон */
    background-size: cover; /* Масштабируем фон */
   }
  </style>
 </head>
 <body>
  <div>...</div>
 </body>
</html>

Браузеры

Safari до версии 4.1 и Chrome до версии 3.0 используют нестандартное свойство -webkit-background-size.

Opera до версии 10.53 использует нестандартное свойство -o-background-size.

Firefox до версии 4.0 использует нестандартное свойство -moz-background-size.

border

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
6.0+ 8.0+ 1.0+ 3.5+ 1.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Значение по умолчанию Зависит от использования
Наследуется Нет
Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/CSS21/box.html#propdef-border

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Универсальное свойство border позволяет одновременно установить толщину, стиль и цвет границы вокруг элемента. Значения могут идти в любом порядке, разделяясь пробелом, браузер сам определит, какое из них соответствует нужному свойству. Для установки границы только на определенных сторонах элемента, воспользуйтесь свойствами border-top, border-bottom, border-left, border-right.

Синтаксис

border: [border-width || border-style || border-color] | inherit

Значения

Значение border-width определяет толщину границы. Для управления ее видом предоставляется несколько значений border-style. Их названия и результат действия представлен на рис. 1.

Стили рамок

Рис.1. Стили рамок

border-color устанавливает цвет границы, значение может быть в любом допустимом для CSS формате.

inherit наследует значение родителя.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>border</title>
  <style>
   .brd {
    border: 4px double black; /* Параметры границы */
    background: #fc3; /* Цвет фона */
    padding: 10px; /* Поля вокруг текста */
   }
  </style>
 </head> 
 <body>
  <div class="brd">
    Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diem nonummy 
    nibh euismod tincidunt ut lacreet dolore magna aliguam erat volutpat. Ut wisis 
    enim ad minim veniam, quis nostrud exerci tution ullamcorper suscipit lobortis 
    nisl ut aliquip ex ea commodo consequat.
   </div>
 </body>
</html>

В данном примере вокруг слоя добавляется двойная граница. Результат показан на рис. 2.

Применение свойства border

Рис. 2. Применение свойства border

Объектная модель

[window.]document.getElementById("elementID").style.border

Браузеры

Браузер Internet Explorer до шестой версии включительно при толщине границы 1px отображает dotted как dashed. При толщине 2px и выше значение dotted работает корректно. Эта ошибка исправлена в IE7, но только для всех границ толщиной 1px. Если одна из границ блока имеет толщину 2px и выше, то в IE7 значение dotted превращается в dashed.

Internet Explorer до версии 7.0 включительно не поддерживает значение inherit.

Стиль границы в разных браузерах может несколько различаться при использовании значений groove, ridge, inset или outset.

border-bottom

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
6.0+ 8.0+ 1.0+ 3.5+ 1.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Значение по умолчанию Зависит от использования
Наследуется Нет
Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/CSS21/box.html#border-shorthand-properties

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

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

Синтаксис

border-bottom: [border-width|| border-style || border-color] | inherit

Значения

Значение border-width определяет толщину границы. Для управления ее видом предоставляется несколько значений свойства border-style. Их названия и результат действия представлен на рис. 1.

Стили рамок

Рис.1. Стили рамок

border-color устанавливает цвет границы, значение может быть в любом допустимом для CSS формате.

inherit наследует значение родителя.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>border-bottom</title>
  <style>
   .panel {
    background: #ccc; /* Цвет фона */
   } 
   .panel P.content {
    padding: 5px; /* Добавляем поля */
    margin: 0; /* Убираем отступы у параграфа */
    border-top: 2px dotted white; /* Параметры линии вверху */
   }
   .panel P.title {
    font-family: sans-serif; /* Рубленый шрифт */
    font-weight: bold; /* Жирное начертание */
    font-size: 90%; /* Размер шрифта */
    padding: 5px; /* Добавляем поля */
    margin: 0; /* Убираем отступы у параграфа */
    background: maroon; /* Цвет фона */
    color: white; /* Цвет текста */
    border-bottom: 2px solid white; /* Параметры линии внизу */
   }
  </style>
 </head>
 <body> 
  <div class="panel">
  <p class="title">Lorem ipsum dolor sit amet</p>
  <p class="content">Lorem ipsum dolor sit amet, consectetuer adipiscing elit, 
     sed diem nonummy nibh euismod tincidunt ut lacreet dolore magna 
     aliguam erat volutpat.</p>
  </div>
 </body>
</html>

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

Применение свойства border-bottom

Рис. 2. Применение свойства border-bottom

Объектная модель

[window.]document.getElementById("elementID").style.borderBottom

Браузеры

Браузер Internet Explorer до шестой версии включительно при толщине границы 1px отображает dotted как dashed. При толщине 2px и выше значение dotted работает корректно. Эта ошибка исправлена в IE7, но только для всех границ толщиной 1px. Если одна из границ блока имеет толщину 2px и выше, то в IE7 значение dotted превращается в dashed.

Internet Explorer до версии 7.0 включительно не поддерживает значение inherit.

Стиль границы в разных браузерах может несколько различаться при использовании значений groove, ridge, inset или outset.

border-bottom-color

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
6.0+ 8.0+ 1.0+ 3.5+ 1.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Значение по умолчанию Значение цвета, заданное через color
Наследуется Нет
Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/CSS21/box.html#border-color-properties

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Устанавливает цвет границы внизу элемента.

Синтаксис

border-bottom-color: цвет | transparent | inherit

Значения

См. цвет

transparent
Устанавливает прозрачный цвет.
inherit
Наследует значение родителя.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>border-bottom-color</title>
  <style>
   #panel {
    background: #ccc; /* Цвет фона */
   } 
   #panel p {
    padding: 5px; /* Добавляем поля */
    margin: 0; /* Убираем отступы у параграфа */
   }
   #title {
    background: navy; /* Цвет фона */
    color: white; /* Цвет текста */
    border-bottom-width: 2px; /* Толщина линии внизу */
    border-bottom-style: solid; /* Стиль линии внизу */
    border-bottom-color: white; /* Цвет линии внизу */
   }
  </style>
 </head>
 <body>

  <div id="panel">
  <p id="title">Lorem ipsum dolor sit amet</p>
  <p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit, 
     sed diem nonummy nibh euismod tincidunt ut lacreet dolore 
     magna aliguam erat volutpat.</p>
  </div>
 </body>
</html>

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

Применение свойства border-bottom-color

Рис. 1. Применение свойства border-bottom-color

Объектная модель

[window.]document.getElementById("elementID").style.borderBottomColor

Браузеры

Internet Explorer 6 не поддерживает значение transparent. Браузер Internet Explorer до версии 7.0 включительно не поддерживает inherit.

Цвет границы в разных браузерах может несколько различаться при использовании значений стиля groove, ridge, inset или outset.

border-bottom-left-radius

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
9.0+ 1.0+ 10.5+ 3.0+ 1.0+ 2.1+ 1.0+

Краткая информация

Значение по умолчанию 0
Наследуется Нет
Процентная запись Да, относительно ширины блока
Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/css3-background/#border-bottom-left-radius

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Устанавливает радиус скругления левого нижнего уголка рамки. Если рамка не задана, то скругление также происходит и с фоном.

Синтаксис

border-bottom-left-radius: [значение | проценты] [значение | проценты]

Значения

В качестве радиуса указывается любое допустимое в CSS значение (px, cm, in, em и др.), а также проценты, в этом случае радиус скругления считается от ширины блока.

Необязательное второе значение предназначено для создания эллиптического уголка, первое значение при этом устанавливает радиус по горизонтали, а второе — радиус по вертикали (рис. 1).

Рис. 1

Рис. 1. Радиус скругления для создания разных типов уголков

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>border-bottom-left-radius</title>
  <style>
   .radius {
    background: #fc0;
    padding: 15px;
    margin-bottom: 10px;
   }
  </style>
 </head> 
 <body> 
  <div style="border-bottom-left-radius: 20px" class="radius">
   border-bottom-left-radius: 20px
  </div>
  <div style="border-bottom-left-radius: 70px 40px" class="radius">
   border-bottom-left-radius: 70px 40px
  </div>
 </body> 
</html>

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

Радиус скругления в браузере Safari

Рис. 2. Радиус скругления в браузере Safari

Браузеры

Chrome до версии 4.0, Safari до версии 5.0, iOS используют нестандартное свойство -webkit-border-bottom-left-radius.

Firefox до версии 4.0 использует нестандартное свойство -moz-border-radius-bottomleft.

border-bottom-right-radius

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
9.0+ 1.0+ 10.5+ 3.0+ 1.0+ 2.1+ 1.0+

Краткая информация

Значение по умолчанию 0
Наследуется Нет
Процентная запись Да, относительно ширины блока
Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/css3-background/#border-bottom-right-radius

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Устанавливает радиус скругления правого нижнего уголка рамки. Если рамка не задана, то скругление также происходит и с фоном.

Синтаксис

border-bottom-right-radius: [значение | проценты] [значение | проценты]

Значения

В качестве радиуса указывается любое допустимое в CSS значение (px, cm, in, em и др.), а также проценты, в этом случае радиус скругления считается от ширины блока.

Необязательное второе значение предназначено для создания эллиптического уголка, первое значение при этом устанавливает радиус по горизонтали, а второе — радиус по вертикали (рис. 1).

Рис. 1

Рис. 1. Радиус скругления для создания разных типов уголков

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>border-bottom-right-radius</title>
  <style>
   .radius {
    background: #fc0;
    padding: 15px;
    margin-bottom: 10px;
   }
  </style>
 </head> 
 <body> 
  <div style="border-bottom-right-radius: 20px" class="radius">
   border-bottom-right-radius: 20px
  </div>
  <div style="border-bottom-right-radius: 70px 40px" class="radius">
   border-bottom-right-radius: 70px 40px
  </div>
 </body> 
</html>

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

Радиус скругления в браузере Safari

Рис. 2. Радиус скругления в браузере Safari

Браузеры

Chrome до версии 4.0, Safari до версии 5.0, iOS используют нестандартное свойство -webkit-border-top-left-radius.

Firefox до версии 4.0 использует нестандартное свойство -moz-border-radius-topleft.

border-bottom-style

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
6.0+ 8.0+ 1.0+ 3.5+ 1.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Значение по умолчанию Нет
Наследуется Нет
Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/CSS21/box.html#border-style-properties

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Устанавливает стиль границы внизу элемента.

Синтаксис

border-bottom-style: none|hidden|dotted|dashed|solid|double|groove|ridge|inset|outset|inherit

Значения

none
Линия не отображается и значение ее толщины обнуляется.
hidden
Имеет тот же эффект, что и none за исключением применения border-bottom-style к ячейкам таблицы, у которой значение свойства border-collapse установлено как collapse. В этом случае нижняя граница в ячейке не будет отображаться вообще.
dotted
Линия состоящая из набора точек.
dashed
Пунктирная линия, состоящая из серии коротких отрезков.
solid
Сплошная линия.
double
Двойная линия.
groove
Создает эффект вдавленной линии.
ridge
Создает эффект рельефной линии.
inset
Псевдотрехмерная линия.
outset
Псевдотрехмерная линия.
inherit
Наследует значение родителя.

Вид указанных стилей представлен на рис. 1.

Стили рамок

Рис.1. Стили границ

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>border-bottom-style</title>
  <style>
   #panel {
    background: #ccc; /* Цвет фона */
   } 
   #panel p {
    padding: 5px; /* Добавляем поля */
    margin: 0; /* Убираем отступы у параграфа */
   }
   #title {
    background: navy; /* Цвет фона */
    color: white; /* Цвет текста */
    border-bottom-width: 2px; /* Толщина линии внизу */
    border-bottom-style: solid; /* Стиль линии внизу */
    border-bottom-color: white; /* Цвет линии внизу */
   }
  </style>
 </head>
 <body>

  <div id="panel">
  <p id="title">Lorem ipsum dolor sit amet</p>
  <p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diem 
  nonummy nibh euismod tincidunt ut lacreet dolore magna aliguam erat volutpat.</p>
  </div>

 </body>
</html>

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

Применение свойства border-bottom-style

Рис. 2. Применение свойства border-bottom-style

Объектная модель

[window.]document.getElementById("elementID").style.borderBottomStyle

Браузеры

Браузер Internet Explorer до версии 6.0 включительно при толщине границы 1px отображает dotted как dashed. При толщине 2px и выше значение dotted работает корректно. Эта ошибка исправлена в IE7, но только для всех границ толщиной 1px. Если одна из границ блока имеет толщину 2px и выше, то в IE7 значение dotted превращается в dashed.

Internet Explorer до версии 7.0 включительно не поддерживает значения hidden и inherit.

Стиль границы в разных браузерах может несколько различаться при использовании значений groove, ridge, inset или outset.

border-bottom-width

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
6.0+ 8.0+ 1.0+ 3.5+ 1.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Значение по умолчанию medium
Наследуется Нет
Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/CSS21/box.html#border-width-properties

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Устанавливает толщину границы внизу элемента.

Синтаксис

border-bottom-width: значение | thin | medium | thick | inherit

Значения

Три переменные — thin (2 пиксела), medium (4 пиксела) и thick (6 пикселов) задают толщину границы внизу. Для более точного значения, толщину можно указывать в пикселах или других единицах. inherit наследует значение родителя.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>border-bottom-width</title>
  <style>
   h1 {
    border-color: #ccc; /* Цвет границы */
    border-style: double; /* Стиль границы */
    border-bottom-width: 7px; /* Толщина линии внизу текста */
    border-right-width: 7px; /* Толщина линии справа от текста */
    padding-left: 5px; /* Отступ слева от текста */ 
   }
  </style>
 </head>
 <body>

  <h1>Lorem ipsum dolor sit amet</h1>
  <p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diem 
  nonummy nibh euismod tincidunt ut lacreet dolore magna aliguam erat volutpat.</p>

 </body>
</html>

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

Применение свойства border-bottom-width

Рис. 1. Применение свойства border-bottom-width

Объектная модель

[window.]document.getElementById("elementID").style.borderBottomWidth

Браузеры

Браузер Internet Explorer до шестой версии включительно при толщине границы 1px отображает dotted как dashed. При толщине 2px и выше значение dotted работает корректно. Эта ошибка исправлена в IE7, но только для всех границ толщиной 1px. Если одна из границ блока имеет толщину 2px и выше, то в IE7 значение dotted превращается в dashed.

Internet Explorer до версии 7.0 включительно не поддерживает значения hidden и inherit.

Толщина границы при использовании ключевых слов thin, medium и thick в разных браузерах может несколько различаться.

border-collapse

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
6.0+ 8.0+ 1.0+ 3.5+ 1.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Значение по умолчанию separate
Наследуется Нет
Применяется К тегу <table> или к элементам, у которых значение display установлено как table или inline-table
Ссылка на спецификацию http://www.w3.org/TR/CSS21/tables.html#propdef-border-collapse

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Устанавливает, как отображать границы вокруг ячеек таблицы. Это свойство играет роль, когда для ячеек установлена рамка, тогда в месте стыка ячеек получится линия двойной толщины (рис. 1а). Значение collapse заставляет браузер анализировать подобные места в таблице и убирать в ней двойные линии (рис. 1б). При этом между ячейками остается только одна граница, одновременно принадлежащая обеим ячейкам. То же правило соблюдается и для внешних границ, когда вокруг самой таблицы добавляется рамка.

Рис. 1а Рис. 1б
а б

Рис. 1. Вид таблицы при использовании свойства border-collapse

Синтаксис

border-collapse: collapse | separate | inherit

Значения

collapse
Линия между ячейками отображается только одна, также игнорируется значение атрибута cellspacing.
separate
Вокруг каждой ячейки отображается своя собственная рамка, в местах соприкосновения ячеек показываются сразу две линии.
inherit
Наследует значение родителя.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>border-collapse</title>
  <style>
   table { 
    width: 100%; /* Ширина таблицы */
    border: 4px double black; /* Рамка вокруг таблицы */
    border-collapse: collapse; /* Отображать только одинарные линии */
   }
   th { 
    text-align: left; /* Выравнивание по левому краю */
    background: #ccc; /* Цвет фона ячеек */
    padding: 5px; /* Поля вокруг содержимого ячеек */
    border: 1px solid black; /* Граница вокруг ячеек */
   }
   td { 
    padding: 5px; /* Поля вокруг содержимого ячеек */
    border: 1px solid black; /* Граница вокруг ячеек */
   }
  </style>
 </head>
 <body>   
  <table>
   <tr> 
    <th>&nbsp;</th><th>2013</th>
    <th>2014</th><th>2015</th>
   </tr>
   <tr> 
    <td>Нефть</td><td>43</td>
    <td>51</td><td>79</td>
   </tr>
   <tr> 
    <td>Золото</td><td>29</td>
    <td>34</td><td>48</td>
   </tr>
   <tr> 
    <td>Дерево</td><td>38</td>
    <td>57</td><td>36</td>
   </tr>
  </table> 
 </body>
</html>

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

Вид таблицы при использовании свойства border-collapse

Рис. 2. Вид таблицы при использовании свойства border-collapse

Браузеры

Internet Explorer до версии 7.0 включительно не поддерживает значение inherit. В IE6 и IE7 не отменяется действие атрибута cellspacing.

border-color

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
6.0+ 8.0+ 1.0+ 3.5+ 1.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Значение по умолчанию Нет
Наследуется Нет
Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/CSS21/box.html#propdef-border-color

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Устанавливает цвет границы на разных сторонах элемента. Свойство позволяет задать цвет границы сразу для всех сторон элемента или только для указанных.

Синтаксис

border-color: [цвет | transparent] {1,4} | inherit

Значения

См. цвет

transparent
Устанавливает прозрачный цвет.
inherit
Наследует значение родителя.

Разрешается использовать одно, два, три или четыре значения, разделяя их между собой пробелом. Результат зависит от количества и указан в табл. 1.

Табл. 1. Изменение цвета в зависимости от числа значений
Число значений Результат
1 Цвет границы будет установлен для всех сторон элемента.
2 Первое значение устанавливает цвет верхней и нижней границы, второе — левой и правой.
3 Первое значение задает цвет верхней границы, второе — одновременно левой и правой границы, а третье — нижней границы.
4 Поочередно устанавливается цвет верхней, правой, нижней и левой границы.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>border-color</title>
  <style>
   h1 { 
    border-color: red white; /* Цвет границы */ 
    border-style: solid; /* Стиль границы */  
   }
   p { 
    border-color: #008a77; /* Цвет границы */
    border-style: solid; /* Стиль границы */
    padding: 5px; /* Поля вокруг текста */
   }
  </style>
 </head>
 <body>
  
  <h1>Lorem ipsum dolor sit amet</h1>
  <p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diem 
  nonummy nibh euismod tincidunt ut lacreet dolore magna aliguam erat volutpat.</p>
  
 </body>
</html>

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

Использование свойства border-color

Рис. 1. Использование свойства border-color

Объектная модель

[window.]document.getElementById("elementID").style.borderColor

Браузеры

Internet Explorer 6 не поддерживает значение transparent. Браузер Internet Explorer до версии 7.0 включительно не поддерживает inherit.

Цвет границы в разных браузерах может несколько различаться при использовании значений стиля groove, ridge, inset или outset.

border-image

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
7.0+ 10.5+ 3.0+ 3.5+ 1.0+

Краткая информация

Значение по умолчанию none
Наследуется Нет
Применяется Ко всем элементам, за исключением тех, у кого border-collapse задан как collapse
Процентная запись Неприменима
Ссылка на спецификацию http://www.w3.org/TR/css3-background/#border-images

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Используется для отображения рисованной рамки вокруг элемента. Толщина рамки задаётся свойством border, при этом если указано border: 0, то рамка не выводится. При других значениях border рисунок всегда имеет приоритет. Фон, если он задан через свойство background, отображается под рамкой.

Синтаксис

border-image: none | [ <URL> [<число> | <проценты>]{1,4} [/ <толщина>{1,4}]? ] && [stretch | repeat | round]{0,2}

Значения

none
Не отображает рисованную рамку, используется установленный стиль границы.
URL

Путь к графическому файлу. Обязательный параметр.

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

Изображение для создания рамки

Рис. 1. Изображение для создания рамки

<число>

Одно, два, три или четыре значения, которые указывают размеры частей изображения в пикселах, задавая тем самым области деления. Сами единицы не пишутся, только число (10, а не 10px).На рис. 2 красными линиями выделены необходимые для создания рамки области.

Деление исходного изображения на области

Рис. 2. Деление исходного изображения на области

Разрешается использовать одно, два, три или четыре значения, разделяя их между собой пробелом. Эффект зависит от количества значений и приведен в табл. 1.

Табл. 1. Зависимость от числа значений
Число значений Результат
1 Устанавливает границы одинаковой толщины на каждой стороне рисунка.
2 Первое значение устанавливает высоту верхней и нижней границы, второе — левой и правой.
3 Первое значение определяет высоту верхней границы, второе — левой и правой, а третье — высоту нижней границы.
4 Поочередно устанавливается размеры верхней, правой, нижней и левой границы.
<проценты>
Аналогично <числу>, но значения задаются в процентах. Тот или другой параметр обязателен.
<толщина>
Через слэш пишется одно, два, три или четыре значения толщины границы на каждой стороне элемента. Является аналогом border-style и использует тот же синтаксис.
stretch
Растягивает рисунок границы до размеров элемента. Это значение используется по умолчанию.
repeat
Повторяет рисунок границы.
round
Повторяет рисунок и масштабирует его так, чтобы на стороне элемента оказалось целое число изображений.

Влияние этих параметров на вид рамки показано на рис. 3.

stretch repeat round
stretch repeat round

Рис. 3. Результат использования параметров stretch, repeat и round

 

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>border-image</title>
  <style>
   div {
    border: 30px solid #40c4c8;
    padding: 20px;
    -moz-border-image: url(images/bg-image.png) 30 round round;
    -webkit-border-image: url(images/bg-image.png) 30 round round; 
    -o-border-image: url(images/bg-image.png) 30 round round;
    border-image: url(images/bg-image.png) 30 round round;
   }
  </style>
 </head>
 <body>
   <div>Витраж представляет собой композицию сделанную из 
   множества цветных стекол обрамлённых проволокой и наиболее 
   эффектно смотрится при прохождении через него солнечного 
   или искусственного света.</div>
 </body>
</html>

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

Вид рамки в браузере Chrome

Рис. 4. Вид рамки в браузере Chrome

Браузеры

Firefox поддерживает свойство -moz-border-image.

Safari, Chrome и iOS поддерживают свойство -webkit-border-image.

Opera поддерживает свойство -o-border-image, начиная с версии 11.0 понимает стандартное свойство без префиксов.

border-left

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
6.0+ 8.0+ 1.0+ 3.5+ 1.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Значение по умолчанию Зависит от использования
Наследуется Нет
Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/CSS21/box.html#border-shorthand-properties

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Свойство border-left позволяет одновременно установить толщину, стиль и цвет левой границы элемента. Значения могут идти в любом порядке, разделяясь пробелом, браузер сам определит, какое из них соответствует нужному свойству.

Синтаксис

border-left: [border-width || border-style || border-color] | inherit

Значения

Значение border-width определяет толщину границы. Для управления ее видом предоставляется несколько значений свойства border-style. Их названия и результат действия представлен на рис. 1.

Стили рамок

Рис.1. Стили рамок

border-color устанавливает цвет границы, значение может быть в любом допустимом для CSS формате.

inherit наследует значение родителя.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>border-left</title>
  <style>
   .line {
    border-left: 2px dotted green; /* Линия слева от текста */
    padding-left: 10px; /* Расстояние между линией и текстом */
    margin-left: 10px; /* Расстояние от левого края до линии */
   }
  </style>
 </head>
 <body> 
  <div class="line">
   Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diem 
   nonummy nibh euismod tincidunt ut lacreet dolore magna aliguam erat 
   volutpat. Ut wisis enim ad minim veniam, quis nostrud exerci tution 
   ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat.
  </div>
 </body>
</html>

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

Применение свойства border-left

Рис. 2. Применение свойства border-left

Объектная модель

[window.]document.getElementById("elementID").style.borderLeft

Браузеры

Браузер Internet Explorer до шестой версии включительно при толщине границы 1px отображает dotted как dashed. При толщине 2px и выше значение dotted работает корректно. Эта ошибка исправлена в IE7, но только для всех границ толщиной 1px. Если одна из границ блока имеет толщину 2px и выше, то в IE7 значение dotted превращается в dashed.

Internet Explorer до версии 7.0 включительно не поддерживает значение inherit.

Стиль границы в разных браузерах может несколько различаться при использовании значений groove, ridge, inset или outset.

border-left-color

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
6.0+ 8.0+ 1.0+ 3.5+ 1.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Значение по умолчанию Нет
Наследуется Нет
Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/CSS21/box.html#border-color-properties

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Задает цвет границы слева от элемента.

Синтаксис

border-left-color: цвет | transparent | inherit

Значения

См. цвет

transparent
Устанавливает прозрачный цвет.
inherit
Наследует значение родителя.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>border-left-color</title>
  <style>
   .line {
    border-left-color: #fc0; /* Цвет линии слева */
    border-left-style: solid; /* Стиль линии */
    border-left-width: 7px; /* Толщина линии */
    padding-left: 10px; /* Расстояние между линией и текстом */
   }
  </style>
 </head>
 <body> 
  <div class="line">
   Lorem ipsum dolor sit amet, consectetuer adipiscing elit, 
   sed diem nonummy nibh euismod tincidunt ut lacreet dolore 
   magna aliguam erat volutpat. Ut wisis enim ad minim veniam, 
   quis nostrud exerci tution ullamcorper suscipit lobortis nisl 
   ut aliquip ex ea commodo consequat.
  </div>
 </body>
</html>

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

Результат использования border-left-color

Рис. 1. Результат использования border-left-color

Объектная модель

[window.]document.getElementById("elementID").style.borderLeftColor

Браузеры

Internet Explorer 6 не поддерживает значение transparent. Браузер Internet Explorer до версии 7.0 включительно не поддерживает inherit.

Цвет границы в разных браузерах может несколько различаться при использовании значений стиля groove, ridge, inset или outset.

border-left-style

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
6.0+ 8.0+ 1.0+ 3.5+ 1.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Значение по умолчанию Нет
Наследуется Нет
Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/CSS21/box.html#border-style-properties

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Устанавливает стиль границы слева от элемента.

Синтаксис

border-left-style: none|hidden|dotted|dashed|solid|double|groove|ridge|inset|outset|inherit

Значения

none
Линия не отображается и значение ее толщины обнуляется.
hidden
Имеет тот же эффект, что и none за исключением применения border-left-style к ячейкам таблицы, у которой значение свойства border-collapse установлено как collapse. В этом случае левая граница в ячейке не будет отображаться вообще.
dotted
Линия состоящая из набора точек.
dashed
Пунктирная линия, состоящая из серии коротких отрезков.
solid
Сплошная линия.
double
Двойная линия.
groove
Создает эффект вдавленной линии.
ridge
Создает эффект рельефной линии.
inset
Псевдотрехмерная линия.
outset
Псевдотрехмерная линия.
inherit
Наследует значение родителя.

Вид указанных стилей представлен на рис. 1.

Стили рамок

Рис.1. Стили границ

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>border-left-style</title>
  <style>
   .line {
    border-left-color: red; /* Цвет линии слева */
    border-left-style: double; /* Стиль линии */
    border-left-width: 7px;  /* Толщина линии */
    padding-left: 10px;  /* Расстояние между линией и текстом */
   }
  </style>
 </head>
 <body> 
  <div class="line">
  Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diem nonummy nibh 
  euismod tincidunt ut lacreet dolore magna aliguam erat volutpat. Ut wisis enim 
  ad minim veniam, quis nostrud exerci tution ullamcorper suscipit lobortis nisl 
  ut aliquip ex ea commodo consequat.
  </div>
 </body>
</html>

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

Использование свойства border-left-style

Рис. 2. Использование свойства border-left-style

Объектная модель

[window.]document.getElementById("elementID").style.borderLeftStyle

Браузеры

Браузер Internet Explorer до шестой версии включительно при толщине границы 1px отображает dotted как dashed. При толщине 2px и выше значение dotted работает корректно. Эта ошибка исправлена в IE7, но только для всех границ толщиной 1px. Если одна из границ блока имеет толщину 2px и выше, то в IE7 значение dotted превращается в dashed.

Internet Explorer до версии 7.0 включительно не поддерживает значения hidden и inherit.

Стиль границы в разных браузерах может несколько различаться при использовании значений groove, ridge, inset или outset.

border-left-width

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
6.0+ 8.0+ 1.0+ 3.5+ 1.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Значение по умолчанию medium
Наследуется Нет
Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/CSS21/box.html#border-width-properties

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Устанавливает толщину границы слева от элемента.

Синтаксис

border-left-width: значение | thin | medium | thick | inherit

Значения

Три переменные — thin (2 пиксела), medium (4 пиксела) и thick (6 пикселов) задают толщину границы слева. Для более точного значения, толщину можно указывать в пикселах или других единицах. inherit наследует значение родителя.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>border-left-width</title>
  <style>
   .line {
    border-left-color: red; /* Цвет линии слева */
    border-left-style: double; /* Стиль линии */
    border-left-width: thick; /* Толщина линии */
    padding-left: 10px; /* Расстояние между линией и текстом */
   }
  </style>
 </head>
 <body> 
  <div class="line">
  <h3>Обратите внимание!</h3>
  <p>В наши расчеты не входит задача взорвать весь город, поэтому 
     будьте аккуратнее, когда начнете пересыпать ядерное топливо из 
     мешка. Чтобы не загрязнить комнату, не забудьте положить 
     на пол газету.</p>
  </div>
 </body>
</html>

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

Использование свойства border-left-width

Рис. 1. Использование свойства border-left-width

Объектная модель

[window.]document.getElementById("elementID").style.borderLeftWidth

Браузеры

Браузер Internet Explorer до шестой версии включительно при толщине границы 1px отображает dotted как dashed. При толщине 2px и выше значение dotted работает корректно. Эта ошибка исправлена в IE7, но только для всех границ толщиной 1px. Если одна из границ блока имеет толщину 2px и выше, то в IE7 значение dotted превращается в dashed.

Internet Explorer до версии 7.0 включительно не поддерживает значения hidden и inherit.

Толщина границы при использовании ключевых слов thin, medium и thick в разных браузерах может несколько различаться.

border-radius

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
9.0+ 1.0+ 10.5+ 3.0+ 1.0+ 2.1+ 1.0+

Краткая информация

Значение по умолчанию 0
Наследуется Нет
Процентная запись Да, относительно ширины блока
Применяется Ко всем элементам, за исключением таблиц с border-collapsecollapse
Ссылка на спецификацию http://www.w3.org/TR/css3-background/#the-border-radius

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Устанавливает радиус скругления уголков рамки. Если рамка не задана, то скругление также происходит и с фоном.

Синтаксис

border-radius: <радиус>{1,4} [ / <радиус>{1,4}]

Значения

Разрешается использовать одно, два, три или четыре значения, перечисляя их через пробел (табл. 1). Также допустимо писать два значения через слэш (/). В качестве значений указываются числа в любом допустимом для CSS формате. В случае применения процентов, отсчет ведется относительно ширины блока.

Табл. 1. Зависимость от числа значений
Число значений Результат
1 Радиус указывается для всех четырех уголков.
2 Первое значение задает радиус верхнего левого и нижнего правого уголка, второе значение — верхнего правого и нижнего левого уголка.
3 Первое значение задает радиус для верхнего левого уголка, второе — одновременно для верхнего правого и нижнего левого, а третье — для нижнего правого уголка.
4 По очереди устанавливает радиус для верхнего левого, верхнего правого, нижнего правого и нижнего левого уголка.

В случае задания двух параметров через слэш, то первый задает радиус по горизонтали, а второй по вертикали (эллиптические уголки). На рис. 1 показана разница между обычным скругленным уголком и эллиптическим уголком.

Радиус скругления для создания разных типов уголков

Рис. 1. Радиус скругления для создания разных типов уголков

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>border-radius</title>
  <style>
   .radius {
    background: #f0f0f0; /* Цвет фона */
    border: 1px solid black; /* Параметры рамки */
    padding: 15px; /* Поля вокруг текста */
    margin-bottom: 10px; /* Отступ снизу */
   }
  </style>
 </head> 
 <body> 
  <div style="border-radius: 50px 0 0 50px;" class="radius">
   border-radius: 50px 0 0 50px;
  </div>
  <div style="border-radius: 40px 10px" class="radius">
   border-radius: 40px 10px;
  </div>
  <div style="border-radius: 10em/1em;" class="radius">
   border-radius: 13em/3em;
  </div>
  <div style="border-radius: 13em 0.5em/1em 0.5em;" class="radius">
   border-radius: 13em 0.5em/1em 0.5em;
  </div>
  <div style="border-radius: 8px;" class="radius">
   border-radius: 8px;
  </div>
 </body> 
</html>

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

Радиусы скругления в браузере Safari

Рис. 2. Радиусы скругления в браузере Safari

Браузеры

Chrome до версии 4.0, Safari до версии 5.0, iOS используют нестандартное свойство -webkit-border-radius.

Firefox до версии 4.0 использует нестандартное свойство -moz-border-radius.

border-right

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
6.0+ 8.0+ 1.0+ 3.5+ 1.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Значение по умолчанию Зависит от использования
Наследуется Нет
Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/CSS21/box.html#border-shorthand-properties

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Свойство border-right позволяет одновременно установить толщину, стиль и цвет правой границы элемента. Значения могут идти в любом порядке, разделяясь пробелом, браузер сам определит, какое из них соответствует нужному свойству.

Синтаксис

border-right: [border-width || border-style|| border-color] | inherit

Значения

Значение border-width определяет толщину границы. Для управления ее видом предоставляется несколько значений свойства border-style. Их названия и результат действия представлен на рис. 1.

Стили рамок

Рис.1. Стили рамок

border-color устанавливает цвет границы, значение может быть в любом допустимом для CSS формате.

inherit наследует значение родителя.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>border-right</title>
  <style>
   .line {
    border-left: 1px solid red; /* Линия слева от текста */
    border-right: 1px solid red; /* Линия справа от текста */
    padding: 0 10px;  /* Расстояние между линией и текстом */
    margin: 0 10%; /* Отступы от края до линии */
   }
  </style>
 </head>
 <body> 
  <div class="line">
  Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diem nonummy nibh 
  euismod tincidunt ut lacreet dolore magna aliguam erat volutpat. Ut wisis enim 
  ad minim veniam, quis nostrud exerci tution ullamcorper suscipit lobortis nisl 
  ut aliquip ex ea commodo consequat.
  </div>
 </body>
</html>

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

Применение border-right

Рис. 2. Применение border-right

Объектная модель

[window.]document.getElementById("elementID").style.borderRight

Браузеры

Браузер Internet Explorer до шестой версии включительно при толщине границы 1px отображает dotted как dashed. При толщине 2px и выше значение dotted работает корректно. Эта ошибка исправлена в IE7, но только для всех границ толщиной 1px. Если одна из границ блока имеет толщину 2px и выше, то в IE7 значение dotted превращается в dashed.

Internet Explorer до версии 7.0 включительно не поддерживает значение inherit.

Стиль границы в разных браузерах может несколько различаться при использовании значений groove, ridge, inset или outset.

border-right-color

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
6.0+ 8.0+ 1.0+ 3.5+ 1.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Значение по умолчанию Нет
Наследуется Нет
Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/CSS21/box.html#border-color-properties

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Задает цвет границы справа от элемента.

Синтаксис

border-right-color: цвет | transparent | inherit

Значения

См. цвет

transparent
Устанавливает прозрачный цвет.
inherit
Наследует значение родителя.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>border-right-color</title>
  <style>
   .line {
    border-right-color: navy; /* Цвет линии справа */
    border-right-style: dotted; /* Стиль линии */
    border-right-width: 3px;  /* Толщина линии */
    padding-right: 10px;  /* Расстояние между линией и текстом */
    margin-right: 100px; /* Отступ справа */
   }
  </style>
 </head>
 <body> 
  <div class="line">
   Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diem nonummy nibh 
   euismod tincidunt ut lacreet dolore magna aliguam erat volutpat. Ut wisis enim 
   ad minim veniam, quis nostrud exerci tution ullamcorper suscipit lobortis nisl 
   ut aliquip ex ea commodo consequat.
  </div>
 </body>
</html>

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

Применение свойства border-right-color

Рис. 1. Применение свойства border-right-color

Объектная модель

[window.]document.getElementById("elementID").style.borderRightColor

Браузеры

Internet Explorer 6 не поддерживает значение transparent. Браузер Internet Explorer до версии 7.0 включительно не поддерживает inherit.

Цвет границы в разных браузерах может несколько различаться при использовании значений стиля groove, ridge, inset или outset.

border-right-style

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
6.0+ 8.0+ 1.0+ 3.5+ 1.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Значение по умолчанию Нет
Наследуется Нет
Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/CSS21/box.html#border-style-properties

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Устанавливает стиль границы справа от элемента.

Синтаксис

border-right-style: none|hidden|dotted|dashed|solid|double|groove|ridge|inset|outset|inherit

Значения

none
Линия не отображается и значение ее толщины обнуляется.
hidden
Имеет тот же эффект, что и none за исключением применения border-right-style к ячейкам таблицы, у которой значение свойства border-collapse установлено как collapse. В этом случае правая граница в ячейке не будет отображаться вообще.
dotted
Линия состоящая из набора точек.
dashed
Пунктирная линия, состоящая из серии коротких отрезков.
solid
Сплошная линия.
double
Двойная линия.
groove
Создает эффект вдавленной линии.
ridge
Создает эффект рельефной линии.
inset
Псевдотрехмерная линия.
outset
Псевдотрехмерная линия.
inherit
Наследует значение родителя.

Вид указанных стилей представлен на рис. 1.

Стили рамок

Рис.1. Стили границ

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>border-right-style</title>
  <style>
   .line {
    border-right-color: #ef40b0; /* Цвет линии справа */
    border-right-style: dotted; /* Стиль линии */
    border-right-width: 3px; /* Толщина линии */
    border-left-color: #ef40b0; /* Цвет линии слева */
    border-left-style: dotted; /* Стиль линии */
    border-left-width: 3px; /* Толщина линии */
    padding: 0 10px; /* Расстояние между линией и текстом */
    margin: 0 50px; /* Отступы справа и слева */
   }
  </style>
 </head>
 <body>
   
  <div class="line">   Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed 
   diem nonummy nibh euismod tincidunt ut lacreet dolore magna aliguam 
   erat volutpat. Ut wisis enim ad minim veniam, quis nostrud exerci 
   tution ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo 
   consequat.
  </div>
  
 </body>
</html>

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

Применение свойства border-right-style

Рис. 2. Применение свойства border-right-style

Объектная модель

[window.]document.getElementById("elementID").style.borderRightStyle

Браузеры

Браузер Internet Explorer до шестой версии включительно при толщине границы 1px отображает dotted как dashed. При толщине 2px и выше значение dotted работает корректно. Эта ошибка исправлена в IE7, но только для всех границ толщиной 1px. Если одна из границ блока имеет толщину 2px и выше, то в IE7 значение dotted превращается в dashed.

Internet Explorer до версии 7.0 включительно не поддерживает значения hidden и inherit.

Стиль границы в разных браузерах может несколько различаться при использовании значений groove, ridge, inset или outset.

border-right-width

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
6.0+ 8.0+ 1.0+ 3.5+ 1.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Значение по умолчанию medium
Наследуется Нет
Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/CSS21/box.html#border-width-properties

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Устанавливает толщину границы справа от элемента.

Синтаксис

border-right-width: значение | thin | medium | thick | inherit

Значения

Три переменные — thin (2 пиксела), medium (4 пиксела) и thick (6 пикселов) задают толщину границы справа. Для более точного значения, толщину можно указывать в пикселах или других единицах. inherit наследует значение родителя.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>border-right-width</title>
  <style>
   .line {
    border-right-color: #c38e63; /* Цвет линии справа */
    border-right-style: dashed; /* Стиль линии */
    border-right-width: 2px; /* Толщина линии */
    border-left-color: #c38e63; /* Цвет линии слева */
    border-left-style: dashed; /* Стиль линии */
    border-left-width: 2px; /* Толщина линии */
    padding: 0 10px; /* Расстояние между линией и текстом */
   }
  </style>
 </head>
 <body> 
  <div class="line">
   Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed 
   diem nonummy nibh euismod tincidunt ut lacreet dolore magna aliguam 
   erat volutpat. Ut wisis enim ad minim veniam, quis nostrud exerci 
   tution ullamcorper suscipit lobortis nisl ut aliquip ex ea 
   commodo consequat.
  </div>
 </body>
</html>

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

Применение свойства border-right-width

Рис. 1. Применение свойства border-right-width

Объектная модель

[window.]document.getElementById("elementID").style.borderRightWidth

Браузеры

Браузер Internet Explorer до шестой версии включительно при толщине границы 1px отображает dotted как dashed. При толщине 2px и выше значение dotted работает корректно. Эта ошибка исправлена в IE7, но только для всех границ толщиной 1px. Если одна из границ блока имеет толщину 2px и выше, то в IE7 значение dotted превращается в dashed.

Internet Explorer до версии 7.0 включительно не поддерживает значения hidden и inherit.

Толщина границы при использовании ключевых слов thin, medium и thick в разных браузерах может несколько различаться.

border-spacing

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
8.0+ 1.0+ 4.0+ 1.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Значение по умолчанию 0
Наследуется Да
Применяется К таблицам
Ссылка на спецификацию http://www.w3.org/TR/CSS21/tables.html#propdef-border-spacing

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Задает расстояние между границами ячеек в таблице. border-spacing не работает в случае, когда для таблицы установлено свойство border-collapse со значением collapse.

Синтаксис

border-spacing: значение1 [значение2]

Значения

Одно значение устанавливает одновременно расстояние по вертикали и горизонтали между границами ячеек. Если значений два, то первое определяет горизонтальное расстояние, а второе — вертикальное.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>border-spacing</title>
  <style>
   table {
    border: 4px double #333; /* Рамка вокруг таблицы */ 
    border-collapse: separate; /* Способ отображения границы */ 
    width: 100%; /* Ширина таблицы */ 
    border-spacing: 7px 11px; /* Расстояние между ячейками */ 
   }
   td {
    padding: 5px; /* Поля вокруг текста */ 
    border: 1px solid #a52a2a; /* Граница вокруг ячеек */ 
   }
  </style>
 </head>
 <body>
  <table>
   <tr>
    <td>1</td><td>2</td>
   </tr>
   <tr>
    <td>3</td><td>4</td>
   </tr>
  </table>
 </body>
</html>

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

Применение свойства border-spacing

Рис. 1. Применение свойства border-spacing

Браузеры

Если к тегу <table> добавлен атрибут cellspacing, то при использовании стилевого свойства border-spacing атрибут cellspacing не принимается во внимание и его значение игнорируется. Исключением из этого правила является браузер Internet Explorer до версии 7.0 включительно, который не понимает свойство border-spacing.

border-style

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
6.0+ 8.0+ 1.0+ 3.5+ 1.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Значение по умолчанию none
Наследуется Нет
Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/CSS21/box.html#propdef-border-style

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Устанавливает стиль границы вокруг элемента. Допустимо задавать индивидуальные стили для разных сторон элемента.

Синтаксис

border-style: [none | hidden | dotted | dashed | solid | double | groove | ridge | inset | outset] {1,4} | inherit

Значения

Для управления видом границы предоставляется несколько значений свойства border-style. Вид зависит от используемого браузера и заданной толщины границы. В табл. 1 приведены названия стилей и получаемая рамка при разных значениях толщины — 1, 3, 5 и 7 пикселов.

Табл. 1. Вид рамки в зависимости от стиля и толщины границы элемента
1 пиксел 3 пиксела 5 пикселов 7 пикселов

dotted

dotted

dotted

dotted

dashed

dashed

dashed

dashed

solid

solid

solid

solid

double

double

double

double

groove

groove

groove

groove

ridge

ridge

ridge

ridge

inset

inset

inset

inset

outset

outset

outset

outset

Кроме перечисленных в таблице значений используются следующие ключевые слова.

none
Не отображает границу и ее толщина (border-width) задается нулевой.
hidden
Имеет тот же эффект, что и none за исключением применения border-style к ячейкам таблицы, у которой значение свойства border-collapse установлено как collapse. В этом случае вокруг ячейки граница не будет отображаться вообще.
inherit
Наследует значение родителя.

Разрешается использовать одно, два, три или четыре значения, разделяя их между собой пробелом. Эффект зависит от количества и указан в табл. 2.

Табл. 2. Зависимость результата использования от числа значений
Число значений Результат
1 Стиль границы будет задан для всех сторон элемента.
2 Первое значение устанавливает стиль верхней и нижней границы, второе — левой и правой.
3 Первое значение задает стиль верхней границы, второе — одновременно левой и правой границы, а третье — нижней границы.
4 Поочередно устанавливается стиль верхней, правой, нижней и левой границы.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>border-style</title>
  <style>
   p { 
    border-style: double; /* Стиль линии вокруг параграфа */
    padding: 5px; /* Поля вокруг текста */
   }
  </style> 
 </head> 
 <body> 
  <p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diem 
  nonummy nibh euismod tincidunt ut lacreet dolore magna aliguam erat volutpat.</p>
 </body> 
</html>

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

Применение свойства border-style

Рис. 1. Применение свойства border-style

Объектная модель

[window.]document.getElementById("elementID").style.borderStyle

Браузеры

Браузер Internet Explorer до шестой версии включительно при толщине границы 1px отображает dotted как dashed. При толщине 2px и выше значение dotted работает корректно. Эта ошибка исправлена в IE7, но только для всех границ толщиной 1px. Если одна из границ блока имеет толщину 2px и выше, то в IE7 значение dotted превращается в dashed.

Internet Explorer до версии 7.0 включительно не поддерживает значения hidden и inherit.

Стиль границы в разных браузерах может несколько различаться при использовании значений groove, ridge, inset или outset.

border-top

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
6.0+ 8.0+ 1.0+ 3.5+ 1.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Значение по умолчанию Зависит от использования
Наследуется Нет
Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/CSS21/box.html#border-shorthand-properties

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Свойство border-top позволяет одновременно установить толщину, стиль и цвет границы сверху элемента. Значения могут идти в любом порядке, разделяясь пробелом, браузер сам определит, какое из них соответствует нужному свойству.

Синтаксис

border-top: [border-width || border-style || border-color] | inherit

Значения

border-width определяет толщину границы. Для управления ее видом предоставляется несколько значений border-style. Их названия и результат действия представлен на рис. 1.

Стили рамок

Рис.1. Стили рамок

border-color устанавливает цвет границы, значение может быть в любом допустимом для CSS формате.

inherit наследует значение родителя.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>border-top</title>
  <style>
   .line {
    border-top: 1px solid red; /* Линия сверху текста */
    border-bottom: 1px solid red; /* Линия снизу текста */
    padding: 5px; /* Поля вокруг текста */
   }
  </style>
 </head>
 <body> 
  
  <div class="line">
   Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diem nonummy nibh 
   euismod tincidunt ut lacreet dolore magna aliguam erat volutpat. Ut wisis enim 
   ad minim veniam, quis nostrud exerci tution ullamcorper suscipit lobortis nisl 
   ut aliquip ex ea commodo consequat.
  </div>
  
 </body>
</html>

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

Применение свойства border-top

Рис. 2. Применение свойства border-top

Объектная модель

[window.]document.getElementById("elementID").style.borderTop

Браузеры

Браузер Internet Explorer до шестой версии включительно при толщине границы 1px отображает dotted как dashed. При толщине 2px и выше значение dotted работает корректно. Эта ошибка исправлена в IE7, но только для всех границ толщиной 1px. Если одна из границ блока имеет толщину 2px и выше, то в IE7 значение dotted превращается в dashed.

Internet Explorer до версии 7.0 включительно не поддерживает значение inherit.

Стиль границы в разных браузерах может несколько различаться при использовании значений groove, ridge, inset или outset.

border-top-color

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
6.0+ 8.0+ 1.0+ 3.5+ 1.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Значение по умолчанию Нет
Наследуется Нет
Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/CSS21/box.html#border-color-properties

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Задает цвет границы сверху элемента.

Синтаксис

border-top-color: цвет | transparent | inherit

Значения

См. цвет

transparent
Устанавливает прозрачный цвет.
inherit
Наследует значение родителя.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>border-top-color</title>
  <style>
   h1 {
    border-top-color: #ccc; /* Цвет линии сверху */
    border-top-style: double; /* Стиль линии сверху */
    border-top-width: 7px; /* Толщина линии сверху */
    border-left-color: #ccc; /* Цвет линии слева */
    border-left-style: solid; /* Стиль линии */
    border-left-width: 2px; /* Толщина линии */
    padding: 7px; /* Поля вокруг текста */ 
   }
  </style>
 </head>
 <body>
  
  <h1>Lorem ipsum dolor sit amet</h1>
  <p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diem 
  nonummy nibh euismod tincidunt ut lacreet dolore magna aliguam erat volutpat. 
  Ut wisis enim ad minim veniam, quis nostrud exerci tution ullamcorper suscipit 
  lobortis nisl ut aliquip ex ea commodo consequat.</p>
  
 </body>
</html>

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

Применение свойства border-top-color

Рис. 1. Применение свойства border-top-color

Объектная модель

[window.]document.getElementById("elementID").style.borderTopColor

Браузеры

Internet Explorer 6 не поддерживает значение transparent. Браузер Internet Explorer до версии 7.0 включительно не поддерживает inherit.

Цвет границы в разных браузерах может несколько различаться при использовании значений стиля groove, ridge, inset или outset.

border-top-left-radius

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
9.0+ 1.0+ 10.5+ 3.0+ 1.0+ 2.1+ 1.0+

Краткая информация

Значение по умолчанию 0
Наследуется Нет
Процентная запись Да, относительно ширины блока
Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/css3-background/#border-top-left-radius

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Устанавливает радиус скругления левого верхнего уголка рамки. Если рамка не задана, то скругление также происходит и с фоном.

Синтаксис

border-top-left-radius: [значение | проценты] [значение | проценты]

Значения

В качестве радиуса указывается любое допустимое в CSS значение (px, cm, in, em и др.), а также проценты, в этом случае радиус скругления считается от ширины блока.

Необязательное второе значение предназначено для создания эллиптического уголка, первое значение при этом устанавливает радиус по горизонтали, а второе — радиус по вертикали (рис. 1).

Радиус скругления для создания разных типов уголков

Рис. 1. Радиус скругления для создания разных типов уголков

Пример

<!DOCTYPE htm>
<html>
 <head>
  <meta charset="utf-8">
  <title>border-top-left-radius</title>
  <style>
   .title {
    background: #000080; /* Цвет фона */
    color: #ffe; /* Цвет текста */
    padding: 7px; /* Поля вокруг текста */ 
    border-top-left-radius: 10px; /* Левый верхний уголок */
    border-top-right-radius: 10px; /* Правый верхний уголок */
   }
   .content {
    border: 1px solid #000080;  /* Параметры рамки */
    background: #f0f0f0; /* Цвет фона */
    padding: 7px; /* Поля вокруг текста */ 
    border-bottom-left-radius: 10px; /* Левый нижний уголок */
    border-bottom-right-radius: 10px; /* Правый нижний уголок */
   }
  </style>
 </head> 
 <body> 
  <div class="title">Буквица</div>
   <div class="content">
    Буквица является художественным приемом оформления текста и 
    представляет собой увеличенную первую букву, базовая линия 
    которой ниже на одну или несколько строк базовой линии 
    основного текста. 
   </div>
 </body> 
</html>

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

Радиус скругления в браузере Safari

Рис. 2. Радиус скругления в браузере Safari

Браузеры

Firefox до версии 4.0 использует нестандартное свойство -moz-border-radius-topleft.

Chrome до версии 4.0, Safari до версии 5.0, iOS используют нестандартное свойство -webkit-border-top-left-radius.

border-top-right-radius

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
9.0+ 1.0+ 10.5+ 3.0+ 1.0+ 2.1+ 1.0+

Краткая информация

Значение по умолчанию 0
Наследуется Нет
Процентная запись Да, относительно ширины блока
Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/css3-background/#border-top-right-radius

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Устанавливает радиус скругления правого верхнего уголка рамки. Если рамка не задана, то скругление также происходит и с фоном.

Синтаксис

border-top-right-radius: [значение | проценты] [значение | проценты]

Значения

В качестве радиуса указывается любое допустимое в CSS значение (px, cm, in, em и др.), а также проценты, в этом случае радиус скругления считается от ширины блока.

Необязательное второе значение предназначено для создания эллиптического уголка, первое значение при этом устанавливает радиус по горизонтали, а второе — радиус по вертикали (рис. 1).

Рис. 1

Рис. 1. Радиус скругления для создания разных типов уголков

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>border-top-right-radius</title>
  <style>
   .radius {
    background: #f0f0f0;
    border: 1px dashed #000;
    padding: 15px;
    margin-bottom: 10px;
   }
  </style>
 </head> 
 <body> 
  <div style="border-top-right-radius: 10px" class="radius">
   border-top-right-radius: 10px
  </div>
  <div style="border-top-right-radius: 70px 40px" class="radius">
   border-top-right-radius: 70px 40px
  </div>
 </body> 
</html>

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

Радиус скругления в браузере Safari

Рис. 2. Радиус скругления в браузере Safari

Браузеры

Firefox до версии 4.0 использует нестандартное свойство -moz-border-radius-topright.

Chrome до версии 4.0, Safari до версии 5.0, iOS используют нестандартное свойство -webkit-border-top-right-radius.

border-top-style

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
6.0+ 8.0+ 1.0+ 3.5+ 1.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Значение по умолчанию Нет
Наследуется Нет
Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/CSS21/box.html#border-style-properties

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Устанавливает стиль границы сверху элемента.

Синтаксис

border-top-style: none|hidden|dotted|dashed|solid|double|groove|ridge|inset|outset|inherit

Значения

none
Линия не отображается и значение ее толщины обнуляется.
hidden
Имеет тот же эффект, что и none за исключением применения border-top-style к ячейкам таблицы, у которой значение свойства border-collapse установлено как collapse. В этом случае верхняя граница в ячейке не будет отображаться вообще.
dotted
Линия состоящая из набора точек.
dashed
Пунктирная линия, состоящая из серии коротких отрезков.
solid
Сплошная линия.
double
Двойная линия.
groove
Создает эффект вдавленной линии.
ridge
Создает эффект рельефной линии.
inset
Псевдотрехмерная линия.
outset
Псевдотрехмерная линия.
inherit
Наследует значение родителя.

Вид указанных стилей представлен на рис. 1.

Стили рамок

Рис.1. Стили границ

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8" />
  <title>border-top-style</title>
  <style>
   h1 {
    border-top-color: #800000; /* Цвет линии сверху */
    border-top-style: double; /* Стиль линии сверху */
    border-top-width: 7px; /* Толщина линии сверху */
    border-left-color: #bd0000; /* Цвет линии слева */
    border-left-style: solid; /* Стиль линии */
    border-left-width: 2px; /* Толщина линии */
    padding: 7px; /* Поля вокруг текста */ 
   }
  </style>
 </head>
 <body> 
  
  <h1>Lorem ipsum dolor sit amet</h1>
  <p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diem 
  nonummy nibh euismod tincidunt ut lacreet dolore magna aliguam erat volutpat. 
  Ut wisis enim ad minim veniam, quis nostrud exerci tution ullamcorper suscipit 
  lobortis nisl ut aliquip ex ea commodo consequat.</p>
  
 </body>
</html>

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

Применение свойства border-top-style

Рис. 2. Применение свойства border-top-style

Объектная модель

[window.]document.getElementById("elementID").style.borderTopStyle

Браузеры

Браузер Internet Explorer до шестой версии включительно при толщине границы 1px отображает dotted как dashed. При толщине 2px и выше значение dotted работает корректно. Эта ошибка исправлена в IE7, но только для всех границ толщиной 1px. Если одна из границ блока имеет толщину 2px и выше, то в IE7 значение dotted превращается в dashed.

Internet Explorer до версии 7.0 включительно не поддерживает значения hidden и inherit.

Стиль границы в разных браузерах может несколько различаться при использовании значений groove, ridge, inset или outset.

border-top-width

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
6.0+ 8.0+ 1.0+ 3.5+ 1.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Значение по умолчанию medium
Наследуется Нет
Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/CSS21/box.html#border-width-properties

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Устанавливает толщину границы сверху элемента.

Синтаксис

border-top-width: значение | thin | medium | thick | inherit

Значения

Три переменные — thin (2 пиксела), medium (4 пиксела) и thick (6 пикселов) задают толщину границы. Для более точного значения, толщину можно указывать в пикселах или других единицах. inherit наследует значение родителя.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8" />
  <title>border-top-width</title>
  <style>
   h1 {
    border-top-color: green; /* Цвет линии сверху */
    border-top-style: double; /* Стиль линии сверху */
    border-top-width: 7px; /* Толщина линии сверху */
    border-right-color: green; /* Цвет линии справа */
    border-right-style: double; /* Стиль линии */
    border-right-width: 5px; /* Толщина линии */
    padding: 7px; /* Поля вокруг текста */
    color: #f9b61c; /* Цвет текста */
   }
  </style>
 </head>
 <body> 
  <h1>Lorem ipsum dolor sit amet</h1>
  <p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed 
     diem nonummy nibh euismod tincidunt ut lacreet dolore magna aliguam 
     erat volutpat. Ut wisis enim ad minim veniam, quis nostrud exerci 
     tution ullamcorper suscipit lobortis nisl ut aliquip 
     ex ea commodo consequat.</p>
 </body>
</html>

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

Применение свойства border-top-width

Рис. 1. Применение свойства border-top-width

Объектная модель

[window.]document.getElementById("elementID").style.borderTopWidth

Браузеры

Браузер Internet Explorer до шестой версии включительно при толщине границы 1px отображает dotted как dashed. При толщине 2px и выше значение dotted работает корректно. Эта ошибка исправлена в IE7, но только для всех границ толщиной 1px. Если одна из границ блока имеет толщину 2px и выше, то в IE7 значение dotted превращается в dashed.

Internet Explorer до версии 7.0 включительно не поддерживает значения hidden и inherit.

Толщина границы при использовании ключевых слов thin, medium и thick в разных браузерах может несколько различаться.

border-width

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
6.0+ 8.0+ 1.0+ 3.5+ 1.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Значение по умолчанию medium
Наследуется Нет
Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/CSS21/box.html#border-width-properties

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Задает толщину границы одновременно на всех сторонах элемента или индивидуально для каждой стороны. Способ изменения толщины зависит от числа значений.

Синтаксис

border-width: [значение | thin | medium | thick] {1,4} | inherit

Значения

Три переменные — thin (2 пиксела), medium (4 пиксела) и thick (6 пикселов) задают толщину границы. Для более точного значения, толщину можно указывать в пикселах или других единицах. inherit наследует значение родителя.

Разрешается использовать одно, два, три или четыре значения, разделяя их между собой пробелом. Эффект зависит от количества и приведен в табл. 1.

Табл. 1. Зависимость результата от числа значений
Число значений Результат
1 Толщина границы будет установлена для всех сторон элемента.
2 Первое значение устанавливает толщину верхней и нижней границы, второе  — левой и правой.
3 Первое значение задает толщину верхней границы, второе — одновременно левой и правой границы, а третье — нижней границы.
4 Поочередно устанавливается толщину верхней, правой, нижней и левой границы.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>border-width</title>
  <style>
   p { 
    border-style: double; /* Стиль рамки вокруг параграфа */
    border-width: 3px 7px 7px 4px; /* Толщина границы */
    padding: 7px; /* Поля вокруг текста */
   }
  </style>
 </head>
 <body> 
  <p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diem 
  nonummy nibh euismod tincidunt ut lacreet dolore magna aliguam erat volutpat.</p>
 </body>
</html>

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

Применение свойства border-width

Рис. 1. Применение свойства border-width

Объектная модель

[window.]document.getElementById("elementID").style.borderWidth

Браузеры

Браузер Internet Explorer до шестой версии включительно при толщине границы 1px отображает dotted как dashed. При толщине 2px и выше значение dotted работает корректно. Эта ошибка исправлена в IE7, но только для всех границ толщиной 1px. Если одна из границ блока имеет толщину 2px и выше, то в IE7 значение dotted превращается в dashed.

Internet Explorer до версии 7.0 включительно не поддерживает значения hidden и inherit.

Толщина границы при использовании ключевых слов thin, medium и thick в разных браузерах может несколько различаться.

bottom

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
6.0+ 8.0+ 1.0+ 3.5+ 1.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Значение по умолчанию auto
Наследуется Нет
Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/CSS21/visuren.html#propdef-bottom

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Устанавливает положение нижнего края содержимого элемента без учета толщины рамок и отступов. Отсчет координат зависит от свойства position, оно обычно принимает значение relative (относительное положение) или absolute (абсолютное положение).

При относительном позиционировании элемента, отсчет ведется от нижнего края исходного положения элемента, а при абсолютном — относительно нижнего края окна браузера (рис. 1). Если для родительского элемента задано positionrelative, то абсолютное позиционирование дочерних элементов определяет их положение от нижнего края родителя (рис. 2).

Рис. 1. Значение  bottom при абсолютном позиционирование элемента

Рис. 1. Значение bottom при абсолютном позиционирование элемента

Рис. 2. Значение  bottom относительно родителя

Рис. 2. Значение bottom относительно родителя

Если одновременно задано свойство top и bottom со значениями отличными от auto, то свойство bottom игнорируется.

Синтаксис

bottom: значение | проценты | auto | inherit

Значения

В качестве значений принимаются любые единицы длины, принятые в CSS — например, пикселы (px), дюймы (in), пункты (pt) и др. Значение свойства bottom может быть и отрицательным, в этом случае возможны наложения разных элементов друг на друга. При задании значения в процентах, положение элемента вычисляется в зависимости от высоты родительского элемента.

auto
Не изменяет положение элемента.
inherit
Наследует значение родителя.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>bottom</title>
  <style>
   #layer {
    bottom: 20px; /* Расстояние от нижнего края окна браузера */
    position: absolute; /* Абсолютное позиционирование */
    background: #f0f0f0; /* Цвет фона */
    padding: 7px; /* Поля вокруг текста */
    border: solid 1px black; /* Параметры рамки */
   }
  </style>
 </head> 
 <body> 
  <div id="layer">
   Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diem 
   nonummy nibh euismod tincidunt ut lacreet dolore magna aliguam erat volutpat.
  </div> 
 </body>
</html>

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

Применение свойства bottom

Рис. 3. Применение свойства bottom

Объектная модель

[window.]document.getElementById("elementID").style.bottom

Браузеры

В браузере Internet Explorer 6 для абсолютно позиционированных элементов нельзя одновременно задать свойства top, left, right, bottom.

Internet Explorer до версии 7.0 включительно не поддерживает значение inherit.

box-shadow

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
9.0+ 1.0+ 10.5+ 3.0+ 3.5+ 2.1+ 2.0+

Краткая информация

Значение по умолчанию none
Наследуется Нет
Применяется Ко всем элементам
Процентная запись Неприменима
Ссылка на спецификацию http://www.w3.org/TR/css3-background/#the-box-shadow

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Добавляет тень к элементу. Допускается использовать несколько теней, указывая их параметры через запятую, при наложении теней первая тень в списке будет выше, последняя ниже. Если для элемента задается радиус скругления через свойство border-radius, то тень также получится с закругленными уголками. Добавление тени увеличивает ширину элемента, поэтому возможно появление горизонтальной полосы прокрутки в браузере.

Синтаксис

box-shadow: none | <тень> [,<тень>]*
где <тень>:
inset <сдвиг по x> <сдвиг по y> <радиус размытия> <растяжение> <цвет>

Значения

none
Отменяет добавление тени.
inset
Тень выводится внутри элемента. Необязательный параметр.
сдвиг по x
Смещение тени по горизонтали относительно элемента. Положительное значение этого параметра задает сдвиг тени вправо, отрицательное — влево. Обязательный параметр.
сдвиг по y
Смещение тени по вертикали относительно элемента. Положительное значение задает сдвиг тени вниз, отрицательное — вверх. Обязательный параметр.
размытие
Задает радиус размытия тени. Чем больше это значение, тем сильнее тень сглаживается, становится шире и светлее. Если этот параметр не задан, по умолчанию устанавливается равным 0, тень при этом будет четкой, а не размытой.
растяжение
Положительное значение растягивает тень, отрицательное, наоборот, ее сжимает. Если этот параметр не задан, по умолчанию устанавливается 0, при этом тень будет того же размера, что и элемент.
цвет
Цвет тени в любом доступном CSS формате, по умолчанию тень черная. Необязательный параметр.

Допускается указывать несколько теней, разделяя их параметры между собой запятой. Учитывается следующий порядок: первая тень в списке размещается на самом верху, последняя в списке — в самом низу.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>box-shadow</title>
  <style>
   .shadow {
    background: #fc0; /* Цвет фона */
    -moz-box-shadow: 0 0 10px rgba(0,0,0,0.5); /* Для Firefox */
    -webkit-box-shadow: 0 0 10px rgba(0,0,0,0.5); /* Для Safari и Chrome */
    box-shadow: 0 0 10px rgba(0,0,0,0.5); /* Параметры тени */
    padding: 10px;
   }
  </style>
 </head>
 <body>
  <div class="shadow">В чащах юга жил бы цитрус? Да, но фальшивый экземпляр!</div> 
 </body>
</html>

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

Вид тени в браузере Safari

Рис. 1. Вид тени в браузере Safari

Браузеры

Safari до версии 5.1, Chrome до версии 10.0 и iOS поддерживают свойство -webkit-box-shadow.

Firefox до версии 4.0 поддерживает свойство -moz-box-shadow.

Internet Explorer до версии 9.0 не поддерживает свойство box-shadow, взамен можно использовать нестандартное свойство filter:

filter: progid:DXImageTransform.Microsoft.dropshadow(offX=5, offY=5, color=#000000);

Здесь: offX — смещение тени по горизонтали; offY — смещение тени по вертикали; color — цвет тени.

Применение фильтра dropshadow дает четкую резкую тень, поэтому для эффекта размытия можно использовать фильтр shadow.

filter: progid:DXImageTransform.Microsoft.shadow(direction=120, color=#000000, strength=10);

Здесь: direction — угол направления тени от 0 до 360°; color — цвет тени; strength — смещение тени в пикселах.

box-sizing

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
8.0+ 1.0+ 7.0+ 3.0+ 1.0+ 2.1+ 2.0+

Краткая информация

Значение по умолчанию content-box
Наследуется Нет
Применяется Ко всем элементам
Процентная запись Неприменима
Ссылка на спецификацию http://www.w3.org/TR/css3-ui/#box-sizing

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Применяется для изменения алгоритма расчета ширины и высоты элемента.

Согласно спецификации CSS ширина блока складывается из ширины контента (width), значений отступов (margin), полей (padding) и границ (border). Аналогично обстоит и с высотой блока. Свойство box-sizing позволяет изменить этот алгоритм, чтобы свойства width и height задавали размеры не контента, а размеры блока.

Синтаксис

box-sizing: content-box | border-box | inherit

Значения

content-box
Основывается на стандартах CSS, при этом свойства width и height задают ширину и высоту контента и не включают в себя значения отступов, полей и границ.
border-box
Свойства width и height включают в себя значения полей и границ, но не отступов (margin). Эта модель используется браузером Internet Exporer в режиме несовместимости.
inherit
Наследует значение родителя.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>box-sizing</title>
  <style>
   .box1 { 
    background: #f0f0f0; /* Цвет фона */
    width: 300px; /* Ширина блока */
    padding: 10px; /* Поля */
    border: 2px solid #000; /* Параметры рамки */
   }
   .box2 { 
    background: #fc0; /* Цвет фона */
    width: 300px; /* Ширина блока */
    padding: 10px; /* Поля */
    margin-top: 10px; /* Отступ сверху */
    border: 2px solid #000; /* Параметры рамки */
    -moz-box-sizing: border-box; /* Для Firefox */  
    box-sizing: border-box; /* Ширина блока с полями */
   }
  </style>
 </head>
 <body> 
  <div class="box1">Ширина с учетом значения свойства width, полей и границ.</div>
  <div class="box2">Ширина равна значению свойства width.</div>
 </body>
</html>

В данном примере ширина первого слоя будет равна 324 пиксела, поскольку она складывается из значения ширины контента (width), полей слева и справа (padding) и толщины границ (border). Ширина второго слоя равняется 300 пикселов за счет применения свойства box-sizing. Результат примера в браузере Opera 10 показан на рис. 1.

Ширина блоков

Рис. 1. Ширина блоков

Браузеры

Firefox использует нестандартное свойство -moz-box-sizing.

Safari, Chrome и iOS также используют нестандартное свойство -webkit-box-sizing.

caption-side

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
8.0+ 1.0+ 3.5+ 1.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Значение по умолчанию top
Наследуется Да
Применяется К <caption> или ко всем элементам, у которых значение display установлено как table-caption.
Ссылка на спецификацию http://www.w3.org/TR/CSS21/tables.html#propdef-caption-side

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Определяет положение заголовка таблицы, который задается с помощью тега <caption>, относительно самой таблицы. Свойство caption-side выводит заголовок до или после таблицы, а выравнивание текста по правому или левому краю устанавливается через свойство text-align. Браузер Firefox также поддерживает расположение заголовка слева или справа от таблицы, но эти значения не входят в спецификацию CSS.

Синтаксис

CSS2.1
caption-side: top | bottom 
CSS3
caption-side: top | bottom | left | right

Значения

top
Располагает заголовок по верхнему краю таблицы.
bottom
Заголовок располагается под таблицей.
left
Заголовок размещается слева от таблицы. Это значение работает только в браузерах Firefox.
right
Заголовок размещается справа от таблицы. Это значение работает только в браузерах Firefox.

Пример

<!DOCTYPE htm>
<html>
 <head>
  <meta charset="utf-8">
  <title>caption-side</title>
  <style>
    table {
     width: 100%; /* Ширина таблицы */ 
     border-collapse: collapse; /* Убираем двойную рамку между ячейками */ 
    }
    td {
     border: 1px solid green; /* Параметры границы */ 
     padding: 5px; /* Поля в ячейке */ 
    }
    caption { 
     caption-side: bottom; /* Заголовок под таблицей */ 
    }
   </style>
  </head>
  <body>
   <table>
    <caption>Расклад карт</caption>
    <tr>
     <td>&nbsp;</td><td>&spades;</td><td>&clubs;</td><td>&hearts;</td>
     <td>&diams;</td>
    </tr>
    <tr>
     <td>Чебурашка</td><td>6</td><td>3</td><td>1</td><td>3</td>
    </tr>
    <tr>
     <td>Крокодил Гена</td><td>1</td><td>5</td><td>5</td><td>2</td>
    </tr>
    <tr>
     <td>Шапокляк</td><td>3</td><td>4</td><td>6</td><td>0</td>
    </tr>
    <tr>
     <td>Крыса Лариса</td><td>3</td><td>1</td><td>1</td><td>8</td>
    </tr>
   </table>
 </body>
</html> 

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

Результат использования caption-side

Рис. 1. Результат использования caption-side

Объектная модель

[window.]document.getElementById("elementID").style.captionSide

clear

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
6.0+ 8.0+ 1.0+ 3.5+ 1.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Значение по умолчанию none
Наследуется Нет
Применяется К блочным и плавающим элементам
Ссылка на спецификацию http://www.w3.org/TR/CSS21/visuren.html#propdef-clear

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Устанавливает, с какой стороны элемента запрещено его обтекание другими элементами. Если задано обтекание элемента с помощью свойства float, то clear отменяет его действие для указанных сторон.

Синтаксис

clear: none | left | right | both | inherit

Значения

none
Отменяет действие свойства clear, при этом обтекание элемента происходит, как задано с помощью свойства float или других настроек.
both
Отменяет обтекание элемента одновременно с правого и левого края. Это значение рекомендуется устанавливать, когда требуется снять обтекание элемента, но неизвестно точно с какой стороны.
left
Отменяет обтекание с левого края элемента. При этом все другие элементы на этой стороне будут опущены вниз, и располагаться под текущим элементом.
right
Отменяет обтекание с правой стороны элемента.
inherit
Устанавливает значение родителя.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>clear</title>
  <style>
   #layer {
    float: left; /* Обтекание блока по правому краю */
    background: #fd0; /* Цвет фона */
    border: 1px solid black; /* Параметры рамки */
    padding: 10px; /* Поля вокруг текста */
    width: 40%; /* Ширина блока */
   }
  </style>
 </head> 
 <body>
  
  <div id="layer">
  Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diem nonummy nibh 
  euismod tincidunt ut lacreet dolore magna aliguam erat volutpat.
  </div>
  
  <div style="clear: left"></div>
  
  <p>Duis autem dolor in hendrerit in vulputate velit esse molestie consequat, 
  vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto 
  odio dignissim qui blandit praesent luptatum zzril delenit au gue duis dolore 
  te feugat nulla facilisi.</p> 
  
 </body>
</html>

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

Применение свойства clear

Рис. 1. Применение свойства clear

Объектная модель

[window.]document.getElementById("elementID").style.clear

Браузеры

В браузере Internet Explorer 6 наблюдается ошибка под названием «эффект ку-ку», когда элементы c clear, соприкасающиеся с плавающими элементами (у которых задано свойство float) могут исчезать.

В браузере Internet Explorer 7 свойство clear не действует для элементов, у которых одновременно задано float со значением, не совпадающим с clear.

Internet Explorer до версии 7.0 включительно не поддерживает значение inherit.

clip

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
6.0+ 8.0+ 1.0+ 3.5+ 1.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Значение по умолчанию auto
Наследуется Нет
Применяется К блочным элементам
Ссылка на спецификацию http://www.w3.org/TR/CSS21/visufx.html#propdef-clip

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Свойство clip определяет область позиционированного элемента, в которой будет показано его содержимое. Все, что не помещается в эту область, будет обрезано и становится невидимым. На данный момент единственно доступная форма области — прямоугольник. Все остальное остается только в мечтах. clip работает только для абсолютно позиционированных элементов.

Синтаксис

clip: rect(Y1, X1, Y2, X2) | auto | inherit

Значения

В качестве значений используется расстояние от края элемента до области вырезки, которое задается в единицах CSS — пикселы (px), em и др. Если край области нужно оставить без изменений, следует установить auto, положение остальных значений показано на рис. 1.

Рис. 1. Значения параметра clip

Рис. 1. Значения свойства clip

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>clip</title>
  <style>
  #layer {
   position: absolute; /* Абсолютное позиционирование */
   clip: rect(40px, auto, auto, 40px); /* Прячем часть текста */
   width: 200px; /* Ширина блока */
   color: white; /* Цвет текста */
   background: #7f4c3e; /* Цвет фона */
   border: 1px solid black; /* Параметры рамки */
   padding: 10px; /* Поля вокруг текста */
  }
  </style>
  </head> 
  <body> 
  <div id="layer">
   <p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diem 
   nonummy nibh euismod tincidunt ut lacreet dolore magna aliguam erat volutpat. 
   Ut wisis enim ad minim veniam, quis nostrud exerci tution ullamcorper suscipit 
   lobortis nisl ut aliquip ex ea commodo consequat.</p>
  </div>
 </body>
</html>

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

Применение clip в браузере Safari

Рис. 2. Применение clip в браузере Safari

Объектная модель

[window.]document.getElementById("elementID").style.clip

Браузеры

Internet Explorer до версии 7.0 включительно работает с другой формой записи, при которой значения координат разделяются между собой пробелом, а не запятой — cliprect(40px auto auto 40px). Также Internet Explorer до версии 7.0 включительно не поддерживает значение inherit.

color

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
6.0+ 8.0+ 1.0+ 3.5+ 1.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Значение по умолчанию Зависит от настроек браузера, обычно черный цвет
Наследуется Да
Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/CSS21/colors.html#propdef-color

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Определяет цвет текста элемента.

Синтаксис

color: цвет | inherit

Значения

См. цвет

inherit
Наследует значение родителя.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>color</title>
  <style>
   .letter {
    color: red; /* Цвет символа */
    font-size: 200%; /* Размер шрифта */
   } 
   p {
    color: rgb(49, 151, 116); /* Цвет текста */
   }
  </style>
 </head> 
 <body>
  <p><span class="letter">L</span>orem ipsum dolor 
   sit amet, consectetuer adipiscing elit, sed diem nonummy nibh euismod tincidunt 
   ut lacreet dolore magna aliguam erat volutpat.</p>
  <p><span class="letter">U</span>t wisis enim ad 
   minim veniam, quis nostrud exerci tution ullamcorper suscipit lobortis nisl 
   ut aliquip ex ea commodo consequat.</p>
 </body>
</html>

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

Использование свойства color

Рис. 1. Использование свойства color

Объектная модель

[window.]document.getElementById("elementID").style.color

Браузеры

Internet Explorer до версии 7.0 включительно не поддерживает значение inherit.

column-count

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
10.0 1.0+ 11.1+ 3.0+ 1.5+ 2.0+

Краткая информация

Значение по умолчанию auto
Наследуется Нет
Применяется К блочным элементам (кроме таблиц), ячейкам и элементам, у которых display установлен как inline-block
Процентная запись Неприменима
Ссылка на спецификацию http://www.w3.org/TR/css3-multicol/#column-count

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Определяет количество колонок в многоколоночном тексте.

Синтаксис

column-count: <число> | auto

Значения

<число>
Целое число больше нуля, задающее оптимальное число колонок.
auto
Число колонок вычисляется автоматически на основе других свойств (column-width, column-gap).

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>column-count</title>
  <style>
   .book {
    -moz-column-count: 2; /* Для Firefox */
    -webkit-column-count: 2; /* Для Safari и Chrome */
    column-count: 2;
   }
  </style>
 </head>
 <body>
  <div class="book">
   Контрапункт контрастных фактур дает структурный midi-контроллер, 
   таким образом объектом имитации является число длительностей в 
   каждой из относительно автономных ритмогрупп ведущего голоса. 
   Протяженность, по определению, просветляет флэнжер, хотя это 
   довольно часто напоминает песни Джима Моррисона и Патти Смит.
  </div>
 </body>
</html>
  

Браузеры

Firefox поддерживает нестандартное свойство -moz-column-count.

Safari, Chrome и iOS поддерживают нестандартное свойство -webkit-column-count.

column-gap

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
10.0 1.0+ 11.1+ 3.0+ 1.5+ 2.0+

Краткая информация

Значение по умолчанию normal
Наследуется Нет
Применяется К блочным элементам (кроме таблиц), ячейкам и элементам, у которых display установлен как inline-block
Процентная запись Неприменима

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Задаёт расстояние между колонками в многоколоночном тексте.

Синтаксис

column-gap: <значение> | normal

Значения

<значение>
Значение ширины межколоночного интервала в единицах CSS (например, пикселах).
normal
Межколоночный интервал устанавливается браузером.

Пример

<!DOCTYPE html>
 <head>
  <meta charset="utf-8">
  <title>column-gap</title>
  <style>
   .book {
    -moz-column-count: 3; /* Для Firefox */
    -moz-column-width: 200px;
    -moz-column-gap: 2em;
    -webkit-column-count: 3; /* Для Safari и Chrome */
    -webkit-column-width: 200px;
    -webkit-column-gap: 2em;
    column-count: 3;
    column-width: 200px;
    column-gap: 2em;
   }
  </style>
 </head>
 <body>
  <div class="book">
   Как было показано выше, кризис жанра дает звукоряд, и здесь в 
   качестве модуса конструктивных элементов используется ряд 
   каких-либо единых длительностей. Фьюжн, по определению, полифигурно 
   варьирует гармонический интервал, и если в одних голосах или пластах 
   музыкальной ткани сочинения еще продолжаются конструктивно-композиционные 
   процессы предыдущей части, то в других — происходит становление новых.   
   Трехчастная фактурная форма, в первом приближении, возможна. Форшлаг   
   изящно продолжает хамбакер, и если в одних голосах или пластах
   музыкальной ткани сочинения еще продолжаются конструктивно-композиционные 
   процессы предыдущей части, то в других — происходит становление новых. 
  </div>
 </body>
</html>

Браузеры

Firefox поддерживает нестандартное свойство -moz-column-gap.

Safari, Chrome и iOS поддерживают нестандартное свойство -webkit-column-gap.

column-rule

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
10.0 1.0+ 11.1+ 3.0+ 1.5+ 2.0+

Краткая информация

Значение по умолчанию medium none
Наследуется Нет
Применяется К блочным элементам (кроме таблиц), ячейкам и элементам, у которых display установлен как inline-block
Процентная запись Неприменима

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

В многоколоночном тексте отрисовывает линию между колонками.

Синтаксис

column-rule: <border-width> || <border-style> || <цвет>

Значения

Значение border-width определяет толщину линии. Для управления видом линии предоставляется несколько значений border-style. Их названия и результат действия представлен на рис. 1.

Стили рамок

Рис.1. Стили линии

<цвет> устанавливает цвет линии, значение может быть в любом допустимом для CSS формате.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>column-rule</title>
  <style>
   .book {
    -moz-column-count: 3;
    -moz-column-width: 200px;
    -moz-column-rule: 1px solid #ccc;
    -webkit-column-count: 3;
    -webkit-column-width: 200px;
    -webkit-column-rule: 1px solid #ccc;
    column-count: 3;
    column-width: 200px;
    column-rule: 1px solid #ccc;
   }
  </style>
 </head>
 <body>
  <div class="book">
   Как было показано выше, кризис жанра дает звукоряд, и здесь в 
   качестве модуса конструктивных элементов используется ряд 
   каких-либо единых длительностей. Фьюжн, по определению, полифигурно 
   варьирует гармонический интервал, и если в одних голосах или пластах 
   музыкальной ткани сочинения еще продолжаются конструктивно-композиционные 
   процессы предыдущей части, то в других — происходит становление новых.   
   Трехчастная фактурная форма, в первом приближении, возможна. Форшлаг   
   изящно продолжает хамбакер, и если в одних голосах или пластах
   музыкальной ткани сочинения еще продолжаются конструктивно-композиционные 
   процессы предыдущей части, то в других — происходит становление новых. 
  </div>
 </body>
</html>

Браузеры

Firefox поддерживает нестандартное свойство -moz-column-rule.

Safari, Chrome и iOS поддерживают нестандартное свойство -webkit-column-rule.

column-width

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
10.0 1.0+ 11.1+ 3.0+ 1.5+ 2.0+

Краткая информация

Значение по умолчанию auto
Наследуется Нет
Применяется К блочным элементам (кроме таблиц), ячейкам и элементам, у которых display установлен как inline-block
Процентная запись Неприменима

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Задаёт оптимальную ширину колонки в многоколоночном тексте. Реальная ширина колонки может быть больше введённого значения, сокращение указанной ширины приводит к отмене нескольких колонок, текст при этом выстраивается в одну колонку.

Синтаксис

column-width: <значение> | auto

Значения

<значение>
Значение ширины колонки в абсолютных единицах CSS (например, пикселах).
auto
Ширина колонок вычисляется автоматически на основе других свойств (column-count, column-gap).

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>column-width</title>
  <style>
   .book {
    -moz-column-count: 3;
    -moz-column-width: 200px;
    -webkit-column-count: 3;
    -webkit-column-width: 200px;
    column-count: 3;
    column-width: 200px;
   }
  </style>
 </head>
 <body>
  <div class="book">
   Как было показано выше, кризис жанра дает звукоряд, и здесь в 
   качестве модуса конструктивных элементов используется ряд 
   каких-либо единых длительностей. Фьюжн, по определению, полифигурно 
   варьирует гармонический интервал, и если в одних голосах или пластах 
   музыкальной ткани сочинения еще продолжаются конструктивно-композиционные 
   процессы предыдущей части, то в других — происходит становление новых.   
   Трехчастная фактурная форма, в первом приближении, возможна. Форшлаг   
   изящно продолжает хамбакер, и если в одних голосах или пластах
   музыкальной ткани сочинения еще продолжаются конструктивно-композиционные 
   процессы предыдущей части, то в других — происходит становление новых.
  </div>
 </body>
</html>

Браузеры

Firefox поддерживает нестандартное свойство -moz-column-width.

Safari, Chrome и iOS поддерживают нестандартное свойство -webkit-column-width.

columns

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
10.0 1.0+ 11.1+ 3.0+ 9.0+ 2.0+

Краткая информация

Значение по умолчанию auto
Наследуется Нет
Применяется К блочным элементам (кроме таблиц), ячейкам и элементам, у которых display установлен как inline-block
Процентная запись Неприменима

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Универсальное свойство, которое позволяет одновременно задать ширину и количество колонок многоколоночного текста.

Синтаксис

columns: [column-width] || [column-count]

Значения

Комбинация свойств column-width и column-count. Порядок значения не имеет.

Примеры

Ширина колонок 200 пикселов, количество задаётся браузером.

columns: 200px auto;

Три колонки минимальной ширины 12em каждая.

columns: 3 12em;

Две колонки, их ширина определяется браузером.

columns: 2;

Браузеры

Firefox поддерживает нестандартное свойство -moz-columns.

Safari, Chrome и iOS поддерживают нестандартное свойство -webkit-columns.

content

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
8.0 1.0+ 7.0+ 1.0+ 1.0+ 1.0+ 1.0+

Краткая информация

Значение по умолчанию Пустая строка
Наследуется Нет
Применяется К псевдоэлементам :before и :after
Ссылка на спецификацию http://www.w3.org/TR/CSS21/generate.html#content

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Свойство content позволяет вставлять генерируемое содержание в текст веб-страницы, которое первоначально в тексте отсутствует. Применяется совместно с псевдоэлементами :after и :before, они соответственно указывают отображать новое содержимое после или до элемента, к которому добавляются.

Синтаксис

content: строка | attr(параметр) | open-quote | close-quote | no-open-quote | no-close-quote | url | counter | normal | none | inherit

Значения

Строка
Текст, который добавляется на веб-страницу, строка при этом должна браться в двойные или одинарные кавычки. Допускается использовать юникод для вставки спецсимволов. Спецсимволы HTML которые начинаются с амперсанда (&sect; например), будут отображаться как есть, т.е. простым текстом (&sect;, а не §).
attr(параметр)

Возвращает строку, которая является значением параметра тега указанного в скобках. Например, a:after {content:attr(href)} добавит после ссылки её адрес, т.е. значение атрибута href. Если указанного атрибута нет, вернется пустая строка.
open-quote
Вставляет открывающую кавычку, тип которой устанавливается с помощью стилевого свойства quotes.
close-quote
Вставляет закрывающую кавычку.
no-open-quotes

Отменяет добавление открывающей кавычки.
no-close-quote

Отменяет добавление закрывающей кавычки.
url
Абсолютный или относительный адрес вставляемого объекта. Если указанный файл браузер не может отобразить, то значение игнорируется.
counter
Выводит значение счетчика, заданного свойством counter-reset.
none
Не добавляет никакое содержание.
normal
Задается как none для псевдоэлементов :before и :after.
inherit
Наследует значение родителя.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>content</title>
  <style>
   .tag {
    color: navy; /* Цвет текста */
    font-family: monospace; /* Моношириный шрифт */
    quotes: "<" ">"; /* Устанавливаем вид кавычек */
   } 
   .tag:before {
    content: open-quote; /* Добавляем перед текстом открывающую кавычку */
  }
   .tag:after {
    content: close-quote; /* Добавляем после текста закрывающую кавычку */
   }
  </style>
 </head>
 <body>
  <p>Тег <span class="tag">DEL</span> используется 
  для выделения текста, который был удален в новой версии документа.</p> 
 </body>
</html>

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

Применение свойства content

Рис. 1. Применение свойства content

Браузеры

Firefox до версии 2.0 включительно и Opera до версии 9.2 включительно не поддерживают значение none. Safari до версии 3.1 не поддерживает значение none и normal.

Chrome и Safari поддерживают свойство quotes для добавления кавычек с версии 11.0 и 5.1 соответственно.

counter-increment

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
8.0+ 2.0+ 9.2+ 3.0+ 1.0+ 2.1+ 2.0+

Краткая информация

Значение по умолчанию none
Наследуется Нет
Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/CSS21/generate.html#propdef-counter-increment

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Стилевое свойство counter-increment предназначено для увеличения значения счётчика приращений, который задается свойством counter-reset. Такой счётчик подсчитывает количество отображений элементов на странице и может выводиться с помощью свойства content и псевдоэлементов :after и :before. Это позволяет создавать списки (в том числе многоуровневые), в которых нумерация и вид задаются через стили.

Синтаксис

counter-increment: none | inherit | идентификатор | целое число

Значения

none
Запрещает увеличение счетчика для текущего селектора.
inherit
Наследует значение родителя.
идентификатор

Задает одну или несколько переменных, для которых требуется изменить значение счетчика. Переменные разделяются между собой пробелом.
целое число
Определяет значение приращения счетчика. По умолчанию оно равно 1. Допускается использовать отрицательные и нулевые значения.

Возможные сочетания значений свойств counter-reset и counter-increment показаны в табл. 1.

Табл. 1. Изменение нумерации списка
Код Результат
LI { list-style-type: none; }
OL { counter-reset: list -1; }
LI:before {
counter-increment: list;
content: counter(list) ". ";
}

Список начинается с нуля.

0, 1, 2

LI { list-style-type: none; }
OL { counter-reset: list; }
LI:before {
counter-increment: list 2;
content: counter(list) ". ";
}

Выводятся все четные числа.

2, 4, 6

LI { list-style-type: none; }
OL { counter-reset: list -1; }
LI:before {
counter-increment: list list;
content: counter(list) ". ";
}

Выводятся все нечетные числа.

1, 3, 5

LI { list-style-type: none; }
OL { counter-reset: list 9; }
LI:before {
counter-increment: list;
content: counter(list) ". ";
}

Список начинается с 10.

10, 11, 12

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>counter-increment</title>
  <style>
   body {
    counter-reset: heading; /* Инициируем счетчик */
   }
   h2:before {
    counter-increment: heading; /* Указываем идентификатор счетчика */
    content: "Глава " counter(heading) ". "; /* Выводим текст перед содержимым тега <h2> */
   }
  </style>
 </head>
 <body>
  <h2>Теория ловли льва в пустыне</h2>
  <h2>Методы инверсной кинематики</h2>
  <h2>Ловля льва численными методами</h2>
 </body>
</html>

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

Применение свойства counter-increment

Рис. 1. Применение свойства counter-increment

Примечание

Для элементов, у которых установлено display: none, значение счётчика не меняется.

counter-reset

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
8.0+ 2.0+ 9.2+ 3.0+ 1.0+ 2.1+ 2.0+

Краткая информация

Значение по умолчанию none
Наследуется Нет
Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/CSS21/generate.html#propdef-counter-reset

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Устанавливает идентификатор, в котором будет храниться счётчик отображений определенного элемента, а также начальное значение счётчика. Такой счётчик может выводиться с помощью свойства content и псевдоэлементов :after и :before.

Синтаксис

counter-reset: none | inherit | идентификатор | целое число

Значения

none
Запрещает инициацию счётчика для текущего селектора.
inherit
Наследует значение родителя.
идентификатор

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

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>counter-reset</title>
  <style>
   li { list-style-type: none; } /* Убираем исходную нумерацию у списка */
   ol { counter-reset: list1; } /* Инициируем счетчик */
   ol li:before {
    counter-increment: list1; /* Увеличиваем значение счетчика */
    content: counter(list1) ". "; /* Выводим число */
   }
   ol ol { counter-reset: list2; } /* Инициируем счетчик вложенного списка */
   ol ol li:before {
    counter-increment: list2; /* Увеличиваем значение счетчика вложенного списка */
    content: counter(list1) "." counter(list2) ". "; /* Выводим число */
   }
  </style>
 </head>
 <body>
  <ol>
   <li>Пункт
    <ol>
     <li>Подпункт</li>
     <li>Подпункт</li>
     <li>Подпункт</li>
    </ol>
   </li>
   <li>Пункт
    <ol>
     <li>Подпункт</li>
     <li>Подпункт</li>
    </ol>
   </li>
  </ol>
 </body>
</html>

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

Применение свойства counter-reset

Рис. 1. Применение свойства counter-reset

Примечание

Для элементов, у которых установлено displaynone, значение счётчика не меняется.

cursor

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
6.0 1.0+ 7.0+ 3.0+ 1.5+ 1.0+ 1.0+

Краткая информация

Значение по умолчанию auto
Наследуется Да
Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/CSS21/ui.html#cursor-props

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Устанавливает форму курсора, когда он находится в пределах элемента. Вид курсора зависит от операционной системы и установленных параметров.

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

Синтаксис

cursor: [url('путь к курсору'),] | [ auto | crosshair | default | e-resize | help | move | n-resize | ne-resize | nw-resize | pointer | progress | s-resize | se-resize | sw-resize | text | w-resize | wait | inherit ]

Значения

url
Позволяет установить свой собственный курсор, для этого нужно указать путь к файлу с курсором.
auto
Вид курсора по умолчанию для текущего элемента.
inherit
Наследует значение родителя.

Остальные допустимые значения приведены в табл. 1.

Табл. 1. Вид курсора
Вид Значение Тест Пример
default P {cursor: default}
crosshair P {cursor: crosshair}
help P {cursor: help}
move P {cursor: move}
pointer P {cursor: pointer}
progress P {cursor: progress}
text P {cursor: text}
wait P {cursor: wait}
n-resize P {cursor: n-resize}
ne-resize P {cursor: ne-resize}
e-resize P {cursor :e-resize}
 / se-resize P {cursor: se-resize}
s-resize P {cursor: s-resize}
sw-resize P {cursor: sw-resize}
w-resize P {cursor: w-resize}
nw-resize P {cursor :nw-resize}

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

При добавлении курсора из файла синтаксис несколько видоизменится.

cursor: url('путь к курсору1'), url('путь к курсору2'), ..., <ключевое слово>

Через запятую допускается указывать несколько значений url, в этом случае браузер попытается открыть первый файл с курсором и если это по каким-либо причинам не получится, перейдет к следующему файлу. Список обязательно заканчивается ключевым словом, например, auto или pointer, допустимые значения перечислены выше.

Пример 1

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>cursor</title>
  <style>
   .cross { cursor: crosshair; }
   .help { cursor: help; }
  </style>
 </head> 
 <body>
  <p class="cross">На этом тексте курсор мыши примет вид перекрестья.</p>
  <p> 
   <a href="help.html" class="help">СПРАВКА 1</a><br />
   <a href="help.html" class="help">СПРАВКА 2</a><br />
   <a href="help.html" class="help">СПРАВКА 3</a>
  </p> 
 </body>
</html>

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

Применение свойства cursor

Рис. 1. Применение свойства cursor

Пример 2

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>cursor</title>
  <style>
   a { cursor: url(images/sniper.cur), pointer; }
  </style>
 </head> 
 <body>
  <p>Обычный текст</p>
  <p><a href="1.html">Ссылка 1</a> <a href="2.html">Ссылка 2</a>
   <a href="3.html">Ссылка 3</a></p> 
 </body>
</html>

Объектная модель

[window.]document.getElementById("elementID").style.cursor

Браузеры

Некоторые браузеры поддерживают дополнительные формы курсоров. Например, Internet Explorer и Opera работает со значением hand, которое является аналогом значения pointer. Кроме того, в браузерах Safari, Chrome и Firefox будут действовать следующие значения: all-scroll, col-resize, no-drop, not-allowed, row-resize, vertical-text. Учтите, что указанные значения не входят в спецификацию CSS 2.1, но соответствуют спецификации CSS3 (кроме hand).

Internet Explorer в качестве формата файла курсора поддерживает CUR и ANI. Firefox, Chrome, Safari поддерживают форматы CUR, PNG, GIF, JPG.

Opera не работает с файлами курсора.

direction

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
6.0 2.0+ 9.2+ 1.3+ 1.0+ 1.0+ 1.0+

Краткая информация

Значение по умолчанию ltr
Наследуется Да
Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/CSS21/visuren.html#propdef-direction

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

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

Свойство direction достаточно универсально и управляет следующими возможностями:

  • способ отображения текста в блоке;
  • порядок колонок в таблице;
  • позиция полосы прокрутки в блоке;
  • положение последней висячей строки текстового блока при text-align: justify.

Для использования со встроенными элементами, значение свойства unicode-bidi должно быть задано как embed или override.

Синтаксис

direction: ltr | rtl | inherit

Значения

ltr
Устанавливает направление слева направо.
rtl
Задает направление справа налево.
inherit
Наследует значение родителя.

Пример 1

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
 <head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <title>direction</title>
  <style type="text/css">
   DIV.rtl { 
    direction: rtl; /* Направление */ 
    width: 200px; /* Ширина блока */ 
    height: 150px; /* Высота блока */ 
    overflow: scroll; /* Полоса прокрутки */ 
    text-align: left; /* Выравнивание по левому краю */ 
    padding: 5px; /* Поля вокруг текста */ 
    border: 1px solid #000; /* Параметры рамки */ 
   }
  </style>
 </head>
 <body>
  <div class="rtl">Велосипед уже изобрели, различные приемы верстки тоже. 
  Так что больше знакомься с мировым опытом по части верстки и тебе не придется тратить 
  время на разработку того, что всем давно известно.</div>
 </body>
</html>

Результат данного примера показан на рис. 1. Обратите внимание на положение точки в предложении, а также на то, что полоса прокрутки в браузере Internet Explorer отображается слева.

Применение direction к таблице

Рис. 1. Результат использования direction в браузере Internet Explorer

Пример 2

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>direction</title>
  <style>
    table { 
     direction: rtl; /* Колонки идут справа налево */
     width: 100%; /* Ширина таблицы */
     border-spacing: 0; /* Убираем пространство между ячейками */
    } 
  </style>
 </head>
 <body>
  <table border="1">
   <tr> 
     <td>&nbsp;</td><td>1999</td><td>2000</td>
     <td>2001</td><td>2002</td><td>2003</td>
   </tr>
   <tr> 
     <td>Нефть</td><td>16</td><td>34</td>
     <td>62</td><td>74</td><td>57</td>
   </tr>
   <tr>
     <td>Золото</td><td>4</td><td>69</td>
     <td>72</td><td>56</td><td>47</td>
   </tr>
   <tr>
     <td>Дерево</td><td>7</td><td>73</td>
     <td>79</td><td>34</td><td>86</td>
   </tr>
  </table> 
 </body>
</html>

Результат данного примера показан на рис. 2. Колонки таблицы отображается справа налево.

Применение direction к таблице

Рис. 2. Применение direction к таблице

Браузеры

При добавлении свойства direction со значением rtl к блоку с полосой прокрутки (например, <textarea>), браузер Internet Explorer и Firefox отображают скроллинг слева, а Opera и Safari — справа.

display

Работа в браузерах

Internet Explorer Chrome Opera Safari Firefox Android iOS
6.0+ 2.0+ 7.0+ 1.0+ 1.0+ 2.1+ 1.0+

Краткая информация

Значение по умолчанию inline
Наследуется Нет
Применяется Ко всем элементам
Ссылка на спецификацию http://www.w3.org/TR/CSS21/visuren.html#display-prop

Версии CSS

CSS 1 CSS 2 CSS 2.1 CSS 3

Описание

Многоцелевое свойство, которое определяет, как элемент должен быть показан в документе.

Синтаксис

display: block | inline | inline-block | inline-table | list-item | none | run-in | table | table-caption | table-cell | table-column-group | table-column | table-footer-group | table-header-group | table-row | table-row-group

Значения

Список возможных значений этого свойства, понимаемый разными браузерами очень короткий — block, inline, list-item и none. Все остальные допустимые значения поддерживаются браузерами выборочно. В табл. 1 приведены некоторые популярные браузеры и их поддержка различных значений.

Табл. 1. Поддержка браузерами значений display
Значение Описание IE6 IE7 IE8 Cr2 Cr8 Op9.2 Op10 Sa3.1 Sa5 Fx3 Fx4
block Элемент показывается как блочный. Применение этого значения для встроенных элементов, например тега <span>, заставляет его вести подобно блокам — происходит перенос строк в начале и в конце содержимого.
inline Элемент отображается как встроенный. Использование блочных тегов, таких как <div> и <p>, автоматически создает перенос и показывает содержимое этих тегов с новой строки. Значение inline отменяет эту особенность, поэтому содержимое блочных элементов начинается с того места, где окончился предыдущий элемент.
inline-block Это значение генерирует блочный элемент, который обтекается другими элементами веб-страницы подобно встроенному элементу. Фактически такой элемент по своему действию похож на встраиваемые элементы (вроде тега <img>). При этом его внутренняя часть форматируется как блочный элемент, а сам элемент — как встроенный.
inline-table Определяет, что элемент является таблицей как при использовании тега <table>, но при этом таблица является встроенным элементом и происходит ее обтекание другими элементами, например, текстом.
list-item Элемент выводится как блочный и добавляется маркер списка.
none Временно удаляет элемент из документа. Занимаемое им место не резервируется и веб-страница формируется так, словно элемента и не было. Изменить значение и сделать вновь видимым элемент можно с помощью скриптов, обращаясь к свойствам через объектную модель. В этом случае происходит переформатирование данных на странице с учетом вновь добавленного элемента.
run-in Устанавливает элемент как блочный или встроенный в зависимости от контекста.
table Определяет, что элемент является блочной таблицей подобно использованию тега <table>.
table-caption Задает заголовок таблицы подобно применению тега <caption>.                      
table-cell Указывает, что элемент представляет собой ячейку таблицы (тег <td> или <th>).                      
table-column Назначает элемент колонкой таблицы, словно был добавлен тег <col>.                      
table-column-group Определяет, что элемент является группой одной или более колонок таблицы, как при использовании тега <colgroup>.                      
table-footer-group Используется для хранения одной или нескольких строк ячеек, которые отображаются в самом низу таблицы. По своему действию сходно с работой тега <tfoot>.                      
table-header-group Элемент предназначен для хранения одной или нескольких строк ячеек, которые представлены вверху таблицы. По своему действию сходно с работой тега <thead>.                      
table-row Элемент отображается как строка таблицы (тег <tr>).                      
table-row-group Создает структурный блок, состоящий из нескольких строк таблицы аналогично действию тега <tbody>.                      

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>display</title>
  <style>
   .example {
    border: dashed 1px #634f36; /* Параметры рамки */
    background: #fffff5; /* Цвет фона */
    font-family: "Courier New", Courier, monospace; /* Шрифт текста */
    padding: 7px; /* Поля вокруг текста */
    margin: 0 0 1em; /* Отступы вокруг */
   }
   .exampleTitle {
    border: 1px solid black; /* Параметры рамки */
    border-bottom: none; /* Убираем линию снизу */
    padding: 3px; /* Поля вокруг текста */
    display: inline; /* Устанавливаем как встроенный элемент */
    background: #efecdf; /* Цвет фона */
    font-weight: bold; /* Жирное начертание */
    font-size: 90%; /* Размер текста */
    margin: 0; /* Убираем отступы вокруг */
    white-space: nowrap; /* Отменяем переносы текста */
   }
  </style>
 </head> 
 <body> 
  <p class="exampleTitle">Пример</p>
  <p class="example">
  &lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.01 Transitional//EN&quot;&gt;<br>
  &lt;html&gt;<br>
  &lt;body&gt;<br>
  &lt;b&gt;Формула серной кислоты:&lt;/b&gt;
  &lt;i&gt;H&lt;sub&gt;&lt;small&gt;2&lt;/small&gt;&lt;/sub&gt;
  SO&lt;sub&gt;&lt;small&gt;4&lt;/small&gt;
  &lt;/sub&gt;&lt;/i&gt;<br>
  &lt;/body&gt;<br>
  &lt;/html&gt;</p>
 </body>
</html>

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

Применение свойства display

Рис. 1. Применение свойства display

Объектная модель

[window.]document.getElementById("elementID").style.display

Браузеры

Internet Explorer до версии 7 включительно:

  • поддержка значений table-footer-group и table-header-group происходит только для тегов <thead> и <tfoot>;
  • для элементов <li> понимает значение block как list-item;
  • значение inline-block применяется только для встроенных элементов, с блочными элементами работает некорректно.

Opera 9.2, а также Firefox 2.0:

  • значение table-column применяется только для тега <col>;
  • значение table-column-group поддерживается только для тега <colgroup>.

Chrome 2.0, а также Safari версии 3 и старше, iOS:

  • значение run-in поддерживают только для элементов, которые располагаются перед встроенными элементами или такими, у которых значение display установлено как inline.

Safari 3.1

  • Значение table-cell не работает, если нет элементов со значениями свойства display: table и table-row.
Table of Contents