關于CSS渲染:CSS是如何繪制顏色的
顏色的原理
最常見的顏色相關的屬性就是 color 和 background-color。
顏色值:RGB 顏色,CMYK 顏色,HSL 顏色,其它顏色
RGB 顏色:它符合光譜三原色理論:紅、綠、藍三種顏色的光可以構成所有的顏色。
現代計算機中多用 0 - 255 的數字表示每一種顏色,這正好占據了一個字節,每一個顏色就占據三個字節。
CMYK 顏色:在印刷行業,使用的就是這樣的三原色(品紅、黃、青)來調配油墨,這種顏色的表示法叫做 CMYK,它用一個四元組來表示顏色。
HSL 顏色:HSL 這樣的顏色模型被設計出來了,它用一個值來表示人類認知中的顏色,我們用專業的術語叫做色相(H)。加上顏色的純度(S)和明度(L),就構成了一種顏色的表示。
其它顏色:RGBA 是代表 Red(紅色)、Green(綠色)、Blue(藍色)和 Alpha 的色彩空間。RGBA 顏色被用來表示帶透明度的顏色,實際上,Alpha 通道類似一種顏色值的保留字。在 CSS 中,Alpha 通道被用于透明度,所以我們的顏色表示被稱作 RGBA,而不是 RGBO(Opacity)
CSS 還規定了名稱型的顏色,它內置了大量(140 種)的顏色名稱。
漸變:在 CSS 中,background-image這樣的屬性,可以設為漸變。CSS 中支持兩種漸變,一種是線性漸變,一種是放射性漸變。
線性漸變的寫法是:
linear-gradient(direction, color-stop1, color-stop2, ...);
direction 可以是方向
- to bottom
- to top
- to left
- to right
- to bottom left
- to bottom right
- to top left
- to top right
- 120deg
- 3.14rad
color-stop 是一個顏色和一個區段
- rgba(255,0,0,0)
- orange
- yellow 10%
- green 20%
- lime 28px
放射性漸變需要一個中心點和若干個顏色:
radial-gradient(shape size at position, start-color, ..., last-color);
形狀:
CSS 中的很多屬性還會產生形狀,比如我們常見的屬性:
- border
- box-shadow
- border-radius
這些產生形狀的屬性非常有趣,我們也能看到很多利用它們來產生的 CSS 黑魔法。然而,這里我有一個相反的建議,我們僅僅把它們用于基本的用途,把 border 用于邊框、把陰影用于陰影,把圓角用于圓角,所有其它的場景,都有一個更好的替代品:datauri+svg
到此這篇關于關于CSS渲染:CSS是如何繪制顏色的的文章就介紹到這了,更多相關:CSS如何繪制顏色內容請搜索以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持!
相關文章: