Использование идентификатора селектора с другими селекторами - PullRequest
4 голосов
/ 15 июня 2011

Я хочу знать, что означает следующий CSS?

.twoCol #sidebar

Разве #sidebar не достаточно одного? Что на самом деле выбирает эта строка CSS?

Ответы [ 3 ]

3 голосов
/ 15 июня 2011

Это доступ к элементу с идентификатором sidebar внутри любого элемента, который использует класс twoCol.

#sidebar на самом деле достаточно , поскольку это идентификатор, но это немного более семантически правильно.

1 голос
/ 15 июня 2011

Демиан и тридцатка в значительной степени верны, но это имеет условное использование:

Если у вас есть несколько шаблонов, и иногда #sidebar встречается в .twoCol, но иногда это происходит где-то еще - вы можете настроить таргетинг на этот конкретный шаблон, не включая другой файл CSS.

В этом случае имеет больше смысла назначать класс для <html>, <body> или оболочки шаблона, но я просто подумал, что не буду строго бесполезным.

1 голос
/ 15 июня 2011

Разве одного #sidebar недостаточно?

Да. id должен быть уникальным. (и будет, если вы не имеете дело с некачественным HTML)

Префикс .twoCol не является оптимальным, поскольку он добавляет избыточную информацию.

Это комично демонстрируется здесь: http://www.css -101.org / потомок-селектор / go_fetch_yourself.php

Более полная статья, не относящаяся к данному случаю, но, тем не менее, хорошая и релевантная.

http://css -tricks.com / эффективно-рендеринг CSS /

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...