![]() |
||
|
aranea.ru || Спецификация CSS2 | 5.9. Селекторы ID.
5.9. Селекторы ID.Языки документов могут содержать атрибуты, которые объявляются как ID тип. Атрибут типа ID - особенный, поскольку не может быть два таких атрибута с одним и тем же значением; не зависимо от языка, атрибут ID может использоваться только для уникального определения одного элемента. В HTML все атрибуты ID называются "id"; XML-приложения могут называть атрибут ID по-разному, но применяется то же ограничение. Атрибут ID языка документа позволяет авторам присвоить идентификатор для одного случая элемента в дереве документа. Селектор ID в CSS согласуется с элементом, основанном на этом идентификаторе. Селектор ID в CSS содержит символ "#" с последующим значением ID. Следующий селектор ID согласуется с элементом Н1, атрибут ID которого имеет значение "chapter1": H1#chapter1 { text-align: center } В следующем примере, стилевое правило согласуется с элементом, у которого ID имеет значение "z98y". Правило таким образом согласуется с элементом Р: <HEAD> <TITLE>Match P</TITLE> <STYLE type="text/css"> *#z98y { letter-spacing: 0.3em } </STYLE> </HEAD> <BODY> <P id=z98y>Wide text</P> </BODY> В следующем примере, однако, стилевое правило будет согласовываться только с элементом Н1, у которого ID имеет значение "z98y". <HEAD> <TITLE>Match H1 only</TITLE> <STYLE type="text/css"> H1#z98y { letter-spacing: 0.5em } </STYLE> </HEAD> <BODY> <P id=z98y>Wide text</P> </BODY> Селекторы ID имеют наибольшее старшинство по сравнению с селекторами атрибутов. Например, в HTML селектор #p123 является более специфичным, чем [ID=p123] в терминологии каскадирования. Обратите внимание. В XML 1.0 информация о том, какой атрибут содержит ID элемента, находится в файле DTD. Когда проводится синтаксический анализ XML, устройства вывода не всегда читают DTD, и таким образом не могут знать значение ID элемента. Если дизайнер стилевых таблиц знает или подозревает, что этот случай может иметь место, ему следует использовать нормальные селекторы атрибутов: [name=p371] вместо #p371. Однако, порядок каскадирования нормальных селекторов атрибутов отличается от селекторов ID. Возможно, необходимо добавить приоритет "!important" для объявления: [name=p371]{color: red ! important}. Конечно, элементы в документе XML 1.0 без DTD вообще не имеют ID. |