|
|||
Разберем наследование на примере таблицы. Особенностью таблиц можно считать строгую иерархическую структуру тегов. Вначале следует контейнер <table> внутри которого добавляются теги <tr>, а затем идет тег <td>. Если в стилях для селектора TABLE задать цвет текста, то он автоматически устанавливается для содержимого ячеек, как показано в примере 1.65.

В данном примере для всей таблицы установлен красный цвет текста, поэтому в ячейках он также
применяется, поскольку тег <td> наследует свойства тега <table>. При этом следует понимать, что не
все стилевые свойства наследуются. Так, border задает рамку вокруг таблицы в целом, но никак не
вокруг ячеек. Аналогично не наследуется значение свойства background. Тогда почему цвет фона у
ячеек в данном примере темный, раз он не наследуется? Дело в том, что у свойства background в
качестве значения по умолчанию выступает transparent, т.е. прозрачность. Таким образом цвет фона
родительского элемента «проглядывает» сквозь дочерний элемент.
Чтобы определить, наследуется значение стилевого свойства или нет, требуется заглянуть в справочник
по свойствам CSS и посмотреть там. Подключать свою интуицию в подобном случае бесполезно, может
и подвести.
Наследование позволяет задавать значения некоторых свойств единожды, определяя их для родителей
верхнего уровня. Допустим, требуется установить цвет и шрифт для основного текста. Достаточно
воспользоваться селектором BODY, добавить для него желаемые свойства, и цвет текста внутри абзацев
и других текстовых элементов поменяется автоматически (пример 1.66).
В данном примере рубленый шрифт и цвет текста абзацев устанавливается с помощью селектора BODY.
Благодаря наследованию уже нет нужды задавать цвет для каждого элемента документа в отдельности.
Однако бывают варианты, когда требуется все-таки изменить цвет для отдельного контейнера. В этом
случае придется переопределять нужные параметры явно, как показано в примере 1.67.
применяется, поскольку тег <td> наследует свойства тега <table>. При этом следует понимать, что не
все стилевые свойства наследуются. Так, border задает рамку вокруг таблицы в целом, но никак не
вокруг ячеек. Аналогично не наследуется значение свойства background. Тогда почему цвет фона у
ячеек в данном примере темный, раз он не наследуется? Дело в том, что у свойства background в
качестве значения по умолчанию выступает transparent, т.е. прозрачность. Таким образом цвет фона
родительского элемента «проглядывает» сквозь дочерний элемент.
Чтобы определить, наследуется значение стилевого свойства или нет, требуется заглянуть в справочник
по свойствам CSS и посмотреть там. Подключать свою интуицию в подобном случае бесполезно, может
и подвести.
Наследование позволяет задавать значения некоторых свойств единожды, определяя их для родителей
верхнего уровня. Допустим, требуется установить цвет и шрифт для основного текста. Достаточно
воспользоваться селектором BODY, добавить для него желаемые свойства, и цвет текста внутри абзацев
и других текстовых элементов поменяется автоматически (пример 1.66).
В данном примере рубленый шрифт и цвет текста абзацев устанавливается с помощью селектора BODY.
Благодаря наследованию уже нет нужды задавать цвет для каждого элемента документа в отдельности.
Однако бывают варианты, когда требуется все-таки изменить цвет для отдельного контейнера. В этом
случае придется переопределять нужные параметры явно, как показано в примере 1.67.
← Каскадирование CSS | Группирование → |
---|
Комментарии: