css3學習--rem終極奧秘解析及css度量單位全解密

一.css度量單位
要想了解rem這個單位的原理以及使用方法刨疼,先來了解下css所有的度量單位。很多同學不太清楚的是鹅龄,在 CSS 中長度單位又分為絕對長度和相對長度揩慕。

1.絕對長度
絕對長度指的是現(xiàn)實世界的度量單位,CSS 支持五種絕對長度單位扮休。

in 英寸
cm 厘米
mm 毫米
pt 磅
pc pica

其中:1in = 2.54cm = 25.4 mm = 72pt = 6pc ,絕對長度在實際開發(fā)項目中較少使用迎卤。

2.相對長度
相對長度指的是依托其他類型的單位,同樣也是五種玷坠。

em 與元素字號掛鉤
ex 與元素字體的“x 高度”掛鉤
rem 與根元素的字號掛鉤
px 像素蜗搔,與分辨率掛鉤
% 相對另一值的百分比

大家平時寫項目也大概能知道,em,px,和%在以往的項目的使用較頻繁侨糟,而rem這個新增單位慢慢被越來越多的人使用碍扔。

3.下面我們使用一些以往常用的單位(em,px,和%)作為演示,只有了解它們的工作原理和機制秕重,才能更好的理解rem的原理和機制。

(1)em 相對單位

//em 相對單位
p {
margin: 0;
padding: 0;
background: silver;
font-size: 15px;
height: 2em;
}

解析:em 是相對單位厉膀,與字號大小掛鉤溶耘,會根據(jù)字體大小改變自己的大小二拐,靈活性很高。如代碼所示凳兵,這個元素設置的font-size:為15培px,也就是這個元素的1em = 15px,那它的height為2 * 15px = 30px,關(guān)鍵點在于百新,使用em這個相對單位這里的em值只與本元素的font-size相關(guān)聯(lián),而rem這個相對單位是與根元素的font-size相關(guān)聯(lián),這個后面會細講庐扫。

(2)px 相對單位饭望,絕對特性

//px 相對單位,絕對特性
p {
margin: 0;
padding: 0;
background: silver;
font-size: 15px;
height: 55px;
}

解析:雖然 px 也是相對單位形庭,但由于和分辨率掛鉤铅辞,導致他其實就變成一個絕對單位了,自然靈活性沒有 em 高萨醒,但是使用難度較低斟珊,且大量的開發(fā)者習慣性使用它。

(3)%百分比

//%百分比
p {
margin: 0;
padding: 0;
background: silver;
font-size: 200%;
width: 50%;
}

解析:長度比較好理解富纸,就是掛鉤它所在區(qū)塊的寬度囤踩。而 font-size 則是繼承到的原始大小的百分比。

二.rem使用揭秘

rem的官方描述為為font size of the root element晓褪,之前說到過em是相對于其父元素來設置字體大小的堵漱,這樣就會存在一個問題,進行任何元素設置涣仿,都有可能需要知道他父元素的大小怔锌,在我們多次使用時,就會帶來無法預知的錯誤風險变过。而rem是相對于根元素<html>埃元,也就是說,我們只需要在根元素確定一個font size值媚狰,這樣就可以規(guī)避無法預知父元素font size值的風險岛杀,這就是之所以使用rem取代em的原因。

html {
font-size: 100px;
}
body {
font-size: 0.18rem;  /*0.18 × 100px = 18px */
}
p {
margin: 0;
padding: 0;
background: silver;
height: 0.28rem;  /*0.28 × 100px = 28px */;
width: 50%;
}

解析:如上述代碼所示崭孤,設置根元素html的font-size為100px,如果想要給body的font-size設置為18px,演算的結(jié)果就是18px % 100px = 0.18 rem;同理想要給p元素的height設置為28px,便是28px % 100px = 0.28 rem类嗤。也就是說,
10px = 1rem 在根元素(font-size = 10px(62.5%)的時候)辨宠;·
100px = 1rem 在根元素(font-size = 100px(625%)的時候)遗锣;
40px = 1rem 在根元素(font-size = 40px(250%)的時候);

