WEB基礎之:CSS值和單位
值和單位
1. 數字
CSS中有兩類數字:整數和實數。實數定義為整數後可跟有小數點和小數部分。
2. 百分數
百分數是一個可計算得出的實數,其後跟一個百分號(%)。**百分數值幾乎總是相對於另一個值,**這個值是任意的:可能是同一個元素另一個屬性的值,也可以是從父元素繼承的一個值,或者是祖先元素的一個值。
3. 顏色
顏色可使用命名顏色、十六進位制程式碼或RGB指定。
3.1 命名顏色
/*命名顏色*/
p {color: gray;}
3.2 函式式RGB顏色
語法是rgb(color),其中color用一個百分數(範圍0%100%)或整數(範圍0255)三元組表示。
/*RGB指定顏色*/
p {color: rgb(100%, 0%, 0%)}
/*整數三元組指定顏色*/
p {color: rgb(255, 0, 0)}
如果值落在可取範圍之外,都會裁剪到最接近的範圍邊界。如大於100%或小於0%,會預設地調整為100%或0%,三元組會預設地調整為255或0。
3.3 十六進位制RGB顏色
原理:將三個介於00~FF的十六進位制數連起來組成。
若十六進位制數的3組數各自是對的,可以簡寫為:
p {color: #0F0}
3.4 Web安全顏色
在256色計算機系統上總能避免抖動的顏色。Web安全顏色可以表示為RGB值為20%和51(相應十六進位制值為33)或0%(0)的倍數。
4. 長度單位
長度單位可以劃分為絕對長度單位和相對長度單位兩類。
4.1 絕對長度單位
共有5種絕對長度單位:英寸(in)、釐米(cm)、點(pt)、派卡(pc)
1in=25.4mm =72pt=6pc
絕對長度在只有當瀏覽器知道用來顯示頁面的顯示器、所用的印表機或其他任何使用者代理的所有細節時,這些單位才會有用。
4.2 相對長度單位
根據與其他事物的關係來度量,所度量的實際(絕對)距離可能因為其他因素改變。
4.2.1 em
1em為一種給定字型的font-size值,值隨父元素的不同而不同。假設一個h1元素字型大小為24畫素,一個h2元素字型大小為18畫素,將這兩個元素的蓮距都設定為1em,那麼它們的左邊距就分別為24畫素和18畫素。
em是最靈活的,因為它隨字型大小縮放,所以元素和元素操作都能更為一致。
4.2.2 ex
指所用字型中小寫x的高度,不同字型的高度可能不同,因此ex可能不同。
4.2.3 畫素長度
1px表示一個畫素,取決於顯示裝置的解析度。而之所以畫素是相對長度,是因為顯示器上的小色框是畫素。在列印的時候,1px可能要使用96ppi參考畫素。
5. URL
絕對URL
body {background: url("https://w.wallhaven.cc/full/x1/wallhaven-x1wroo.jpg")}
相對URL
body {background: url("images/1.jpg")}
6. 關鍵字
若一個屬性接受關鍵字,那麼共關鍵字將只針對該屬性的作用域定義。
inherit: CSS2.1中所有屬性共有,使一個屬性的值與其父元素的值相同。(大多數情況下不必另外指定)。
正常情況下直接指定樣式(使用者代理的預設樣式)優於繼承樣式,但通過inherit可以將情況反過來。
#toobar {background: blue; color: white;}
#toobar a {color: inherit;}
<div id="toobar">
<a href="html1.html">one</a> | <a href="html2.html">two</a>
</div>
7. CSS2中的單位
角度值:用於定義給定聲音的發出位置。共有3種,度(deg)、梯度(grad)和弧度(rad),可換算為0~360度範圍內的度數,允許負數值。
時間值:用於指定語音元素之間的延遲,可表示為毫秒(ms)或秒(s)。1s=1000ms,不能是負數。
頻率值:用於為語音瀏覽器可以產生的聲音宣告給定頻率,可表示為赫茲(Hz)或兆赫(MHz),不能是負數。Hz或MHz標籤不區分大小寫。