Обновить
113.91

CSS *

Каскадные таблицы стилей

Сначала показывать
Порог рейтинга
Уровень сложности

Высокохудожественные картинки на CSS

Время на прочтение1 мин
Количество просмотров4.4K
raindropВдохновленный логотипом Opera, сделанный Дэвидом Дисандро (David Desandro) с помощью CSS, Шон Мартел (Sean Martell) сделал логотип Mozilla Labs Raindrop, о котором писали и на хабре, правда не очень много.
Читать дальше →

Unlimited IE one-time CSS expressions

Время на прочтение3 мин
Количество просмотров1.5K
В поддержку дней CSS expressions на хабре

Думаю все, кто сталкивался с решением каких-нибудь проблем в IE<8 знает про CSS expressions и про «одноразовые» CSS expressions, которые применяются к элементу только один раз, тем самым не создавая постоянной нагрузки на процессор. Обычно это решается так:
.my-class {
    behavior: expression(someMagick(), runtimeStyle.behavior = 'none');
}
А что, если хочется использовать больше свойств?

CSS-Expressions on DOMReady (CSS+JS в одном файле)

Время на прочтение3 мин
Количество просмотров1.9K
Вероятно, многие из вас используя css-expressions сталкивались с проблемой периодического появления сообщения abort. В народе поговаривают, что связано это с изменением DOM-дерева до его готовности.

Я тоже сталкивался и, не долго думая, решил написать небольшую «обертку» для expression’ов, которые я часто использую, учитывающую готовность DOM, упакованную в файл стилей.
Оную вашему вниманию и представляю.

Читать дальше

CSSDoc — формат комментариев для CSS

Время на прочтение3 мин
Количество просмотров12K
Уже неоднократно видел утверждение, что CSS необходимо комментировать, чтобы потом было проще сориентироваться себе или тому, кто также поддерживает или будет в дальнейшем поддерживать ваш код. Но почему-то никто не предлагает использовать какой-то универсальный формат комментариев, который был бы понятен всем, хотя в программировании такое используется повсеместно: JavaDoc, JSDoc, PHPDoc и т.п.

Несложно догадаться, что рано или поздно кто-нибудь бы захотел использовать подобный формат комментариев в CSS и такой формат появился: CSSDoc. Спецификация пока что имеет статус черновика, но ничто не мешает начать пользоваться основными правилами уже сейчас.

Если интересно, то нужно нажать на эту ссылку.

Правила хорошего CSS

Время на прочтение2 мин
Количество просмотров11K
Расскажу о своих правилах, которые я использую в любом файле CSS.

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

Читать дальше →

Как IE8 определяет Document Mode, по которому затем рендерит сайты

Время на прочтение1 мин
Количество просмотров2.8K
Команда IE официально опубликовала алгоритм определения Document Mode в IE8.

Оказывается при определении Document Mode учитывается множество косвенных параметров, связанных с интранетом и клиентскими настройками.

Читать дальше →

Тонкости использования селекторов аттрибутов в CSS

Время на прочтение4 мин
Количество просмотров35K
CSS может связываться с HTML элементами используя любые из его атрибутов. Вы наверняка знаете о классах и ID. Проверим это в HTML:
<h2 id="first-title" class="magical" rel="friend">David Walsh</h2>

