#css
#css
Вопрос:
У меня есть идентификаторы DIV в приложении, которые генерируются динамически, с идентификатором в конце. Например: <div id="vote_score_72">
, <div id="vote_score_73">
, <div id="vote_score_74">
и так далее.
Как я могу записать этот идентификатор в файл CSS, чтобы применить к нему стиль?
Комментарии:
1. Нужно ли им делать разные вещи для разных идентификаторов?
2. Как и любой другой идентификатор, со знаком
#
. … Не могли бы вы, пожалуйста, рассказать нам, что вы на самом деле пытаетесь сделать? Если это делается с помощью JavaScript, гораздо лучше иметь класс для стилей, общий для всех них, а затем использоватьstyle
свойство для применения стилей, специфичных для элемента. Если все они имеют одинаковые стили, используйте классы (Google «Классы CSS») вместо этого.3. @ceejayoz нет, то же самое. Это приложение Ruby on Rails, которое показывает разные истории на одной странице. У каждой истории есть оценка, и оценка заключена в DIV с идентификатором истории в конце.
Ответ №1:
В дополнение к предложению о том, что вы должны использовать классы для этой функциональности (и вы должны), вы можете вместо этого использовать селектор attribute-value-begins-with (это может быть не официальное название):
div[id^=vote_score] {
color: #f00;
/* and so on... */
}
Отредактировано, чтобы добавить ссылку на Quirksmode.org Таблицы совместимости для расширенных селекторов атрибутов.
Ссылки:
Ответ №2:
Вы должны добавить общий класс ко всем этим элементам и использовать этот класс в вашем CSS.
Классы — лучший способ обработки общего стиля для разных элементов.
Комментарии:
1. Понятно, допустим, я меняю идентификатор для класса. Как бы мне записать имя класса в файл CSS? Нравится
.classname_changingnumber
2. Вы можете называть имя класса как угодно, хотя выбор имени, соответствующего содержимому / назначению
div
, имел бы смысл.3. @FelipeCerda: нет, имя класса должно быть уникальным для всех элементов, которые вы хотите стилизовать. Затем вы можете ссылаться на это имя класса в вашем CSS