dmlogv
@dmlogv
Универсальный человек

ID c хэшем (#)

Нарвался на такую штуку:

<div id="#id">

Так работает:
div[id="#id"] { border: 1px solid red }

Так нет:
div##id { border: 1px solid red }


Почему так происходит? Не то что бы мне принципиально — затолкать в идентификатор дополнительный хэш, но все же интересно, почему всё так. Я, конечно, нарушил стандарт. Но почему тогда срабатывает второй вариант?
  • Вопрос задан
  • 2927 просмотров
Решения вопроса 1
MTonly
@MTonly
Веб-разработчик с 2002 года
Спецсимволы следует экранировать с помощью символа \:

div#\#id {border: 1px solid red; }
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
[name=value] — тупой поиск по значению аттрибута. Туда хоть символ BEER MUG засунь, все равно должен найти.
А div##id это уже инвалидная конструкция языка css.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы