Возможно, этот вопрос задан в другом месте, но я не могу его найти. Когда модули HTML5 и CSS3 приближаются, я заинтересован в обсуждении того, как мы пишем CSS.Семантика CSS; выбор элементов напрямую или по заказу
Что-то like this, где выбор осуществляется с помощью порядка элементов, а псевдоклассы особенно увлекательны. Большим преимуществом этого метода является полная модуляция HTML и CSS для упрощения настроек и редизайнов.
В то же время семантические идентификаторы и классы кажутся полезными по разным причинам. В частности, прямые ссылки, JS-таргетинг и более короткие CSS-селектора. Кроме того, похоже, что длина селектора может быть проблемой. Например, я написал следующее, что было бы проще, по общему признанию, используя некоторые семантические элементы HTML5:
body>div:nth-child(2)>div:nth-child(2)>ul:nth-child(2)>li:last-child
Так что вы скажете, переполнение стека? Является ли будущее написания CSS ориентированным на порядок элементов и псевдоклассы? Или идентификаторы и классы и текущие пути здесь?
(Я хорошо знаю, что идентификаторы и классы имеют свое место, хотя я хочу, чтобы узнать больше, как вы думаете, они будут по-прежнему необходимы. Я не хочу искажать это или создавать его как «Являются ли псевдо-классы идентификаторами убийц?» Дискуссия, в которой меня интересует, - это большая картина и способы изменения CSS.)
Отличная точка, и мой пример был, безусловно, более образцом того, как ** не ** делать что-то. n-й ребенок кажется особенно проблематичным, тем более, что вы ищете целевые элементы по определенному местоположению, а не по формуле или «нечетные» и «четные». Этот пример в стороне, вы бы придерживались той же позиции, что и кто-то, пишущий гораздо более ловко, чем я? В частности, связанный пример? http://camendesign.com/design/ –
Я пойду дальше и отметю это как ответ, потому что вы предоставили отличный контрапункт моему предложению. Я надеялся на большее обсуждение от других, но большое спасибо за ваш вклад! –