box-sizing屬性可以為三個值之一:content-box(default),border-box,padding-box。
content-box,border和padding不計算入width之內【width就為content內容的寬度】,默認模式,標準的w3c模型。
padding-box,padding計算入width內
border-box,border和padding計算入width之內,其實就是怪異模式了~[ie模型],content=width-border-padding。
其實意思就是說我們定義的width和height是否包含border/padding在內。一般來說,要想不改變內容所占區域,則應設置box-sizing屬性。
px像素(Pixel),相對長度單位。像素px是相對于顯示器屏幕分辨率而言的。
◆em是相對長度單位,相對于當前對象內文本的字體尺寸。如當前對行內文本的字體尺寸未被人為設置,則相對于瀏覽器的默認字體尺寸。
因此用px來定義字體,就無法用瀏覽器字體放大的功能。
任意瀏覽器的默認字體高都是16px。所有未經調整的瀏覽器都符合:1em=16px。那么12px=0.75em,10px=0.625em。為了簡化font-size的換算,需要在css中的body選擇器中聲明Font-size:62.5%,這就使em值變為16px62.5%=10px,這樣12px=1.2em,10px=1em,也就是說只需要將你的原來的px數值除以10,然后換上em作為單位就行了。
◆CSS中em屬性有如下特點
1.em的值并不是固定的;
2.em會繼承父級元素的字體大小。
◆所以我們在寫CSS的時候,需要注意
1.body選擇器中聲明Font-size=62.5%;
2.將你的原來的px數值除以10,然后換上em作為單位;
3.重新計算那些被放大的字體的em數值。避免字體大小的重復聲明。
也就是避免1.21.2=1.44的現象。比如說你在#content中聲明了字體大小為1.2em,那么在聲明p的字體大小時就只能是1em,而不是1.2em,因為此em非彼em,它因繼承#content的字體高而變為了1em=12px。
但是12px漢字例外,就是由以上方法得到的12px(1.2em)大小的漢字在IE中并不等于直接用12px定義的字體大小,而是稍大一點。這個問題Jorux已經解決,只需在body選擇器中把62.5%換成63%就能正常顯示了。原因可能是IE處理漢字時,對于浮點的取值精確度有限。不知道有沒有其他的解釋。
css(一)
最后編輯于 :
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
推薦閱讀更多精彩內容
- 一把壺|馬伊琍談陳道明,愛喝茶的男人骨子里都透著清高 文/一把壺 圖/一把壺APP 提到陳道明,估計是沒有人會陌生...