很基礎的一個問題,但是,其實看起來很復雜的樣子~~我們來捋一捋吧~~
css3中也對css中用到的單位進行了改進,單位也就是那幾個,所以我們要搞清楚再用。
%——百分比 in——寸 cm——厘米 mm——毫米 pt——point,大約1/72寸; pc——pica,大約6pt,1/6寸; px——屏幕的一個像素點; em——元素的font-size; ex——font-size的x-height值,為小寫字母x的高度,通常相當于font-size的一半。我們常用的有px、%、em,px就不多說了,em和%多說點兒:
.box{font-size:130%;}
當前元素的字體大小是其繼承的font-size的130%倍,等同于1.3em。
恩,迷惑了嗎?
em就是基于當前元素的(如果沒設置就是繼承其父元素的)font-size。
而%對于font-size、line-height等,是基于其父元素的font-size的,而對于text-indent、margin、padding、width等屬性,則是基于父元素的寬度的。
CSS3中的單位:css3中引入了一些新的單位:
ch——字符0(零)的寬度; rem——根元素(html元素)的font-size; vw——viewpoint width,視窗寬度,1vw等于視窗寬度的1%; vh——viewpoint height,視窗高度,1vh等于視窗高度的1%; vmin——vw和vh中較小的那個。顯然vw、vh、vmin是針對移動設備的,如果視窗大小變化了,這三個值也會跟著相應的變化。
rem單位感覺就是px+em的變體,是否值得使用還要看你自己的取舍:沒有px精確也沒有em靈活——或者說,比px靈活,比em更精確~~。。。XD。。。
如果沒有定義font-size怎么辦?其實不用擔心,傳說,各個瀏覽器史無前例的默認font-size:16px;,所以,即便你在樣式文件中忘了定義font-size初始值,也可以放心的使用em、rem。
瀏覽器支持:rem,各瀏覽器基本都支持了, IE9+、FF3.6+、Chrome、Safari 5+、以及 Opera 11.6+
vw、vh、vmin,瀏覽器支持并不樂觀,IE9支持了,Chrome目前不支持,Chrome 20將會重新支持(貌似之前支持過?)、Safari也即將支持了吧,Opera和Firefox也還都不支持。
新聞熱點
疑難解答