Почему в css rgba(); есть только десять приращений для альфы?

Насколько я понимаю, минимальные значения для этой команды CSS:

rgba(0, 0, 0, 0);          /equivalent hex rgba #0000

и максимальные значения

rgba(255, 255, 255, 1);    /equivalent hex rgba #FFFF

Теперь, скажем, мы смотрим на r: его десятичное число — 255, а его шестнадцатеричное число — #F, которое легко расширяется/преобразуется в #FF.

#FF = 255

На стороне компьютера шестнадцатеричный код читается как 0 to F (база 16). Со стороны человека десятичный ввод читается как 0.0 to 1.0 (основание 10). По сути, есть только 10 приемлемых входных данных из 16 возможных.

Итак, мой вопрос, что происходит с другими 6 недоступными входными значениями? Как транслируется альфа-канал?


person StealingMana    schedule 16.08.2014    source источник
comment
альфа-канал изменяет только непрозрачность, я не верю, что он влияет на сам цвет, который вы используете rgba() или hsla()   -  person G-Cyrillus    schedule 16.08.2014
comment
протестируйте это на фоне codepen.io/anon/pen/EIFkg   -  person G-Cyrillus    schedule 16.08.2014


Ответы (2)


Если вы ищете более тонкие настройки непрозрачности, вы можете использовать альфа-значения с более чем одним десятичным знаком. Например, RGBA(255,255,255,0,05) даст ожидаемые результаты в виде очень светлого оттенка белого. Ответ был дан здесь: Непрозрачность цвета HTML rgba?

person Wilfred    schedule 27.09.2014

Если вы используете нотацию rgba в CSS, помните, что последняя цифра используется для непрозрачности. Так что это значение не учитывается в цвете rgb.

rgba(255, 255, 255, 1); Первые 3 цифры обозначают значение цвета rgb, а четвертая цифра 1 — непрозрачность, и она также может быть десятичной, например, 0,5.

Помните, что IE8 не поддерживает эту нотацию.

http://caniuse.com/#search=rgba

person Alessandro Incarnati    schedule 16.08.2014