css 字型單位之間的區分以及字型響應式實現,css字型

來源:互聯網
上載者:User

css 字型單位之間的區分以及字型響應式實現,css字型

問題情境:

在實現響應式布局的過程中,如何設定字型大小在不同的視窗尺寸以及不同的行動裝置的可讀性?

 

需要瞭解的有:

1.px,em,pt之間的換算關係

1em = 16px

1px  = 1/16 em = 0.0625em

////以下用的比較少//////

1em = 12pt

1px = 3/4 pt = 0.75pt

1pt = 1/12 em 0.0833em

1pt = 4/3 px = 1.3333px

 

 

2.任意瀏覽器預設字型都是16px。所有未經調整的瀏覽器預設尺寸為 1em=16px

 

3.chrome強制最小字型為12px,即使設定成10px,最終會顯示成12px。這點解釋了為什麼有時候在ie或mozllia裡的字型大小與chrome有初入

 

4.px,em,rem vw,vh,vmin的區別在哪?

px:

相對單位。相對於螢幕解析度。這就是為什麼解析度越大字型越小的原因所在。那px的優缺點又如何?

優點:比較穩定、精確。

缺點:如果對頁面進行縮放,影響文本可讀性。可通過使用em作為字型單位解決這個問題。

 

em:

相對單位。根據基準數值縮放字型大小,是一個相對值,而非具體值。基準值取決於,父級元素所設定的font-size。如果父級元素未設定font-size 依次向上尋找直到根節點。

優點:彌補了px的不足

缺點:過於依賴父級節點,容易出現字型大小重複聲明。

 

rem:

相對單位。相對於根結點html的字型大小。

缺點:避免了em依賴父級元素字型大小

優點:參考系只有一個,根節點字型大小

html{font-size:100%}//響應式的字型大小相對於根節點變化@media (min-width: 640px) { body {font-size:1rem;} }@media (min-width:960px) { body {font-size:1.2rem;} }@media (min-width:1100px) { body {font-size:1.5rem;} }

 

5.為什麼根結點字型大小要設定成62.5%?

 

上面介紹過瀏覽器預設字型大小為16px,如果想要在不同的頁面尺寸下設定字型大小分別為12、14、18px怎麼辦?

html{font-size:16px}//響應式的字型大小相對於根節點變化@media (min-width: 640px) { body {font-size:12/16 rem;font-size:12px;  /某些瀏覽器不支援rem,需要再次使用px 聲明font-size/} }@media (min-width:960px)  { body {font-size:14/16 rem; font-size:14px; /*某些瀏覽器不支援rem,需要再次使用px聲明font-size*/} }@media (min-width:1100px) { body {font-size:18/16 rem; font-size:18px; /*同上*/} }

 

難道必須使用 12/16 rem,14/16rem,18/16rem 這種方式來計算字型的相對大小嗎?

更簡便的方式,在根結點設定字型大小為10px,這樣一來在media裡可以直接寫成1.2rem,1.4rem,1.8rem。 根結點如果設定成10px,那麼相對於瀏覽器預設字型大小為 font-size:10/16 % 即 font-size:62.5%

html{font-size:10px}//響應式的字型大小相對於根節點變化@media (min-width: 640px) { body {font-size:1m=1.2 rem;font-size:12px;  /某些瀏覽器不支援rem/} }@media (min-width:960px)  { body {font-size:1.4 rem; font-size:14px; /*某些瀏覽器不支援rem,需要再次使用px聲明font-size*/} }@media (min-width:1100px) { body {font-size:1.8 rem; font-size:18px; /*同上*/} }

  

 

參考內容:

響應式設計:使用響應式字型 http://www.w3cplus.com/responsive/understanding-responsive-web-design-how-to-manage-fonts.html

響應式十日談:第一日 http://ued.taobao.org/blog/2013/05/rem-font-size/

關於字型大小適配:px rem em的組合使用 http://suqing.iteye.com/blog/2042739

Use legible font sizes https://varvy.com/mobile/legible-font-size.html

Responsive Font Size  http://stackoverflow.com/questions/15649244/responsive-font-size

Viewport Sized Typography https://css-tricks.com/viewport-sized-typography/

Responsive Font Size with CSS  http://codeitdown.com/responsive-font-size-css/

Responsive typography with REMs: How to build a scalable typographic foundation in three steps  http://blog.bugsnag.com/responsive-typography-with-rems

css font-size:em、px、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.