CSS. Каскадные таблицы стилей. Подробное руководство.Символ-Плюс 2008

Печать

Internet Explorer до версии IE7 для обеих платформ не всегда правильно обрабатывает множественные селекторы классов. В более старых версиях вполне возможно выбирать из списка одно имя класса, но выбор на основании нескольких имен выполняется неправильно. Таким образом, p. warning работает, как и ожидается, а вот p. warning, help выбирает только те элементы р, в атрибуте class которых имеется слово help, потому что оно идет последним в селекторе. Если бы вы написали p.help.warning, в более старой версии Internet Explorer выбирались бы все элементы р с атрибутом class, имеющим значение warning, независимо от присутствия help в этом значении.

Селекторы идентификаторов

В некотором смысле селекторы идентификаторов аналогичны селекто^ рам классов, но есть несколько существенных отличий. Во-первых, перед селекторами идентификаторов вместо точки ставится «решетка» (#), называемая также знаком фунта, диезом и даже полем для игры в крестики-нолик и. Таким образом, возможно и такое правило:

*#first-para {font-weight:bold;}

Оно устанавливает полужирный шрифт для любого элемента, атрибут id которого имеет значение first-para.

Второе отличие - вместо значений атрибута class в селекторах идентификаторов, что и не удивительно, используются значения атрибутов id. Вот пример селектора идентификатора в действии:

*#lead-para {font-weight:bold;}

<р id="lead-para">3T0T параграф будет выделен полужирным шрифтом.</р> <р> Этот параграф НЕ будет выделен полужирным шрифтом.</р>

Обратите внимание, что значение lead-para можно было бы присвоить любому элементу документа. В этом конкретном случае оно присваивается первому абзацу, но его можно легко применить и ко второму, и к третьему абзацу -

Как и в селекторах класса, в селекторе идентификатора можно опустить универсальный селектор. В предыдущем примере можно было бы написать:

#lead-para {font-weight:bold;}

Результат не изменился бы.

Выбор между селектором классов и селектором идентификаторов

Как было показано ранее, назначать классы можно любому количеству элементов; имя класса wa rni ng было применено и к элементу р, и к элементу span и могло бы применяться к намного большему количеству элементов. С другой стороны, идентификаторы в HTML-документе не