Pull to refresh

Comments 47

UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here
Причём у меня это работает только если эти 256 классов заданы одним блоком:
.c000 /*...*/ .c255 {
  background: red;
}


Если хотя бы один класс из блока — уже не работает:
.c000 /*...*/ .c254 {
  background: red;
}

.c255 {
  background: red;
}


Браузер: 21-й Хром
UFO just landed and posted this here
это вполне ожидаемое поведение
В первом случае описывается класс c255, вложенный в множество других классов именно в определенной очередности, а во втором вы задали цвет любому элементу с классом с255, даже не вложенному в эти классы.
Спасибо за разъясненение. Я написал глупость :)

Хотя всё равно остаётся вопрос: получается что к div-у вообще ни один из классов не применим, так как они определены в контекстном селекторе. Почему тогда это работает? Или в этом и кроется «магия»?
UFO just landed and posted this here
А это влияет? Разве тогда они не запятыми должны быть разделены?
Понял, опять написал глупость :)
Это предназначалось комментатору на уровень выше.
Значит, действительно, прав тот, у кого большинство голосов…
«Специально привезенные на программисты дописывали css..»
нет, правда, приведите хоть один реальны пример использования
Речь ведь не об использовании, а просто о том, что было сделано любопытное наблюдение…
UFO just landed and posted this here
UFO just landed and posted this here
я так полагаю, рассматривается случай, когда !important уже использован?
UFO just landed and posted this here
Я видел эту новость на ycombinator.com
Полез в стандарт и нашел, что необязательно надо 256 различных классов. Можно использовать один и тот же.

.c000.c000.c000.c000.c000.c000... {
   background: red;
}
кстати в IE9 тоже работает
UFO just landed and posted this here
UFO just landed and posted this here
Действительно, это уже нормальный Fx+Webkit+ie хак:
<style>
#id {
  background: blue;
}
.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c {
  background: red;
}
div {
  height: 100px;
  width: 100px
}</style>
​<div id="id" class="c"><div>​
И это работает.
Пример: codepen.io/anon/pen/yAbci
Да это же CSS-хак для определения Оперы!
UFO just landed and posted this here
А что, раньше их не было что ли? Вот «Опера» 9.50+:
x:-o-prefocus, .opera {
  background: red;
}
UFO just landed and posted this here
CSS3:
9. Calculating a selector's specificity

Note: Repeated occurrances of the same simple selector are allowed and do increase specificity.
UFO just landed and posted this here
Уже в предвкушении новых адских конструкций…
ВЕРСТКА ОПАСНОСТЕ!!!!!!111
Напомнило прикол про лимит в 128 вложенных if. Программист жаловался, что компилятор игнорировал дальнейшие условия и пришлось использовать switch :)
кто-то пробовал c Оперой? У меня квадрат все время синий, может где-то ошибся.
UFO just landed and posted this here
ну так я и сделал 65536 классов для теста оперы, а квадрат все равно синий
Пересчитайте, может не хватает парочки? :)
UFO just landed and posted this here
Я когда читал спеку и книгу Мейера, увидев там 0001, 0010, 0100 и т.д — был уверен что расчёт идет в binary, ну это же настолько логично, что предполагается сразу! Тем более что подобные расчёты веса используются во многих других случаях и областях.
Sign up to leave a comment.

Articles