Pull to refresh

Comments 51

Первый рабочий проект CSS 2.1 появился, когда мне исполнилось 11 лет. Наконец-то я дождался!
я 13 лет ждал эту спецификацию:)
Какие изменения по сравнению с прошлыми версиями?
Я считал что спецификация 2.1 уже давно утверждена так как даже осел ее поддерживает.
Все же хотелось чтобы развитие шло в торону css3.
Поддержка в браузерах и официальное утверждение — два связанных, но параллельных процесса. Более того, спецификация не может достичь статуса рекомментадции, если у нее нет полной реализации, а лучше более одной — независимых и совместимых.
Формальное и ничего не значащее, в общем, событие. ;-)
Согласен, но все-таки это, как завершение некого этапа. Надеюсь, теперь все силы будут брошены на CSS3.
А я надеюсь, что в рабочую группу CSS на помощь теоретикам придут, наконец, практики, которые будут понимать, зачем веб-разработчикам необходимы такие вещи, как background-position-x/y, возможность переопределения отдельного слоя при использовании множественных фоновых изображений, наследование классов, объединение селекторов без необходимости бесконечного дублирования при перечислении селекторов через запятую и проч.
Апплодирую стоя! Марат готов прямо здесь поставить +1 за твое выдвижение в CSS Working Group! Я серьезно!
Разработчики уже по возможности используют SCSS sass-lang.com/ для наследования, вычислений и всяких там группировок. Про background-position-x/y немного не понял, зачем оно…
Саша, не знаю, может я конечно скептик, но считаю какими-то искусственными такие вещи, как SASS.

Позиция нужна, когда теперь надо закрепить фон в 10px от правого края, сейчас это реализуется только удлинением картинки с прозрачным фоном или фоном подложки. Это первое, что пришло в голову.
Да, в этом случае понадобится. Эх, давно я резиновую вёрстку забросил. Разбаловался всегда известной шириной.
А мы, честно говоря, и рисовать резиновые сайты практически перестали. Потому и верстки такой тоже меньше.
Этого тоже сильно не хватает, хотя я имел в виду другое.
Между прочим, мне только вчера потребовалось. Было обидно обнаружить, что этого сделать нельзя.
Нестандартным синтаксисам (помимо необходимости использования дополнительной серверной программной прослойки) не хватает широкой поддержки со стороны редакторов кода.

background-position-x/y — чтобы задать общее для нескольких элементов правило с единым фоновым изображением, а затем переопределить для каждого из элементов только одну координату без необходимости дублирования другой координаты, одинаковой для всех элементов из набора.

Например:
.example LI {background: url(example.png) 5px 0 no-repeat; }
.example LI.lorem {background-position-y: -20px; } /* background-position: 5px -20px */
.example LI.ipsum {background-position-y: -40px; } /* background-position: 5px -40px */


Другие примеры см. в баг-репорте на bugzilla.mozilla.org.
Да есть она, поддержка. Тот же SCSS отлично редактируется в WebStorm / PhpStorm. SCSS опять же, справится с задачей дублирования на ура.
Поддержку чего-то в одном редакторе едва ли можно назвать широкой поддержкой в редакторах. ;-)

Это и понятно — синтаксис нестандартный.
У меня создалось впечатление, что все ждут только круглые уголки да градиенты.
Так border-radius давно стал реальностью, в вот css gradient мне не разу не приходилось даже пробовать применять.
Кнопочки отлично стилизовать градиентами.
А зря, его поддержка (линейного градиента) браузерами точно такая же, как border-radius:

background:#d4d4d4; /* На всякий случай. Средний цвет. Можно картинку. Для оперы 11.00 и ниже */
background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#b2b2b2));
background: -moz-linear-gradient(top, #fff, #b2b2b2);
background: -o-linear-gradient(top, #fff, #b2b2b2); /* Опера 11.10+ */
background: linear-gradient(top, #fff, #b2b2b2); /* на будущее. Возможно уже вебкит */
-pie-background: linear-gradient(-90deg, #fff, #b2b2b2); /*PIE (все ИЕ)*/
behavior:url(../pie.htc); /* css3pie.com */
Применение непрефиксированных версий свойств из неокончательной (черновой) версии спецификации не вполне безопасно для будущих версий браузеров (не future-proof), поскольку синтаксис теоретически ещё может измениться.
Чего на практике еще не было. Припоминаню только с вебсокетами такую историю.

Но. Даже если вдруг такое случится, есть же 1ое свойство, где можно поставить картинку, если так хочется.
На практике менялся синтаксис даже самих градиентов.
Так или иначе, у нас есть:
1) страховка в виде картинки в 1ом свйостве
2) Браузеры наверняка это предусматривают и при виде префиксов используют устаявшийся синтаксис.

А как менялся синтаксис градиентов, не расскажите?
Точнее применял один раз в качестве эксперимента.
Уголки уже можно не ждать, они, в общем-то есть везде где надо. А где не надо — не критично.
Ах, хорошо!

Теперь бы ещё IE6 вымер — и стало бы совсем хорошо.
И IE7. Почему он z-index толком не понимает?
Понимает. просто у него свой z-index с hasLayout`ом и zoom`ами.
Может быть, Вы тогда знаете, как заставить в IE7 работать вот такой примерный код:

<div style="width: 200px; height: 100px; position: relative;">
	<div id="Parent1" style="width: 100%; height: 100%; background-color: pink; position: relative;">
		<div id="Child1" style="position: absolute; width: 50px; height: 20px; background-color: lightblue; z-index: 10;"></div>
	</div>
	<div id="Parent2" style="position: absolute; top: 0; width: 100px; height: 50px; background-color: lightgreen;"></div>
</div>


Закавыка в position: relative у Parent1. Все рекомендации, которые я нашёл, сводятся к предложению задать ему z-index — но тогда Parent2 окажется под ним, а должен быть между лежащим в основе Parent1 и выдвинутым на самый верх потомком оного Child1. Во всех браузерах так и есть, и в IE8 тоже — но не в IE7.
В данном случае: убрать вообще position: relative; у Parent1.
А вообще, нужно учитывать при проектировании слоёв, что у ие7 иерархический z-index.
Нельзя убрать, оно нужно из других, не имеющих к вопросу отношения, соображений.

«А вообще, нужно учитывать при проектировании слоёв…» — вот это я и имел в виду, говоря, что IE7 «z-index толком не понимает». Я знаю, что понимает, но разве это толком, если под него нужно специально извращать структуру? Это и вообще-то нехорошо, а в конкретном случае, на который я вчера нарвался, и совсем плохо, так как этот кусок разметки генерировался плагином.
Зависит от того кто что считает «толком», на что я и намекнул)
Что же, как не поддержку стандарта? 8-)
Тогда у IE7 толком не работают даже блоки.
2% думаю, давно пора игнорить. Осенью доля ИЕ7 станет ниже 5%, и мы и от него откажемся.
С IE7 чуть сложнее — следует учитывать суммарную долю IE6 и IE7.
Согласен. Тутт вообще конечно от проекта и его ЦА зависит все. Но по дефолту, имхо, можно начинать игнорить обоих, если иное не требует заказчик или ЦА.
Sign up to leave a comment.

Articles