Подчеркивания и тире не видно

0

Я работаю с приложением Zend и приложением SocialEngine4:

#1_1_17-element {
  border: 1px solid #FF0000;
  height: 215px;
  width: 200px;
}

но это не влияет на ожидаемый элемент на странице.

Здесь пример селектора не работает.

  • 0
    Где HTML? Можете ли вы настроить рабочий пример на JSFiddle ?
  • 0
    Вот ссылка JSFiddle: jsfiddle.net/GokulSolace/F2jGs/2
Показать ещё 1 комментарий
Теги:

2 ответа

0
Лучший ответ

[UPDATED] Подчеркивание имен ID не рекомендуется и не поддерживается в CSS2:

... "CSS2, опубликованный в 1998 году, также запретил использование символов подчеркивания в именах классов и идентификаторов".

См. Ссылку: https://developer.mozilla.org/en-US/docs/Underscores_in_class_and_ID_Names

Я рекомендую вам переименовать его, возможно, что-то более похожее на это (без _):

#global-page-user-signup-fields form #a1-1-17-element {
  border: 1px solid #FF0000;
  height: 215px;
  width: 200px;
}
1

Урбз имеет интересный ответ. Независимо от того, насколько они технически разрешены или нет, подчеркивания и дефисы обычно используются в классах CSS и в живой памяти, у меня никогда не было проблемы с этим. Например, разумно популярный шаблон BEM позволяет использовать символы подчеркивания и дефисы для описания семантических структур в классах CSS.

Идентификаторы являются более ограничительными. Как объясняет Матиас Биненс в этой замечательной статье, спецификация HTML до 4.01 требует, чтобы идентификаторы начинались с буквы (а не числа, как вы сейчас используете), - и у меня была эта проблема в прошлом. HTML5 удалил это произвольное ограничение.

Как вы можете видеть в этой скрипке, добавление письма к ID (в HTML и CSS) делает стили работы:

#1_1_17-element { /* won't work */ }
#e1_1_17-element { /* will work */ }
  • 0
    Я согласен с вами, но я думаю, что шаблон отсутствия имен ID или имен классов с подчеркиванием должен следовать последовательно, чтобы вы надеялись избежать возникающих проблем, как указано выше.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню