1. 程式人生 > >CSS之px、em、rem、pt的用法和區別

CSS之px、em、rem、pt的用法和區別

分辨 計算機系統 字符 css dpi logs pre 國外 12px

px:一個虛擬長度單位,是計算機系統的數字化圖像長度單位,換算成物理長度,需要制定經度DPI。Windows系統默認是96dpi,Apple系統默認是72dpi。

  一個相對長度單位,像素px是相對於顯示器屏幕分辨率而言的。

但IE無法調整哪些使用px作為單位的字體大小,國外的大部分網站能夠調整的原意在於其使用了em或者rem作為字體單位。

em:一個相對長度單位,一般指字符寬度的倍數,用法類似百分比,如:0.8em,通常1em=16px。

   相對於當前對象內文本的字體尺寸,如當前對行內文本的字體尺寸未被認為設置,則相對於瀏覽器的默認字體尺寸。

但em值並不固定,它會繼承父級元素的字體大小。

“任意瀏覽器的默認字體高都是16px。所有未經調整的瀏覽器都符合: 1em=16px。那麽12px=0.75em,10px=0.625em。為了簡化font-size的換算,需要在css中的body選擇器中聲明 Font-size=62.5%,這就使em值變為 16px*62.5%=10px, 這樣12px=1.2em, 10px=1em, 也就是說只需要將你的原來的px數值除以10,然後換上em作為單位就行了。”

rem:是CSS3新增的一個相對單位,

pt:一個物理單位長度,指的是72分之一英寸。

em和rem

em和rem的區別在於使用rem為元素設定字體大小時,仍然是相對大小,但相對的只是HTML根元素,這個單位可謂是集相對大小和絕對大小的優點於一身,通過他既可以做到只修改根元素就成比例地調整所有字體大小,又可以避免字體大小逐層復合的連鎖反應,目前,除了IE8及更早版本外,所有瀏覽器都已支持rem。對於不支持的瀏覽器,應對方法也很簡單,就是多寫一個絕對單位的聲明。這些瀏覽器會忽略rem設定的字體大小

CSS之px、em、rem、pt的用法和區別