Семантика CSS;выбор элементов напрямую или через заказ - PullRequest
1 голос
/ 22 марта 2010

Возможно, этот вопрос задавался в другом месте, но я не могу его найти. С приближением модулей HTML5 и CSS3 меня интересует, как мы пишем CSS.

Что-то , подобное этому , где выбор выполняется с помощью порядка элементов, а псевдоклассы особенно интересны. Большим преимуществом этого метода, по-видимому, является полная модульность HTML и CSS для упрощения настроек и редизайнов.

В то же время семантические идентификаторы и классы кажутся выгодными по разным причинам. В частности, прямые ссылки, JS-таргетинг и короткие CSS-селекторы. Кроме того, кажется, длина селектора может быть проблемой. Например, я только что написал следующее, что было бы проще сделать с использованием некоторых семантических элементов HTML5:

body>div:nth-child(2)>div:nth-child(2)>ul:nth-child(2)>li:last-child

Так что вы скажете, переполнение стека? Сосредоточено ли будущее на написании CSS на порядке элементов и псевдоклассах? Или идентификаторы и классы и существующие способы здесь остаться?

(Мне хорошо известно, что идентификаторы и классы имеют свое место, хотя мне интересно узнать больше о том, как вы думаете, они по-прежнему будут необходимы. пометьте его как «Являются ли псевдоклассы идентификаторами-убийцами?». Меня интересует обсуждение, которое включает в себя более широкую картину, и способы написания CSS меняются.

1 Ответ

3 голосов
/ 22 марта 2010

Я думаю, что это нечитаемая мерзость, которая загадочным образом перестанет работать при изменении HTML.

Селекторы на основе заказов полностью не документируются.
Если кто-то другой возьмет на себя управление проектом, и HTML-код изменится, он не будет знать, какой селектор должен выбрать, и ему будет сложно исправить его.

Это особенно важно, если автоматически генерируется какая-либо часть HTML.

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