1. 程式人生 > 實用技巧 >談談Web安全色(web safe color)

談談Web安全色(web safe color)

轉載自作者:四光年
連結:https://www.jianshu.com/p/6ec9f261ee70
來源:簡書

Web安全色對於大多數寫程式的人來說都是毫無概念,當然,web safe color本身是一個歷史遺留問題,今天已經沒有太多討論的必要。在這裡介紹web安全色只是幫助還在Google “is web safe color still important”(Google搜尋到的乾貨確實比百度強很多)的朋友瞭解什麼是web安全色。216種web安全色已經成為歷史✌️

web安全色幹嘛用

和安全相對的自然是不安全,當你在mac的word下洋洋灑灑寫了幾萬字的論文,拿去影印店準備列印的時候發現TMD全亂碼了,你就能深深體會web安全色的妙用。

所謂的web安全色是指在不同的平臺下顯示效果一致的顏色。比如在mac下本來顯示深紅色,但是在windows下可能被渲染成其他顏色。

簡而言之,採用web安全色能夠保證在不同平臺上的效果與預期一致。

為什麼為出現web安全色

在256色計算機系統上總能避免抖動的顏色——《CSS權威指南》

顯示器顯示不同顏色的原理是對紅綠藍的不同組合,在CRT計算機顯示器中,有三支分別發射三種三種光的”槍“,通過控制不同光束的強度,構成各種顏色。

說web安全色的產生前,先科普下顏色的表示:

顏色的表示方法有很多種,具體參加維基百科

在此只說明16進位制的表示方法,如果我們需要白色,通常的寫法是#FFFFFF

或者(#FFF),用兩位16進位制代表紅(綠,藍),轉換成10進位制就是(255,255,255)

那為啥就是255?

計算機能表示多少顏色取決於採用多少位用於顏色的儲存,如果使用24位,那就是我們常說的真彩色,一共可以有256*256*256種不同顏色。

再說抖動Dithering

老式的計算機受視訊記憶體大小的限制,一般只有4位~16位的空間儲存顏色,所以最多隻能顯示256種顏色,為了顯示更多的顏色,提出了抖動(dithering)的技術,抖動將不同的顏色交錯起來才生新顏色的視覺效果,如下圖:

但是不同平臺的調色盤不同,這導致採用抖動技術可能會產生不同的效果。

說到這,明白了嗎,最基礎的256中顏色其實都可以作為安全色,但是由於某些平臺只支援216中顏色(這個有人解釋下麼),所以這216中顏色正式我們所說的安全色。

安全色都是RGB值51的倍數,所以說,rgb(0,204,153)rgb(255,0,102)都是安全色。

為什麼是51的倍數,參看下圖中不同平臺下調色盤的結構:

現在已經幾乎沒有還在用256色的電腦了,所以,去它的web safe color吧。