注意: 因為chrome下最小字體大小為12px嗤形,所以不能把html的font-size設置成1px或者10px精偿,推薦使用100px。

三.rem兼容性

rem畢竟是css3新的一個度量單位,支持的瀏覽器比如:Mozilla Firefox 3.6+笔咽、Apple Safari 5+搔预、Google ChromeIE9+Opera11+叶组。不出所料IE6-8無法兼容的拯田,所以rem的適用性很有局限,大部分場景用于只在移動端展示的頁面甩十。如果你的頁面還需要適配到pc端船庇,那么就老老實實的使用px吧。

如果只是用來放在移動端的頁面侣监,別人卻在pc上打開了鸭轮,因此可以設置一個html的最大寬度與最小寬度。580px就是手機上瀏覽器的最大寬度达吞。

html {
    max-width: 580px;
    min-height: 320px;
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末张弛,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子酪劫,更是在濱河造成了極大的恐慌吞鸭,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,602評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件覆糟,死亡現(xiàn)場離奇詭異刻剥,居然都是意外死亡,警方通過查閱死者的電腦和手機滩字,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,442評論 2 382
  • 文/潘曉璐 我一進店門造虏,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人麦箍,你說我怎么就攤上這事漓藕。” “怎么了挟裂?”我有些...
    開封第一講書人閱讀 152,878評論 0 344
  • 文/不壞的土叔 我叫張陵享钞,是天一觀的道長。 經(jīng)常有香客問我诀蓉,道長栗竖,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,306評論 1 279
  • 正文 為了忘掉前任渠啤,我火速辦了婚禮狐肢,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘沥曹。我一直安慰自己份名,他們只是感情好碟联,可當我...
    茶點故事閱讀 64,330評論 5 373
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著同窘,像睡著了一般玄帕。 火紅的嫁衣襯著肌膚如雪部脚。 梳的紋絲不亂的頭發(fā)上想邦,一...
    開封第一講書人閱讀 49,071評論 1 285
  • 那天,我揣著相機與錄音委刘,去河邊找鬼丧没。 笑死,一個胖子當著我的面吹牛锡移,可吹牛的內(nèi)容都是我干的呕童。 我是一名探鬼主播,決...
    沈念sama閱讀 38,382評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼淆珊,長吁一口氣:“原來是場噩夢啊……” “哼夺饲!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起施符,我...
    開封第一講書人閱讀 37,006評論 0 259
  • 序言:老撾萬榮一對情侶失蹤往声,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后戳吝,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體浩销,經(jīng)...
    沈念sama閱讀 43,512評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,965評論 2 325
  • 正文 我和宋清朗相戀三年听哭,在試婚紗的時候發(fā)現(xiàn)自己被綠了慢洋。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,094評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡陆盘,死狀恐怖普筹,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情隘马,我是刑警寧澤太防,帶...
    沈念sama閱讀 33,732評論 4 323
  • 正文 年R本政府宣布,位于F島的核電站祟霍,受9級特大地震影響杏头,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜沸呐,卻給世界環(huán)境...
    茶點故事閱讀 39,283評論 3 307
  • 文/蒙蒙 一醇王、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧崭添,春花似錦寓娩、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,286評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽寞埠。三九已至,卻和暖如春焊夸,著一層夾襖步出監(jiān)牢的瞬間仁连,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,512評論 1 262
  • 我被黑心中介騙來泰國打工阱穗, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留饭冬,地道東北人。 一個月前我還...
    沈念sama閱讀 45,536評論 2 354
  • 正文 我出身青樓揪阶,卻偏偏與公主長得像昌抠,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子鲁僚,可洞房花燭夜當晚...
    茶點故事閱讀 42,828評論 2 345

推薦閱讀更多精彩內(nèi)容