Обновить
106.17

CSS *

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

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

Не используйте @import

Время на прочтение3 мин
Количество просмотров62K
В данной статье автор Steve Souders приводит наглядные доказательства, почему не стоит использовать import для загрузки стилей в документ.

LINK vs. import


Существует 2 способа загрузки файлов стилей. Использовать тег LINK:
<link rel='stylesheet' href='a.css'>

Или импортировать файлы с помощью import:
<style>
@import url('a.css');
</style>

Я предпочитаю использовать LINK для удобства, т.к. вы должны помнить, что import нужно размещать всегда в самом верху блока стилей, в противном случае они не импортируются.
Смотрим доказательства

Кастомизация input type=”file” с помощью CSS

Время на прочтение2 мин
Количество просмотров65K
Есть несколько способов кастомизации (изменения внешнего вида) инпутов такого типа. Все они обладают своими плюсами и минусами, но, на мой взгляд, предложенный мною вариант, выигрывает даже со своими минусами, коих всего один.
Читать дальше →

CSS Naked Day

Время на прочтение1 мин
Количество просмотров4K
9 апреля каждого года наступает день снятых CSS (не получается придумать адекватный перевод).

В этот день (на самом деле праздник длится 48 часов) сайтам положено снимать свои таблицы стилей, и обнажать свою структуру. Эта затея призвана привлечь внимание к веб стандартам. Не уверен, что акция является эффективной, но по крайней мере это забавно.

Делаем красивые кнопочки

Время на прочтение4 мин
Количество просмотров12K
Зачастую стандартный вид кнопочек не может сочетаться с концепцией дизайна, которую придумал дизайнер, поэтому он рисует свои кнопочки.

Что обычно делает верстальщик при виде такой кнопки? Правильно, просто напросто, вырезает ее как есть, и вставляет ее в верстку как картинку.

Например:
<a href="some_page.html"><img src="button.gif" alt="Button"></a>
<input type="image" src="button.gif" alt="Button">


* This source code was highlighted with Source Code Highlighter.


Вроде бы все просто, но тогда верстальщику придется под каждую форму или ссылку вырезать новую картинку, тем самым плодя кучу картинок и тратя драгоценное время.
Читать дальше →

Многоуровневое дерево с маркерами (только HTML, CSS, без Javascript)

Время на прочтение5 мин
Количество просмотров24K
Многоуровневое дерево с маркерами (только HTML, CSS)До того как заняться верской гитарных аккордов (статьи 1,2,3) я столкнулся с необходимостью сделать человеку на сайте меню-дерево. Рисовать не хотелось вообще, поэтому я взял старый добрый HTML с CSS и начал делать это дерево, начал с простого одноуровневого, а позже сделал многоуровневое с маркерами, которое и представлю.

Позже это дерево дало мне плоды в виде habrahabr.ru/blogs/css/53792
Читать дальше →

Продолжение идеи записи гитарных аккордов в HTML. Версия 3, оптимизированные варианты

Время на прочтение9 мин
Количество просмотров1.2K

Продолжаем разработку записи аккордов в HTML. В камментах предыдущего топика selenit предложил оптимизированный вариант(1,2), где кода еще меньше.

Для ознакомления с темой подробно, почитайте предыдущий топик.
Читать дальше →

Запись гитарных аккордов HTML+CSS (теперь с баррэ)

Время на прочтение12 мин
Количество просмотров3.4K
Большое и малое баррэ (CSS,HTML only)
Увлекло меня это дело — описание гитарных аккордов, по научному — аппликатура. Начало было положено в предыдущим топике про запись аккордов и теперь получило своё развитие.
Я учел пожелания и сделал новую версию.
Теперь метка прижимаемой струны — это точка • (& bull;) вместо © (& copy;).
В прошлой версии не было поддержки отображения баррэ — теперь есть и большое, и малое баррэ.
Добавлена поддержка Google Chrome.
Читать дальше →

