CSS中你可能不知道的單位

關於界面的佈局是做前端的一個永恆的話題,無論你是用哪一種語言做何種產品,都離不開界面,那在界面佈局裏扮演重要角色的自然要屬設定UI的長寬高的單位了,在xaml裏設計的時候對於長寬高的單位並沒有界定,然而CSS中就有着天差地別,本次主要探討這個問題,ps:說了這麼多還沒開始,真是囉嗦,哈哈,例行慣例啦,就像武俠片一下,開打前都會有一段對白的啦。

1.話不多說,首先要說的單位是px(Pixel),像素。這個單位我們在實際操作過程中算是用到最頻繁的了,它是一個相對值,它的大小取決於屏幕的分辨率,好比一個800*600的屏幕,1px就是一個像素點大小,指的就是把屏幕分成480000(800*600)份等面積中的一份大小,如果這時候把屏幕分辨率調大的話例如1366*768,那1px就又會相對會變得小一點了。

2.pt(point),與px不同pt是一個絕對單位,長度等於1/72英寸,也就是0.39/72釐米,這是印刷業常用的的單位,一般用於已經明確知道的設備中。由於是絕對單位,它不會隨着屏幕分辨率或者大小變化而變化,1pt始終會佔據1/72英寸。

3.em,它是一個相對長度單位,是一個比率1em=100%,但是它是相對於當前對象內文本的尺寸,如果文本對象內文本尺寸被設置爲12px,則1em=100%*12px。如果對行內字體的尺寸未被設置,則默認爲瀏覽器的默認字體尺寸16px。

<body style="font-size:16px;">
  <p style="font-size:1em;">This is a paragraph.</p>
  <p style="font-size:2em">This is a paragraph.</p>
  <div style="width:3em;height:3em;background:red;font-size:0.2em">
    <p style="font-size:2em">This is a paragraph inside div.</p>
  </div>  
</body>

如上面的例子,給body設置的font-size是16px,第一個<p>的font-size=1*16px;第二個<p>的font-size=2*16px;第三個<p>由於對其父對象<div>設置了文本尺寸爲2em,所以其尺寸將爲16px*0.2*2。


4.rem,即是Root em,是CSS3中新定義的一種單位,它也是一個相對長度,與em不同的是rem相對的只是html的根元素。

<body style="font-size:16px;">
  <p style="font-size:1em;">This is a paragraph.</p>
  <p style="font-size:2em">This is a paragraph.</p>
  <div style="width:3em;height:3em;background:red;font-size:0.2em">
    <p style="font-size:1rem">This is a paragraph inside div.</p>
  </div>  
</body>
此時第三個<p>的font-size爲1*16px;

5.vw,即view width是基於窗口的寬度大小的單位,css3引入的新單位,例如當你的窗口寬度爲100mm時,1vw=100mm/100*1=1mm,目前該單位適用於所有主流瀏覽器,但是IE必須要在10以上。

6.vh,即view height是基於窗口高度大小的單位,同vw一樣,當你窗口高度爲100mm時,1vw=100mm/100*1=1mm,在實際運用中,製作可隨窗口大小變化的輪播圖是極爲有效的。

7.vmin,vmin指相對於視窗高度寬度中最小的一個值,即爲vw和vh中較小的值,假如視窗高度爲200mm,寬度爲100m,則1vmin=100mm/100*1。

8.vmax,vmax指相對於視窗高度寬度中最大的一個值,即爲vw和vh中較大的值,假如視窗高度爲200mm,寬度爲100m,則1vmin=200mm/100*1。

9.ex,ch,ex爲小寫字母x的高度,ch爲數字零的寬度,與em,rem相同的是他們都依賴於font-size,但ex,ch還依賴於字體的font-family。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章