Этот один элемент имеет три аттрибута: ID, class и rel. Для выбора элемента в CSS вы можете использовать селектор ID (#first-title) и селектор class (.magical). Но знаете ли вы, что можно использовать для выбора атрибут rel? Это так называемый селектор атрибута:
h2[rel=friend] {
  /* woohoo! */
}

Читать дальше →

Golden Grid CSS: PSD-шаблон

Время на прочтение1 мин
Количество просмотров9.1K
Относительно недавно познакомился с CSS-сеткой Golden Grid. Мне она понравилась небольшим весом и использованием правила «золотого сечения». Golden Grid более простая, чем Blueprint. Я не настаиваю на том, что она более удобная, но для моих задач подходит как нельзя лучше.

Вместо обозначений классов span-1, span-2… используются более интуитивные g160, g320 и т.д. Кроме того, неплохая типографика, подстроенная специально под сетку.

Сетка относительно новая (2009), поэтому не хватает многих важных деталей. Например, psd-шаблона. Решив заполнить столь значимый пробел, я создал такой шаблон, благо много времени это не занимает. Проведены и линейки, и серые прозрачные прямоугольники. Это сделано для того, чтобы сетку можно было ставить поверх основного дизайна.

Скачать (.zip, 20 кб)

Делаем фотографию только средствами php+css+html

Время на прочтение1 мин
Количество просмотров2.1K
На днях мне приснилась бесполезная, но прикольная мысль, а что если попытаться создавать изображения только при помощи php и библиотеке GD2, CSS и HTML. Сказано-сделано.
Идея очень простая — берем исходное изображение, пробегаем по всем его пикселя и узнаем код цвет каждого, после этого создаем див размеров 1px на 1px и задаем ему цвет фона такойже как и у исходного пикселя в изображении. В результате получаем полный аналог графического собрата. Но правда чтобы наслождаться HTML-графикой нужен хороший процессор и современный браузер.

Результат моего эксперемнта можно увидеть тут: HTML-фотосумашествие. Вся суть заключена в исходном коде страницы. Но перед тем как смотреть, на всякий случай откройте отдельное окно браузера, желательно чтобы это был Chrome, он точно справится.

Конечно, на промышленное применение это не потянет, но как just for fun — вполне сойдет.

Создаем объёмный блок с тенью средствами CSS3

Время на прочтение3 мин
Количество просмотров14K
День, когда стандарт CSS3 будет официально утвержден, а все популярные браузеры начнут его отображать приблизит нас, верстальщиков, к нашему же «раю верстальщиков» в несколько раз. Пока же заглянем в будущее и узнаем, как можно создать псевдо-3D блок используя только css и html.
показывай, кудесник

Колоночная верстка

Время на прочтение5 мин
Количество просмотров16K
Существует много способов по верстке колоночных макетов. Уже не один нос разбит в течении холиваров, разожженных по поводу использования тех или иных методов. Казалось бы, что все должно быть предельно ясно и понятно, но все-равно возникает много трудностей. Я хочу и свою лепту вложить во всеобщее благое дело, и потому потратил относительно немного времени на эксперименты, которые привели меня к созданию еще одного метода, в котором есть следующие плюсы и минусы:

Плюсы
  • Есть прижимающийся к полу футер
  • Колонки меню растягиваются по 100% высоте
  • Колонок может быть сколько душе угодно
  • Колонки могут быть как лево- так и правосторонними, а также совмещенными, например 2 справа и 1 слева
  • Ширина как резиновая, так и фиксированная
  • Критический минимум хаков
  • Не используется Javascript
  • Не используются бекграундовые изображения для создания эффекта колонки
  • Никаких таблиц
  • Одинаковый результат в ie5.5, ie6, ie7, ie8, ff3.5, o10, chrome4 (Если у вас не работает в каком-то браузере — отпишитесь, пожалуйста, в комментах. Исправим и приведем к универсальному виду)

Минусы
  • Есть несколько «лишних» блоков. (Я бы и сам рад от них избавиться)
  • Есть несколько абсолютно-позиционируемых блоков
Читать дальше →

Ближайшие события

Opera 10.50 и CSS-хаки

Время на прочтение2 мин
Количество просмотров3.3K
Opera 10.50 стала поддерживать border-radius и много других интересных вещей, в этой связи встал вопрос — как отличить Opera 10.50 от более ранних версий в CSS?

Например, у меня на сайте скруглённые уголки для «Оперы», начиная с версии 9.50 делаются при помощи SVG, 10.50 вполне могла бы нарисовать их без этого «изыска». Помучался-помучался и придумал несколько CSS-хаков, собственного изобретения.
Читать дальше →

Инструменты css, экономящие ваше время

Время на прочтение2 мин
Количество просмотров19K
Вольно-сокращенный перевод статьи 15 Time Saving CSS Tools You Should Be Aware Of
Под катом текст, графика, ссылки
Читать дальше →

Поддержка CSS3 в Opera 10.50

Время на прочтение1 мин
Количество просмотров2.1K
С поддержкой CSS3, браузером Оперой, всегда было не особо густо.

Но сегодня, в пре-альфе версии 10.5, Опера анонсирует поддержку интересных и давно ожидаемых фич CSS3, в частности это — CSS3 Transitions и 2D Transform. Правда пока, это еще далеко не рабочее решение, и поэтому, для того что бы посмотреть как это работает в Опере, используем префикс -o. Подробности по ссылке

Все это стало возможно, не без помощи движка Opera’s Presto 2.5

И наконец-то, долгожданная поддержка CSS3 Backgrounds и Borders. И кстати, Опера первый браузер, который позволяет использовать эти прелести без префиксов -moz или -webkit

Читая новость, дойдя до слова префикс -o, я подумал, блин, еще один префикс, но за это (см. абзац выше) — я готов простить Опере новый префикс и сказать, а ведь не зря, используя CSS3 в своих проектах, я писал еще и просто border-radius (помимо -moz и -webkit)

P.S. Опубликовал этот топик именно в этот блог, так как фанаты Оперы еще явно что-то напишут в блог Оперы.

Еще одна причина не использовать @import

Время на прочтение1 мин
Количество просмотров1K
Надеюсь, многие прочитали топик «Не используйте import», если еще не — советую прямо сейчас. К слову, в комментариях можно отыскать еще пару заметок: при использовании import браузер не лезет на сервер с заголовком If-modified-since и не ждет 304. Он полезет если упорно нажать F5 или ctrl+f5., и IE 6 (и вроде IE 7) может загружать только 32 <link> элемента идущих в шапке. Хотя про последний вроде тоже многие знают.

А сегодня я нашел еще одну неприятную особенность использования import.

При попытке сохранения документа «Полностью», браузеры не подхватывают импортированные стили, и страница отображается без них. IE так вообще ругается, и ничего сохраняет, только если выбрать режим «Веб-архив», да и тогда сайт отображается не всегда корректно. Проверял в IE7/8, FF3, Chrome 3, Opera 10.

WebKit и expression

Время на прочтение1 мин
Количество просмотров710
Да, это не опечатка! Внезапно обнаружил, что конструкция:

.myclass {behavior:expression((function(){})(this))}

читается WebKit (Chrome, Safari) браузерами и стили после ней браузер не воспринимает и, соответственно, не применяет. Опытным путём было установлено, что проблема в этой конструкции в символах "{" и "}", которые в сумме вызывают какие-то метаморфозы в браузерах. Причём если убрать "{", то баг исчезает, а если "}", то остаётся. Естественно, наличие ";" в конце правила, тип селектора (т.е даже если это будет селектор для ИЕ, вроде * html [selector]), тип правила (например предварение правила "//" или "_") ситуации НЕ исправляют, иначе было бы не так уж и страшно!

Особенно знание этого бага полезно людям, любящим объединять все стили в один файл, не вынося стили для IE в отдельный файл, вместо этого используя star-hack и иже с ним! В любом случае если вы относитесь к тем, кто не выносит стили для Internet Explorer'a в отдельный файл, то пишите хотя бы expression'ы в конце файла, иначе долго будете искать причину проблем!

Фиксим png в IE6 с помощью expression, одним классом и без использования однопиксельного gif'а

Время на прочтение6 мин
Количество просмотров864
Это давно известная проблема. У этой проблемы существуют 1000 решений, правда все они используют в конечном счёте один и тот же, проверенный AlphaImageLoader. Я, скорее всего, не открою Америку, а лишь хочу рассказать вам об expression'е, которым с недавних пор пользуюсь и которого достаточно в 99% случаев, а также объясню как, почему и зачем я его написал.
Читать дальше →

Создание прототипа с помощью CSS-фреймворка Grid 960

Время на прочтение10 мин
Количество просмотров24K
imageGrid 960 — это CSS Фреймворк, который позволяет разработчикам быстро конструировать прототипы дизайна. Они являются замечательным инструментом для создания макетов. Почему? Потому что они делают за вас всю тяжелую работу, позволяя получить быстрые результаты.

Звучит отлично, но как это делается? В интернете есть большое количество статей, агитирующих за и против использования CSS-фреймворков, но нет ничего в помощь неопытным читателям. Поэтому в сегодняшней статье мы рассмотрим процесс создания прототипа.
Читать дальше →

Вклад авторов