Запись гитарных аккордов HTML+CSS (пока без барре)

Время на прочтение3 мин
Количество просмотров6K
Запись гитарных аккордов при помощи HTML,CSSКак обычно представляют гитарные аккорды на веб-страничках?
Картинками!

Вот только не всегда это удобно, потому что их приходиться рисовать.

Вот у меня родилась идея:
отображать гитарные аккорды используя только HTML и CSS.
Читать дальше →

CSS Framework «Object Oriented CSS»

Время на прочтение1 мин
Количество просмотров4.1K
Оригинальный css фреймворк «Object Oriented CSS» от инженера Yahoo Nicole SULLIVAN-HAAS
Очень молодой фреймворк (первый коммит — January 28, 2009), после беглого просмотра приятно удивила структура компонентов, а
после просмотра презентации, захотелось немедлено скачать и опробовать его.
Читать дальше →

5 способов улучшить ваш CSS

Время на прочтение3 мин
Количество просмотров4.4K
imageПрактически любой человек сможет написать CSS-код, в наше время любая программа сделает это за вас. Но будет ли это хороший CSS? Далее представлены пять советов по совершенствованию вашего CSS
Читать дальше →

Танцы с бубном для блондинок, или о tabbed menus и хитрой работе с графикой

Время на прочтение5 мин
Количество просмотров1.5K
Собственно, перепал мне не так давно небольшой заказец. Вроде и несложный — а потанцевать с бубном немного пришлось. А всё из-за того, что заказчик оказался немного «падкой на дизайн блондинкой» (образно говоря), и требовал строгого соответствия конечного результата макету. Требовал попиксельно, и его совершенно не волновали такие вопросы, как валидность, семантичность и всё такое. «Хоть таблицами сверстай, а сделай». И сегодня речь пойдёт о том, как в таких условиях сделать весьма хитровыделанно нарисованное меню табами. Как и за свой код не устыдиться, и не пасть в грязь лицом перед заказчиком, вот в чём вопрос?
Читать дальше →

Вместо тэга <noscript> стили .script и .noscript в CSS

Время на прочтение1 мин
Количество просмотров5K
Иногда, крайне редко нужно скрыть, либо показать часть тегов в том случае если javascript включён, либо выключен.
Конечно, есть <noscript> но он реализует только часть логики — он скрывает часть кода если javascript включён. Скрыть часть кода, если javascript выключен стандартной возможности нет.
Точнее есть возможность добавить некий код при помощи скрипта, но не совсем то.
Что можно сделать вместо этого?

Ненужные отступы в списках

Время на прочтение1 мин
Количество просмотров5.2K
Если элементы списка отобразить как inline – между ними появляются ненужные отступы.
Далее о том, откуда они берутся, и как это исправить.

1. Броузер рендерит не тот код который вы пишете, а тот, который получится в результате валидации вашего.
2. В каком-то доисторическом стандарте (html 3.2 кажется) было сказано, что тег LI закрывать не обязательно.

IE чтоб ему было удобнее рендерить приводит и закрытые и не закрытые теги LI к одному варианту, конечно же к не закрытому. (А что вы от него ждёте?) После закрывающего тега LI идёт перевод строки, он идентичен пробелу. Этот пробел и добавляется к тексту внутри LI. В нормальных броузерах этот пробел становится между тегами.

Проверить можно тут.

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

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

Убираем лишний отступ внизу изображения

Время на прочтение1 мин
Количество просмотров39K
Лишний отступ внизу изображения img1

Наверное, многие, при html-верстке, встречали «баг», когда, размещая в блоке подряд два изображения, между ними возникает промежуток, примерно в 3-5 пикселей. Этот эффект присутствует не только в горячо любимом IE6, но и в других браузерах. Большинство решали это с бубнами – подменой Doctype, убиранием лишних отступов в html-файле и так далее.

