Цвета в CSS
Мне нравится возможность задавать цвета в коде несколькими разными способами, в зависимости от цели использования. Всего таких способов 7.
Спецификация тут: w3.org/TR/css3-color/.
Итак, способы:
1. Именованные цвета
Их достаточно много, все цвета можно найти тут: w3.org/TR/css3-color/#svg-color
Для себя я отсортировала их по оттенкам, моя таблица цветов лежит тут: Handy colors.
Преимущество: через некоторое время использования всегда знаешь как называется нужный цвет или наоборот — как выглядит на странице цвет, имя которого видишь в коде. Очень удобно для экспериментов с CSS.
Недостаток: их всего 147, и не всегда можно подобрать нужный набор оттенков.
2. RGB
Red, Green, Blue.
Можно задавать двумя способами:
Преимущество: значения цвета можно брать из фотошопа.
Недостаток: неудобно подбирать значения руками, а также нельзя задавать значения числами с плавающей точкой. Например, если захочется задать какой-нибудь цвет через 25%, в цифрах это будет 63.75 — строка с таким значением работать не будет.
3. HEX
Это тот же RGB, но записанный в шестнадцатеричной системе счисления. Каждая пара знаков означает в той же последовательности красный, зеленый и синий цвета в диапазоне от 00 до FF. Если в парах оба знака одинаковые, можно использовать короткую запись. Например: #FFFFFF → #FFF.
Преимущество: значения удобно брать из фотошопа. Недостаток: неудобно подбирать значения руками, хотя распространенные сочетания легко запоминаются, например #F00 или #DDD или #F90 .
4. RGBA
RGB с параметром прозрачности (alpha).
Преимущество: наличие прозрачности и возможности гибко ею управлять.
Недостатки: те же, что и для rgb. Так же не поддерживается в IE8 и ниже.
5. HSL
Hue — цвет. Задается в диапазоне от 0 до 360, означает угол цветового круга (радуги, представленной в виде круга). Saturation — насыщеность цвета, задается в процентах. Lightness — яркость цвета, задается в процентах.
Этот пример дает представление о соответствии цветов градусам:
У цветов был изменен только первый параметр. Изменяя остальные, можно получить много соседних оттенков.
Здесь посередине исходный цвет, слева — с повышенной яркостью, справа — с пониженной насыщенностью:
С помощью HSL удобно подбирать подходящие оттенки не используя графические редакторы:
Преимущество: можно написать нужный цвет не пользуясь колорпикерами, легко подобрать несколько сочетающихся оттенков. Недостатки: не поддерживается в IE8 и ниже.
6. HSLA
Как HSL, но с прозрачностью.
Например:
7. Ключевые слова
transparent
— для обозначения полной прозрачности.
currentColor
— текущий цвет текста (color
) для элемента.
Например, можно написать:
И задавая каждому элементу свой цвет текста получить рамки разного цвета:
Можно даже совсем опустить ключевое слово, и цвет текста будет унаследован автоматически:
- Ссылки по теме:
- docs.webplatform.org/wiki/css/color#RGBA_Notation
- css-tricks.com/yay-for-hsla/
- leaverou.github.io/css-colors
- Метки:
- инструменты