Пример 18.1. Наследование параметров цвета



HTML5CSS 2.1IECrOpSaFx

<!DOCTYPE HTML>

<html>

 <head>

<meta charset="utf-8">

<title>Наследование</title>

<style>

TABLE {

color: red; /* Цвет текста */

background: #333; /* Цвет фона таблицы */

border: 2px solid red; /* Красная рамка вокруг таблицы */

}

</style>

 </head>

 <body>

<table cellpadding="4" cellspacing="0">

<tr>

<td>Ячейка 1</td><td>Ячейка 2</td>

</tr>

<tr>

<td>Ячейка 3</td><td>Ячейка 4</td>

</tr>

</table>

 </body>

 

</html>

 

В данном примере для всей таблицы установлен красный цвет текста, поэтому в ячейках он также применяется, поскольку тег <td> наследует свойства тега <table>. При этом следует понимать, что не все стилевые свойства наследуются. Так, border задаёт рамку вокруг таблицы в целом, но никак не вокруг ячеек. Аналогично не наследуется значение свойства background. Тогда почему цвет фона у ячеек в данном примере тёмный, раз он не наследуется? Дело в том, что у свойства background в качестве значения по умолчанию выступает transparent, т. е. прозрачность. Таким образом цвет фона родительского элемента «проглядывает» сквозь дочерний элемент.

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

Наследование позволяет задавать значения некоторых свойств единожды, определяя их для родителей верхнего уровня. Допустим, требуется установить цвет и шрифт для основного текста. Достаточно воспользоваться селектором BODY, добавить для него желаемые свойства, и цвет текста внутри абзацев и других текстовых элементов поменяется автоматически (пример 18.2).

Пример 18.2. Параметры текста для всей веб-страницы

HTML5CSS 2.1IECrOpSaFx

<!DOCTYPE HTML>

<html>

 <head>

<meta charset="utf-8">

<title>Наследование</title>

<style>

BODY {

font-family: Arial, Helvetica, sans-serif; /* Гарнитура шрифта */

color: navy; /* Синий цвет текста */

}

</style>

 </head>

 <body>

<p>Цвет текста этого абзаца синий.</p>

 </body>

 

</html>

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

Ниже приведены приоритеты браузеров, которыми они руководствуются при обработке стилевых правил. Чем выше в списке находится пункт, тем ниже его приоритет, и наоборот.

1. Стиль браузера.

2. Стиль автора.

3. Стиль пользователя.

4. Стиль автора с добавлением !important.

5. Стиль пользователя с добавлением !important.

Самым низким приоритетом обладает стиль браузера — оформление, которое по умолчанию применяется к элементам веб-страницы браузером. Это оформление можно увидеть в случае «голого» HTML, когда к документу не добавляется никаких стилей.

 


Дата добавления: 2018-05-31; просмотров: 131; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!