Начав искать решение проблемы в интернете, в том числе и на хабре, я понял, что вопросов по этому поводу много, но правильного ответа большинство так и не нашли. В итоге выяснилось, что это вовсе не баг. IMG – внутристрочный элемент, и поэтому к нему применяется свойство vertical-align. В браузерах это свойство задается по умолчанию (в большинстве baseline, если не ошибаюсь).

Достаточно к изображению применить vertical-align:bottom и отступа внизу не будет. В других случаях будет неоднозначность, и браузеры будут вести себя на свое усмотрение.

Убираем лишний отступ внизу изображения img1

Тривиальные задачи по вёрстке

Время на прочтение4 мин
Количество просмотров60K
image

Начинаю вести серию статей Это статья про вёрстку html css js, начинаю с самого простого, потом планирую описать более сложные вещи и всякие тонкости и этим видимо так и закончил

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

IE, Quirks mode и ошибки при отображении полей ввода в зависимости от того, вводятся латинские или кириллические символы

Время на прочтение5 мин
Количество просмотров3.2K
Добрый день всем

Старичок IE не перестает нас удивлять и подкидывать все новые проблемы, в самых неожиданных местах.

При работе над проектом столкнулся с неожиданным поведением полей ввода input и textarea при работе IE в режиме quirks mode. И все бы ничего, в общем-то — кого сегодня удивишь странностями и багами IE. Интересное заключается в том, при каких условиях проявляется проблема. В этот раз это происходит в зависимости от того, какие символы вводятся в поле ввода — кириллические или латинские. Кириллица вызывает проявляение проблемы, латинница вводится нормально и проблема не проявляется. Это показалось мне достаточно интересным и я решил поделиться наблюдением собщественностью.

мне интересно, расскажите

CSS counters

Время на прочтение7 мин
Количество просмотров34K

Одной из редко используемых возможностей CSS2.1 являются счетчики. Описаны они в разделе спецификации, посвященной генерации контента. Что же это такое?

Приведу пример из спецификации, эмулирующий обычный нумерованый список с помощью счетчика и свойства content:
OL { counter-reset: item }
LI { display: block }
LI:before { content: counter(item) ". "; counter-increment: item }

Первым правилом мы назначаем элементам OL счетчик с именем «item», затем для всех LI меняем значение свойства display на block, вместо значения по умолчанию (list-item), чем отключаем стандартные маркеры-цифры. Наконец, в последнем правиле, мы инкрементируем счетчик для каждого элемента списка, а само его значение показываем перед элементом c помощью функции counter() и свойства content. Всё просто.

Но это еще далеко не всё

Наглядное тестирование поддержки CSS3-свойств вашим брузером

Время на прочтение1 мин
Количество просмотров1K
imageПредлагаю всем интересующимся небольшую страницу с наглядным сравнением того как реагирует ваш браузер на CSS3-свойства, поддерживает их либо нет. Страница будет развиваться и наполняться другими свойствами, кроме того, планирую добавить в нее ссылки на описание свойств и дополнительную информацию. На данный момент в тесте участвует 10 свойств, но если вы хотите расширить его, пожалуйста напишите в комментариях про желаемое CSS3-свойство.

Посмотреть тест.

PS: opacity в тесте не будет.

UPD: тест обновлен: добавлено 5 тестов, исправлена ошибка в css

Безразмерная разметка с помощью relative (без float)

Время на прочтение2 мин
Количество просмотров4.1K
Навеянно этой темой.
Пример, как это работает.

1. Введение


Представим, мы имеем класс relative, внутри которого имеется текст, и не задаём ему width:
#bar{
position:relative;
border:5px solid #00FFFF;
padding:10px;
height:200px;
}
мы получим резиновый блок:
<div id="bar">
text
</div>


При этом, блок обладает неизменными padding+border и резиновым width, таким, что width_px+padding_px+border_px = 100%.
Для absolute блоков, такой трюк не прокатывает.
Читать дальше →

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