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

Класс или идентификатор на теге тела

В последнее время я применяю идентификатор тега body моих HTML-документов чтобы увеличить управление CSS (# 9). Недавно мне пришло в голову, что я могу сделать то же самое, применив класс к тегу body. Я хочу знать положительные и отрицательные стороны каждого выбора. Если у меня есть несколько страниц, где тег body имеет одинаковый идентификатор, лучше ли использовать класс? Как вы думаете? Почему?

UPDATE: класс /ID - это в основном то, что я намереваюсь использовать для определения таблицы стилей, на страницу или тип страницы которой применяется стильная таблица. Например, это главная страница, страница контактов, одна из многих страниц результатов поиска, страница архива и т.д.?

4b9b3361

Ответ 1

Использование класса вполне приемлемо, возможно, больше, чем использование id. Использование идентификаторов должно быть ограничено как можно больше, потому что они могут столкнуться с другими идентификаторами и разбивать такие вещи, как document.getElementById.

Селектор id более специфичен, чем селектор классов, который обычно делает его лучшим выбором для вашего варианта использования. - Дэвид Дорвард

Однако высокая "специфичность" не всегда желательна. Рассмотрим body#faq #col_b a {color:gray;} в главной таблице стилей, а затем кто-то разработает плагин с серым фоном, который идет на странице faq, теперь им нужно использовать !important или создать другой атрибут id, чтобы получить более высокую специфичность.

Также рассмотрим использование нескольких классов в одном элементе body:

<body class="faq two_column big_footer"> ...

Ответ 2

Селектор id больше specific, чем селектор классов, что обычно делает его лучшим выбором для вашего варианта использования.

Ответ 3

Идентификатор должен быть уникальным для каждой страницы (если вы хотите иметь действительную разметку), то есть на странице должен существовать только один экземпляр определенного идентификатора.

Классы, с другой стороны, могут применяться к многочисленным элементам на странице. Используйте классы для вещей, которые повторно используют одни и те же стили и используют идентификаторы для более уникальных элементов, которые требуют собственного стиля.

В идеале используйте классы по возможности и ограничивайте использование идентификаторов.

Для получения дополнительной информации о ID см. здесь и более подробно о классах, см. .

Ответ 4

Лучше использовать класс, если вы планируете повторно использовать стиль на страницах. Идентификаторы хороши, если таблица стилей предназначена для конкретной страницы. Но все равно зависит от вашего приложения.

Ответ 5

Вы можете (читать: следует) использовать только идентификатор тега body.

ID = одноразовое использование на странице

Класс = несколько применений

1 Тег body = 1 id тега. Это может быть одинаково на разных страницах. По сути, использование тега класса, вероятно, слишком велико для этой цели.

Ответ 6

В HTML5 атрибут id может использоваться для любого элемента HTML (он будет проверять на любом элементе HTML, но это не обязательно полезно).

В HTML 4.01 атрибут id не может использоваться с: <base>, <head>, <html>, <meta>, <param>, <script>, <style>, and <title>.

Примечание. HTML 4.01 имеет большие ограничения на содержимое значений id (например, в HTML 4.01 значения id не могут начинаться с числа).

Источник: W3School