CSS3中REM使用詳解

來源:互聯網
上載者:User

標籤:web前端   com   預設   www.   完全   自己的   blank   沒有   bsp   

在頁面中設定字型,我們知道有常見的兩種,px 和 em.

px

在Web頁面製作中,我們一般使用“px”來設定我們的文本,因為他比較穩定和精確。但是這種方法存在一個問題,當使用者在瀏覽器中瀏覽我們製作的Web頁面時,他改變了瀏覽器的字型大小(雖然一般人不會去改變瀏覽器字型大小),這時會使用我們的Web頁面配置被打破,這時就提出了使用“em”來定義Web頁面的字型。

em

一般都是bodyfont-size為基準
常用寫法:

01020304050607080910111213141516 body {    font-size: 62.5%;    /*10 ÷ 16 × 100% = 62.5%*/}h1 {    font-size: 2.4em;    /*2.4em × 10 = 24px */}p {    font-size: 1.4em;    /*1.4em × 10 = 14px */}li {    font-size: 1.4em;    /*1.4 × ? = 14px ? */}

為什麼“li”的“1.4em”是不是“14px”將是一個問號呢?在使用“em”作單位時,一定需要知道其父元素的設定,因為“em”就是一個相對值,而且是一個相對於父元素的值,
計算公式:1 ÷ 父元素的font-size × 需要轉換的像素值 = em值
這樣的情況下“1.4em”可以是“14px”,也可以是“20px”,或者說是“24px”,總之是一個不確定值,那麼解決這樣的問題,要麼你知道其父元素的值,要麼呢在任何子項目中都使用“1em”。

rem

rem:W3C官網描述是“font size of the root element”,即rem是相對於根項目。
我們只需要在根項目確定一個參考值,在根項目中設定多大的字型,這完全可以根據您自己的需,大家也可以參考:

嫌換算麻煩的同學,也可以去http://pxtoem.com/這個網站去設定
常用寫法:

010203040506070809101112 html {    font-size: 62.5%;    /*10 ÷ 16 × 100% = 62.5%*/}body {    font-size: 1.4rem;    /*1.4 × 10px = 14px */}h1 {    font-size: 2.4rem;    /*2.4 × 10px = 24px*/}

在根項目中定義了一個基本字型大小為62.5%(也就是10px。設定這個值主要方便計算,如果沒有設定,將是以“16px”為基準 )。從上面的計算結果,我們使用“rem”就像使用“px”一樣的方便,而且同時解決了“px”和“em”兩者不同之處。
註:在Chrome下,預設最下字型為12px,可以設定font-size: 625%,其他以此類推

瀏覽器安全色性

IE9以上等支援CSS3的瀏覽器是肯定可以支援的,如果想要相容IE低版本,那可以考慮針對IE9以下低版本瀏覽器,用px來實現。

AD:【chrome二維碼外掛程式】w3cways QR Code Generator轉載請註明來源:Web前端(W3Cways.com) - Web前端學習之路 ? CSS3中REM使用詳解

CSS3中REM使用詳解

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.