Как стать автором
Обновить

Комментарии 39

Эрик А. Мейер «CSS-каскадные таблицы стилей. Подробное руководство», Глава 1
спасибо основой послужила другая книжка после которой у меня остались некотоыре вопросы. скачаю прочитаю отпишусь по впечатлениям :)
Зачем в начале 8 чисел, если используется всего 3?
Стало модно писать километровые статьи на элементарные темы, при этом даже не особо в них разбираясь.
потому и пишу — чтобы разобраться, и понять. если гдето накосячил дайте знать пожалуйста :)
Интересно, а какой вес по Вашей схеме имеют унаследованные стили?
Или вы меня непоняли или я вас :) я не писал ничего про наследование стилей( хотя полагаю что любой явно заданый стиль имеет приоритет перед унаследованным ) здесь я попытался написать всё, но только про вчисление веса селекторов.
«Да, вы все верно поняли. Css селектор плевать хотел на все эти ваши изыски типа пробелов или «>».»

У меня было много раз, когда это:
.test > .a {
style: foo;
}
.test .a {
style: foo2;
}
не работало (пока во втором не добавляешь >). Вы уверены, что селекторы знак ">" не учитывают?
А все что вы написали актуально для всех браузеров?
То что описал автор описано в стандарте CSS:
www.w3.org/TR/CSS2/cascade.html
так что браузеры должны прислушиваться к этому.
Я не спорю, что должны. Но так ли это? По крайней мере, в IE 7-8.
НЛО прилетело и опубликовало эту надпись здесь
>Селекторы по атрибуту в ie8 не работают.

И в IE8 и в IE7 селекторы работают по атрибуту.
input[type=«submit»]{color:red;}// IE7+
input[type="submit"]{color:red;}// IE7+ 
>> Но так ли это?
А вот это интересный. Мне тоже это интересно.
НЛО прилетело и опубликовало эту надпись здесь
Запросто:
Надо добавить инлайн, даже не знаю кто там будет в роли инлайна выступать. + импортант.
Я запомнил это так:
тег — единицы
класс — десятки
id — сотни
В результате получается:

html div #test1 .test2 #test3 = 212
#test1 #test2 #test3 = 300 (этот и будет применен)

Как прекрасно, что БЭМ позволяет почти не задумываться о таких неинтуитивных вещах :)
Это нужно знать когда пытаешься переопределить стиль, а он не срабатывает =) В свое время я тоже ломал голову почему мой класс не применялся jsfiddle.net/Fv5K8/
В БЭМ нет каскада, а значит не надо ломать голову над переопределением стилей. Всегда применяется последнее правило.
Это неправильное отношение к вещам: я эту часть вещей не использую, поэтому знать их не буду. В пхп не пишу классами, значит ооп учить не буду, в JS использую только jQuery значит нативный JS учить не буду, итд.
Это базовые понятия цсс и знать их обязан человек который работает с цсс, эти базисы описаны в каждой книге по цсс в первых главах.
Не всю же жизнь работать с БЭМ? Придет время и «я с этим не работал поэтому не знаю» не прокатит, особенно когда имеются ввиду самые основы.
Вообще-то, я не о том, что этого знать не нужно, а о том, что «как хорошо, что этим замысловатым каскадом можно не пользоваться благодаря методологии БЭМ».
БЭМ — частный случай работы только с классами. В любом случае иногда удобно делать иерархию. При чем я не могу сказать что каскады — неинтуитивные. В паскале присоить значение переменной — := это не интуитивно только тем кто этого не знает. Если писать акуратно, то каскады будут так же понятны и интуитивны как и БЭМ, а по глупости можно и в БЭМ делов натворить таких что черт ногу сломит.
Хм. Всегда придерживался такого правила: «Разработчики стандартов скорее всего не идиоты и придерживаются логики и здравого смысла. Я тоже не идиот и поэтому буду придерживаться логики и здравого смысла, который заключается в том, что [b]чем точнее(подробней) или ближе(`физически`) описание к самому элементу, находящемуся в рамках определенной последовательности, при прочих равных — тем правило тяжелее[/b]».
Ну, вообщем, проблем не возникало. Хотя допускаю, что логика может быть несколько нарушена, если человек часто работает с какими нибудь не очень то «логичными» вещами, и у него выработались определенные правила, то вполне логично может выглядеть и другой взгляд. И поэтому, статья скорее годная чем наоборот)
Не вижу повода для скептики, уважаемые гуру.
Эти вещи в спецификациях описаны, да и опытным путём выясняются запросто после нескольких «Какого чёрта эта #%^$ не работает ?»
Неужели каскадирование и специфичность — это страшные тайны?) Кстати, автор забыл указать про весомость селекторов из стилей автора, стилей пользователя и браузерных стилей. Там есть довольно интересные грабли относительно !important.
с этим я просто не сталкивался, хотя это наверно интересно да. а вот например то что селектор задающий стили всем потомкам какогонибудь айдишника(id1) весомее селектора напрямую выбирающего айдишник(id2) одного из этих потомков — не всегда кажется таким уж очевидным :)) или пока не проверил я не знал что весомее .class1.class2 или .class1(пробел).class3 — пока не проверил :) так что некоторые вещи для меня были дейтсвительно тайной и даже пишут о них совсем не часто :))
Спасибо огромное! Учту.
<irony>Порно у Вас красное :-)</irony>
ты забыл про псевдоклассы типа :active и :hover
Если сейчас добрая половина постов этом блоге повергает меня в ужас и отчаянье, и заставляет думать, что за полтора года я безнадежно отстала от верстки и возвращение будет стоить немалых усилий; то преподносимый как откровение пересказ куска спецификации прямо возвращает веру в себя и настраивает на позитивный лад.
А я-то испугалась, что за восемь позиций? А всё так банально.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации