Каковы различия между RGB и RGBA, кроме "непрозрачности"
я вышел за рамки использования стандартных цветов в CSS, объявив их orange
, blue
, aquamarine
, etc... и использую rgb()
как так же цветов, соответственно, rgb(255,165,0)
, rgb(0,0,255)
и rgb(127,255,212)
(спасибо ColorHighlighter пакет в ST3).
при изменении градиента для bootstrap .btn
я наткнулся на rgba()
. Быстрое исследование объясняет, что a
расшифровывается как alpha
, и есть целая куча интегральной математики, приписываемой Catmull и Смит. Также несколько легко найти, что альфа-канал используется для" Альфа-композитинга", который в основном может быть связан как"непрозрачность".
- существуют ли различия между этими двумя, кроме непрозрачности?
- почему это не конвенция для использования RGBA.(Я предполагаю это, так как я только что наткнулся на это)
- существуют ли другие ограничения, которые следует знать при использовании rgba () для этот веб?
- есть ярлык объявить непрозрачность цвету ярлыка? (т
color: salmon:.5;
) - С точки зрения веб-разработчика, мне нужно беспокоиться о различия между порядком байтов ARGB, RGBA, BGRA для разных машины INFO?
- другая важная информация?
3 ответов
RGB-это 3-канальный формат, содержащий данные для красного, зеленого и синего. RGBA-это 4-канальный формат, содержащий данные для красного, зеленого, синего и Альфа.
нет никакой пользы для Альфа-канала, кроме как сделать цвет прозрачным / непрозрачным (или частично прозрачным; полупрозрачным).
в CSS rgb () имел широкую поддержку браузера в течение нескольких лет, прежде чем rgba () получил тот же уровень поддержки. Это одна из причин, по которой вы найдете больше rgb() в CSS, чем rgba(). Другой причина в том, что прозрачность-это не то, что вы обычно используете везде.
вы можете найти значение RGB, упакованное в 16 бит, с 5 битами для синего и красного и 6 бит для зеленого (зеленый получает больше бит, потому что глаз более различает оттенки зеленого). Вы также можете найти значение RGBA, упакованное в 16 бит, с 5 битами для каждого цвета и 1 бит для Альфа. С помощью одного бита вы можете сделать цвет полностью прозрачным или не прозрачным вообще.
типично в наше время, вы найдете RGB и RGBA, упакованные в 32-битные значения, с 8 битами для каждого цвета и 8 бит для альфа (или оставленные пустыми для RGB).
в CSS дизайнеры решили использовать значения 0-255 (диапазон для 8-битного значения) для красного, зеленого и синего, но они используют значение между 0.0 и 1.0 для Альфа-канала. Фактический формат байтов для цвета не имеет значения для веб-разработчиков.
по моему опыту, ни rgb (), ни rgba () не используются очень часто в CSS. Цвета наговора путь более доминантный и опередивший их еще на несколько лет.
HSL на самом деле гораздо лучший формат для работы с цветами и поддерживается в CSS (IE9+, Firefox, Chrome, Safari и Opera 10+.).
rgb-стандартные значения rgb (красный, зеленый, синий)
rgba-стандартные значения rgb (красный, зеленый, синий + Альфа (он же непрозрачность))
вы не найдете никаких цветовых вариаций. RGBA является свойством цвета css3.
поскольку поддержка старых браузеров может быть ограничена, вы можете использовать резервный цвет как таковой:
CSS:
div {
background-color: rgb(200, 54, 54); /* The Fallback */
background-color: rgba(200, 54, 54, 0.5);
}
RGB с стандартные цвета rgb, вы уже понимаете это.
RGBA и стандартные цвета rgb, но с Альфой / непрозрачностью также.
кроме этого нет никакой разницы, цвета по-прежнему кодируются одинаково.
проблема с использованием этого и других С помощью CSS3 цветовые стили-это то, что он не всегда поддерживается. Вот ссылка я нашел, что говорит вам, какие версии браузеров поддерживают он.
объявления Альфа на в CSS будет выглядеть так rgba(0, 0, 0,.3) с Альфой, являющейся десятичным или целым числом от 1 to 0. 1 тупить и 0 полностью прозрачный.