亚洲最大看欧美片,亚洲图揄拍自拍另类图片,欧美精品v国产精品v呦,日本在线精品视频免费

  • 站長資訊網(wǎng)
    最全最豐富的資訊網(wǎng)站

    CSS顏色設(shè)置方法:HEX、RGB、HSL的簡單對比

    CSS中,顏色值有多種表示方法,例如顏色名、十六進制顏色、RGB()、HEX()、HSL()等等。那你知道HEX、RGB和HSL之間有什么區(qū)別嗎?下面本篇文章就來給大家簡單對比一下HEX、RGB、HSL,看看它們區(qū)別。

    CSS顏色設(shè)置方法:HEX、RGB、HSL的簡單對比

    不知道你是否了解 HEX、RGB 和 HSL 之間的區(qū)別,以及其中任意一種的各種優(yōu)勢?


    在深入探討這個問題之前,讓我們簡要了解每種顏色方法的含義。

    顏色方法的定義

    Hex 顏色值是最流行的設(shè)置 CSS 顏色屬性的方法之一,尤其是在開發(fā)人員中。幾乎所有瀏覽器都支持它。

    我們可以在十六進制顏色代碼中定義紫色,如下所示:

    800080

    這里的顏色的格式規(guī)定是 #RRGGBB,其中 RR(紅色)、GG(綠色)和 BB(藍色)是介于 00FF 之間的十六進制整數(shù),表示色彩強度。

    HEX 和 RGB 的區(qū)別

    RGBRed/Green/Blue(即紅/綠/藍)也被用于在 CSS 中定義顏色,是另一種廣受歡迎的方法。RGB 配色方案是一種三通道格式,其中 r、g、b 三色的數(shù)值是 0 到 255 之間的整數(shù)。以下是 RGB 顏色的示例:

    rgb(128, 0, 128)復(fù)制代碼

    上述 RGB 顏色代碼的實現(xiàn)與上文中 HEX 顏色一致。你可能想知道,明明十六進制顏色代碼更容易記住和輸入,為什么我們還要使用 RGB 呢?

    嗯,每種顏色方法都有自己的好處。RGB 的美妙之處在于它允許你為顏色添加不透明度。

    這就是 RGBA 的強處了。在 CSS3 中,RGB 配色方案新增了一個額外的 alpha 通道,以指示顏色的不透明度。

    譯者注:其實嘛,Hex 也支持,比如說 50% 黑色就是 #00000088,最后兩位數(shù)為十六進制的透明度,范圍也是 00FF。

    新人,HSL!

    HSL 代表色相 Hue、飽和度 Saturation 和亮度 Lightness,是另一種在 CSS 中聲明顏色的方式。紫色的 HSL 顏色值可以指定如下:

    hsl(300, 100%, 25.1%)

    如你所見,第一個參數(shù)用于定義色相,它是實際純色的值,例如紅色、黃色、綠色、藍色、洋紅色等。色相是一個顏色輪,取值為 0 到 360 的度數(shù)。這里 0 和 360 度代表紅色,120 度代表綠色,240 度代表藍色。

    與 RGB 不同,在 HSL 中,顏色的飽和度和亮度都可以改變。

    這些顏色可以是暗淡的,也可以是鮮艷的。顏色越少,它變成灰色的陰影就越多。飽和度指代混合色中存在多少顏色,它能控制顏色的鮮艷或暗淡程度。

    CSS顏色設(shè)置方法:HEX、RGB、HSL的簡單對比

    如你所見,當(dāng)飽和度值沿線從 100% 變?yōu)?0% 時,顏色會從純色調(diào)變?yōu)榘瞪{(diào)。

    此外,還有第三個參數(shù)代表亮度。這玩意也是一個百分比值,數(shù)值范圍也是 0% 到 100%,用于描述顏色中黑色或白色的占比。

    CSS顏色設(shè)置方法:HEX、RGB、HSL的簡單對比

    這類似于水彩在繪畫中的使用。如果你想讓顏色更亮,你可以添加白色,如果你想讓顏色更深,你可以添加黑色。因此,100% 的亮度表示完全的白色,50% 表示實際色調(diào)顏色,0% 表示純黑色。

    HSLA 與 RGBA 類似,是 HSL 的擴展。第四個通道表示顏色的不透明度,與 RGBA 和 Hex-alpha 并無二致。不透明度以十進制值指定,就像在 RGBA 中一樣,其中 1 表示完全不透明,0 表示完全透明,中間的所有取值都是部分不透明的。

    然而,盡管大多數(shù)瀏覽器支持 RGB 和 Hex 顏色代碼,HSL 顏色主要還是在基于 HTML5 的瀏覽器中得到支持。


    你可能已經(jīng)在 CSS 中設(shè)置顏色屬性時使用過所有或部分的這些顏色方法。Hex 是我個人的最愛,但是他們之間究竟有什么區(qū)別,各自又有著怎樣的優(yōu)勢?話不多說,一起來了解一下吧!

    在 CSS 中指定顏色的最佳方法是什么?

    如果你習(xí)慣了 HTML,你可能更習(xí)慣使用 Hex 顏色值,因為 Hex 顏色值在 HTML 中被大量使用。但如果你學(xué)過設(shè)計,你可能會使用 RGB 表示法,因為它是大多數(shù)設(shè)計軟件(如 Photoshop、Corel 和 Illustrator)中最常用的格式。

    我的建議是,如果你是一名純粹的開發(fā)人員并且只想完成你的項目,請繼續(xù)使用你最熟悉的顏色方式。

    因為瀏覽器并不真正關(guān)心你使用的是哪種顏色格式,即使不同方法之間有細微的性能變化,但性能差異可以忽略不計。

    除此之外,如果你擔(dān)心可用性、決策對開發(fā)人員的影響等,讓我們看看哪種方法最適合你的情況。

    讓我們從十六進制表示法開始。由于其簡短的符號,十六進制非常有吸引力。許多開發(fā)人員發(fā)現(xiàn),與 RGB 和 HSL 相比,Hex 值非常易于閱讀,而且更容易復(fù)制到他們喜歡的文本編輯器中。

    RGB 在較舊版本的 Internet Explorer(9 及更早版本)中廣為人知并受支持。

    HSL 旨在讓人類更容易理解!

    RGB 和 Hex 等格式的機器可讀性比人類可讀性強。相反,HSL 旨在讓人類更好地理解。HSL 是一種更新且自然的顏色處理方式。

    與在 Hex 和 RGBA 中你必須通過一些數(shù)字來獲得你想要的顏色不同,在 HSL 中,我們可以使用 Hue 定義顏色并使用第二和第三個參數(shù)百分比來獲得你想要的飽和度和亮度級別。

    如果我告訴你網(wǎng)頁標(biāo)題需要是 #578557rgb(87, 133, 87),你能猜出是什么顏色嗎? 不,除非你是電腦。但是,與此同時,如果我給你 HSL 中的顏色:hsl(120, 21%, 43%)?現(xiàn)在猜測有點容易了吧? Hue 值為 120°,表示它是純綠色。接下來,它的飽和度為 61%,表明它距離暗灰色(一種非常不飽和的綠色)還有 21%。最后,亮度 43% 意味著顏色從純色到較暗的一面有 7%。

    好的,假設(shè)你想讓按鈕顏色在懸停時更亮,單擊時更暗。使用 HSL 輕而易舉 —— 只需要增加和減少亮度值,僅此而已,是不是非常吃驚?。〉窃诓皇褂霉ぞ呋蛟O(shè)計師的幫助下用十六進制或 RGB 來做到這一點是不可能的。

    HSL 是一種模仿現(xiàn)實世界的直觀顏色符號。

    例如,讓我們考慮一張淺藍色的色紙。它的三種格式的顏色值分別是:

    Hex RGB HSL
    #ADD8E6 rgb(173, 216, 230) hsl(195, 53.3%, 79%)

    好的,現(xiàn)在把你的手握在離表面幾英寸的地方。你手的影子讓表面變暗了一點,對吧?在不改變顏色本身的情況下,我們是無法使用 RGB 或十六進制表示法表示這種顏色變化的。但是在 HSL 中,我們僅僅需要稍微調(diào)整亮度值,然后就 大功告成了!我們根本不需要對原始顏色進行任何更改,是不是真的很酷?

    Hex RGB HSL
    原值 #4f2017 rgb(79, 32, 23) hsl(195, 53.3%, 79%)
    新值 #2F819D rgb(47, 129, 157) hsl(195, 53.3%, 50%)

    如你所見,Hex 和 RGB 值已經(jīng)被改到面目全非了,而對于 HSL,只有一個值發(fā)生了變化。毫無疑問,在構(gòu)建配色方案時,HSL 是最有用的。以底色為基礎(chǔ),根據(jù)需要調(diào)整飽和度和亮度,就是這樣!有了 HSL,建立一個配色方案,簡直就是小菜一碟。

    最后,這一切都取決于個人喜好!

    現(xiàn)在你可能認為 HSL 是最好的顏色表示法。但是,正如我上面提到的,舊版本的 Internet Explorer 不支持 HSL。同樣,每種顏色格式都有其優(yōu)點和缺點。問題是,這并不重要。

    最重要的是盡可能保持在項目中使用到的類型的一致性,因為它有助于提高生產(chǎn)力。

    • 和其他兩種顏色相比 Hex 有不支持透明度的限制(譯者注:Hex 是支持的……)
    • 不使用特定工具來調(diào)整 RGBA 顏色是很很困難的
    • 舊瀏覽器不支持 HSLA
      • 如果你所服務(wù)的瀏覽器支持 HSLA 那就忽略這條吧!你可以選擇使用任何格式!

    在選擇在項目中設(shè)置 CSS 顏色屬性的最佳方法時,你可以考慮以下因素。

    1、使用與開發(fā)團隊其他成員相同的格式來提高可維護性。

    2、如果你已經(jīng)熟悉 RGB 格式,請使用它。

    3、如果你的目標(biāo)訪問者使用嚴(yán)重過時的瀏覽器訪問你的網(wǎng)站,請使用 Hex,或者使用如下后備代碼:

    p {     color: #FF0000;     color: hsla(0, 100%, 50%, 1); }

    4、如果以上三點還是沒能讓你決定使用哪一種,請使用 HSLA。HSLA 允許你像 RGBA 一樣使用透明度,而且更具備可訪問性。

    有哪些替代方案?

    除了上面提到的方法,還有一些其他方法可以用來在 CSS 中設(shè)置顏色屬性。

    • 使用顏色名稱:所有現(xiàn)代瀏覽器都支持 140 個標(biāo)準(zhǔn) CSS 顏色名稱。顏色名稱是代表特定顏色的關(guān)鍵字,如 coral。
    • currentcolor 關(guān)鍵字:如果需要引用一個元素的顏色,可以使用這個關(guān)鍵字。
    • HWB 值: HWB 代表色相、白度、黑度。雖然目前 HTML 不支持它,但它被建議作為 CSS4 的新標(biāo)準(zhǔn)。
    • CMYK 值:CMYK 是青色、洋紅色、黃色和黑色的組合。盡管計算機屏幕使用 RGB 值來顯示顏色,但打印機通常使用 CMYK 顏色值來顯示顏色。與 HWB 類似,CMYK 在 HTML 中尚不支持,不過也是被建議作為 CSS4 中的新標(biāo)準(zhǔn)。

    最后

    顏色在網(wǎng)頁中起著至關(guān)重要的作用。在 CSS 中,我們能使用 RGB、Hex 和 HSL 等方法來定義顏色。在本文中,我們了解了用于在 CSS 中設(shè)置顏色屬性的三種主要方法,以及它們的區(qū)別和各自的優(yōu)缺點,還有可用于在 CSS 中定義顏色屬性的其他替代方法。

    盡管 HSLA 由于其人類可讀性而比其他兩種方法略有優(yōu)勢,但如果不是針對特定情況,則無關(guān)緊要。你可以使用任何你覺得舒服的方式。

    看看不同的優(yōu)缺點,每種方法都優(yōu)于其他方法,總而言之,決定使用哪種方式在 CSS 中設(shè)置顏色屬性應(yīng)取決于以下三個因素:

    • 偏好
    • 可維護性
    • 性能與效果

    那么,你更喜歡用什么來設(shè)置 CSS 中的顏色?Hex、RGBA、HSLA 或其他什么?原因又是什么?在評論區(qū)告訴我吧。

    英文原文地址:https://link.juejin.cn/?target=https%3A%2F%2Fblog.bitsrc.io%2Fhex-vs-rgb-vs-hsl-what-is-the-best-method-to-set-css-color-property-f45d2debeee

    原文作者:Nethmi Wijesinghe

    贊(0)
    分享到: 更多 (0)
    網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號