Спецификация HTML позволяет использовать периоды (.) в id:
<img id="some.id" />
Однако использование правила выбора идентификатора CSS не будет правильно соответствовать:
#some.id { color: #f00; }
Спецификация CSS для ID Selectors не упоминает этот случай. Поэтому я предполагаю, что он использует комбинацию имени тега и селектор классов? Например, правило CSS для a.className
применимо ко всем тэгам привязки (<a>
) с именем класса className
, например <a class="className"></a>
.
Возможно ли иметь внешнее правило CSS файла, которое ссылается на элемент HTML по его идентификатору, имеющему период в нем?
Я не ожидаю, потому что спецификация CSS указывает, что CSS identifier" не включает период как действительный символ. Так это фундаментальное несоответствие между спецификациями HTML и CSS? Является ли моя единственная альтернатива использованию другого типа выбора CSS? Может ли кто-нибудь умнее, чем я подтверждаю или отрицаю это?
(Я бы удалил период из атрибута id HTML, чтобы упростить вещи, но это системный идентификатор, поэтому у меня нет возможности изменить его в этом случае.)