| Наследование — это прием, с помощью которого CSS-свойства, относящиеся к одному тегу веб-страницы, распространяются и на вложенные теги. Например, всегда находится внутри . Так, атрибуты, применяемые к , наследуются . Допустим, вы создали CSS-стиль для , который устанавливает атрибут color (например, темно-красный цвет). Производные теги, являющиеся потомками , то есть теги, расположенные внутри него, наследуют атрибут. Это означает, что любой текст, заключенный в , , , будет отображен тем же самым темно-красным цветом. Механизм наследования — многоуровневый, то есть его эффект не только распространяется на прямых потомков (дочерние элементы), но и переносится на все вложенные элементы. Если, например, и расположены внутри , то также унаследуют атрибуты любого стиля, применяемого к . Вы можете использовать преимущества механизма наследования в своих интересах для того, чтобы упростить и ускорить написание таблиц стилей. Предположим, вы хотите отобразить весь текст веб-страницы одинаковым шрифтом. Вместо того чтобы создавать стили для каждого тега, просто создайте один для (или создайте класс и примените его). Определите нужный шрифт, и все теги веб-страницы унаследуют его: body { font-family: Arial, Helvetica, sans-serif; } Вы также можете использовать наследование для применения стилевых атрибутов к целому разделу веб-страницы. Например, вы можете применять, как и большинство дизайнеров, тег для определения таких фрагментов, как шапка, навигационное меню, нижняя часть страницы, или, если вы используете элементы HTML5, можно задействовать один из новых элементов деления на разделы, например , , или . Применяя стиль к внешнему тегу, вы выделяете специфические CSS-свойства для всех вложенных тегов, находящихся внутри данного раздела веб-страницы. Чтобы весь текст в навигационном меню был отображен тем же самым цветом, можно создать стиль и применить его к , , или к другим элементам деления на разделы. Все теги, заключенные внутри, в том числе , и т. д., унаследуют этот цвет шрифта. Ограничения наследования Механизм наследования неидеален. Многие CSS-свойства вообще не наследуются, например border (позволяющий оформить в рамку элемент веб-страницы). Однако если бы наследование применялось к этому свойству, то все теги, вложенные в элемент, были бы одинаковы. Например, если бы вы добавили рамку к , то она была бы во всех маркированных списках (в каждом пункте, подпункте и т. д.) Ниже описаны конкретные случаи, когда наследование точно не применяется. Как правило, свойства, которые затрагивают размещение элементов на странице (отступы (поля), границы (рамки) элементов), не наследуются. Браузеры используют собственные встроенные стили для форматирования различных тегов. Заголовки обычно отображаются крупным полужирным шрифтом, ссылки — синим цветом и т. д. Даже если определен конкретный размер кегля для текстового содержимого веб-страницы и применен к , заголовки будут отображены большим по размеру шрифтом. Теги будут крупнее . Точно так же, когда вы устанавливаете цвет применительно к , гиперссылки веб-страницы все равно будут показаны синим цветом с подчеркиванием. Очень полезно устранять встроенные стили браузеров — это упростит создание сайтов, совместимых с различными типами браузеров. Если возникает конфликт, то побеждает более явно определенный стиль. Другими словами, когда вы применяете CSS- свойство к элементу веб-страницы (например, устанавливаете размер шрифта для маркированного списка) и оно конфликтует с наследуемым (например, размером шрифта ), то браузер использует явно описанное свойство, более близко относящееся к стилизуемому элементу (в данном случае применяется размер шрифта, определенный для |