Encodera

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.

Оглавление

Цвета

Цвет — первое, что меняют, когда начинают оформлять страницу. В CSS один и тот же цвет можно записать несколькими способами, и в чужом коде встретятся все. Разберём их по очереди.

Цвет текста и фона

Свойство color задаёт цвет текста, background-color — цвет фона элемента:

<style>
  .banner {
    color: white;
    background-color: teal;
  }
</style>
 
<p class="banner">Белый текст на бирюзовом фоне</p>

Фон закрашивает всю ширину абзаца, а не только строку с текстом: абзац — блок во всю доступную ширину.

Названия цветов

В CSS около 140 готовых названий: от простых red и blue до tomato, gold и rebeccapurple. Их удобно использовать в учебных примерах:

<p style="color: tomato;">tomato</p>
<p style="color: seagreen;">seagreen</p>
<p style="color: slateblue;">slateblue</p>

Для дизайна названий мало: точный фирменный цвет так не записать. Для этого есть числовые способы.

Шестнадцатеричный код

Самая частая запись — hex: решётка и шесть символов. Это три пары — доля красного, зелёного и синего от 00 (нет) до ff (максимум). Цифры здесь шестнадцатеричные: после 9 идут буквы от a до f.

<p style="color: #ff0000;">#ff0000 — чистый красный</p>
<p style="color: #7c3aed;">#7c3aed — фиолетовый</p>
<p style="color: #333;">#333 — короткая запись #333333</p>

Такие коды копируют из графических редакторов и палитр.

Функция rgb()

rgb() описывает те же три канала числами от 0 до 255. Её проще читать, чем hex:

<p style="color: rgb(220 38 38);">rgb(220 38 38) — красный</p>
<p style="color: rgb(22 163 74);">rgb(22 163 74) — зелёный</p>

Числа разделяют пробелами. В старом коде встретится запись через запятые — rgb(22, 163, 74), она тоже работает.

Функция hsl()

hsl() описывает цвет так, как о нём думает человек: оттенок (угол на цветовом круге от 0 до 360), насыщенность и светлота в процентах. Чтобы получить светлее или темнее тот же цвет, меняют только последнее число:

<p style="background-color: hsl(210 80% 30%); color: white;">hsl(210 80% 30%)</p>
<p style="background-color: hsl(210 80% 60%);">hsl(210 80% 60%)</p>
<p style="background-color: hsl(210 80% 90%);">hsl(210 80% 90%)</p>

Прозрачность

После косой черты в rgb() и hsl() указывают непрозрачность: 0 — полностью прозрачный, 100% — сплошной. Свойство opacity делает прозрачным весь элемент вместе с текстом:

<style>
  .bg { background-color: rgb(124 58 237 / 20%); }
  .faded { background-color: rgb(124 58 237); color: white; opacity: 0.4; }
</style>
 
<p class="bg">Прозрачный только фон</p>
<p class="faded">Прозрачно всё, включая текст</p>

Частая ошибка

Светло-серый текст на белом фоне выглядит аккуратно, но его трудно читать — особенно на солнце или людям со слабым зрением. Текст должен заметно отличаться от фона по светлоте:

<p style="color: #cccccc;">Этот текст почти не видно.</p>
<p style="color: #52525b;">Этот серый читается хорошо.</p>

Проверить контраст можно в инструментах разработчика браузера: при выборе цвета там показано, достаточно ли он заметен.

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.