很基礎的一個(gè)問(wèn)題,但是,其實(shí)看起來(lái)很復雜的樣子~~我們來(lái)捋一捋吧~~
css3中也對css中用到的單位進(jìn)行了改進(jìn),單位也就是那幾個(gè),所以我們要搞清楚再用。
我們常用的有px、%、em,px就不多說(shuō)了,em和%多說(shuō)點(diǎn)兒:
123 | .box{line-height:1.3em;} |
元素的行高是當前元素繼承的font-size的1.3倍,
123 | .box{font-size:1.3em;} |
當前元素的字體大小是其繼承的font-size的1.3倍。
123 | .box{line-height:130%;} |
元素的行高是當前元素繼承的font-size的130%倍,等同于1.3em。
123 | .box{font-size:130%;} |
當前元素的字體大小是其繼承的font-size的130%倍,等同于1.3em。
恩,迷惑了嗎?
em就是基于當前元素的(如果沒(méi)設置就是繼承其父元素的)font-size。
而%對于font-size、line-height等,是基于其父元素的font-size的,而對于text-indent、margin、padding、width等屬性,則是基于父元素的寬度的。
css3中引入了一些新的單位:
顯然vw、vh、vmin是針對移動(dòng)設備的,如果視窗大小變化了,這三個(gè)值也會(huì )跟著(zhù)相應的變化。
rem單位感覺(jué)就是px+em的變體,是否值得使用還要看你自己的取舍:沒(méi)有px精確也沒(méi)有em靈活——或者說(shuō),比px靈活,比em更精確~~。。。XD。。。
其實(shí)不用擔心,傳說(shuō),各個(gè)瀏覽器史無(wú)前例的默認font-size:16px;,所以,即便你在樣式文件中忘了定義font-size初始值,也可以放心的使用em、rem。
rem,各瀏覽器基本都支持了, IE9+、FF3.6+、Chrome、Safari 5+、以及 Opera 11.6+
vw、vh、vmin,瀏覽器支持并不樂(lè )觀(guān),IE9支持了,Chrome目前不支持,Chrome 20將會(huì )重新支持(貌似之前支持過(guò)?)、Safari也即將支持了吧,Opera和Firefox也還都不支持。
聯(lián)系客服