Подтвердить что ты не робот

Селектор CSS с периодом в ID

Спецификация 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, чтобы упростить вещи, но это системный идентификатор, поэтому у меня нет возможности изменить его в этом случае.)

4b9b3361

Ответ 1

Классический. Сразу после прохождения всех спецификаций, которые пишут вопрос, я прочитал его еще и обнаружил, что есть escape-символ. Я никогда не нуждался в этом раньше, но спецификация CSS позволяет обратную косую черту (\) экранировать, как и большинство языков. Что вы знаете?

Итак, в моем примере следующее правило будет соответствовать:

#some\.id { color: #f00; }