css中字體經常使用單位px、em、rem和%的區別及用法總結

1、px、em、rem和%的定義css

1.px(像素)html

px單位的名稱爲像素,它是一個固定大小的單元,像素的計算是針對(電腦/手機)屏幕的,一個像素(1px)就是(電腦/手機)屏幕上的一個點,即屏幕分辨率的最小分割。因爲它是固定大小的單位,單獨用它來設計的網頁,若是適應大屏幕(電腦),在小屏幕(手機)上就會很不友好,作不到自適應的效果。css3

示例:瀏覽器

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8" /> 
  <title>css px像素固定長度單位</title> 
  <style type="text/css">
    body{background-color: #aaa;}
   .px{border:1px solid red;width:300px;height:100px;font-size:30px;}
  </style>
 </head>
 <body> 
  <div class="px">
   用px單位設置元素的寬高和文本的字體大小
  </div> 
 </body>
</html>

運行結果:佈局

2.em(相對長度單位)字體

em單位用的也比較多,特別是國外;em單位的名稱爲相對長度單位,它是用來設置文本的字體尺寸的,相對於父級元素對象內文本的字體尺寸;若是沒有人爲設置當前對象內文本的字體尺寸,那麼它相對的是瀏覽器默認的字體尺寸(16px)。spa

示例:設計

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8" /> 
  <title>用em相對長度單位來設置文本的字體大小</title> 
  <style type="text/css">
    body{background-color: #aaa;}
    .div{border:1px solid red;width:300px;height:100px;font-size:30px;}
    .em{font-size:0.5em;}/*30px x 0.5 = 15px*/
  </style>
 </head>
 <body> 
  <div class="div">
   <span class="em">用em相對長度單位來設置文本的字體大小</span>
  </div> 
 </body>
</html>

運行結果:3d

說明:以上實例em是相對於父級元素div的,div設置的字體大小爲30px,因此0.5em計算後的字體大小爲:30px x 0.5 = 15pxcode

3.rem(css3新增的相對長度單位)

rem是css3新增的一個相對長度單位,它的出現是爲了解決em的缺點,em能夠說是相對於父級元素的字體大小,當父級元素字體大小改變時,又得從新計算。rem出現就能夠解決這樣的問題,rem只相對於根目錄,即HTML元素。因此只要在html標籤上設置字體大小,文檔中的字體大小都會以此爲參照標準,通常用於自適應佈局。

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8" /> 
  <title>用css3新增的相對長度單位rem來設置文本的字體大小</title> 
  <style type="text/css">
    body{background-color: #aaa;}
   .div{border:1px solid red;width:300px;height:100px;font-
 size:30px;}
   .rem{font-size:0.5rem;}/*16px x 0.5 = 8px*/ 
</style>
 </head>
 <body> 
  <div class="div">
   <span class="rem">用rem相對長度單位來設置文本的字體大小</span>
  </div> 
 </body>
</html>

說明:rem是相對於根元素html元素的,瀏覽器通常默認字體大小爲16px,全部0.5rem的計算後的字體大小爲:16px x 0.5 = 8px,跟父元素設定的30px沒有關係

4.%(百分比)

%也很常見,它和em差很少同樣,都是相對於父級元素。但%能夠在不少屬性中使用,好比:width、height、font-size等。而em是用來設置字體大小(font-size)的單位,width、height等屬性是沒有em單位的。

2、px、em、rem和%的區別與總結

  1. px是固定長度單位,不隨其它元素的變化而變化;
  2. em和%是相對於父級元素的單位,會隨父級元素的屬性(font-size或其它屬性)變化而變化;
  3. rem是相對於根目錄(HTML元素)的,全部它會隨HTML元素的屬性(font-size)變化而變化;
  4. px和%用的比較普遍一些,能夠充當更多屬性的單位,而em和rem是字體大小的單位,用於充當font-size屬性的單位
  5. 通常來講:1em = 1rem = 100% = 16 px
相關文章
相關標籤/搜索