轉(zhuǎn)載
1.背景介紹
????我們?yōu)槭裁匆x擇合適的網(wǎng)頁設(shè)計(jì)單位
????隨著Web的發(fā)展,對(duì)新的解決方案的需求也會(huì)繼續(xù)增大,對(duì)網(wǎng)頁的要求更高。
????網(wǎng)頁設(shè)計(jì)單位是涉及到我們布局的效果,使用不同的單位會(huì)對(duì)最終的demo,會(huì)有影響。
????現(xiàn)在都是要求響應(yīng)式設(shè)計(jì),需要適配各種設(shè)備,電腦,手機(jī),平板。如果單位不合適,可能在這個(gè)設(shè)備顯示良好,那個(gè)設(shè)備就會(huì)打亂布局。
????所以需要我們選擇合適的單位來進(jìn)行開發(fā),設(shè)計(jì)。
2.知識(shí)剖析
????1、px
????????px就是pixel的縮寫,意為像素。px就是設(shè)備或者圖片最小的一個(gè)點(diǎn),比如常常聽到的電腦像素是1024x768的,表示的是水平方向是1024個(gè)像素點(diǎn),垂直方向是768個(gè)像素點(diǎn)。
????????是我們網(wǎng)頁設(shè)計(jì)常用的單位,也是基本單位。通過px可以設(shè)置固定的布局或者元素大小,缺點(diǎn)是沒有彈性。
????????特點(diǎn)是1. em的值并不是固定的; 2. em會(huì)繼承父級(jí)元素的字體大小。
2、em
????????參考物是父元素的font-size,具有繼承的特點(diǎn)。如果自身定義了font-size按自身來計(jì)算(瀏覽器默認(rèn)字體是16px),整個(gè)頁面內(nèi)1em不是一個(gè)固定的值。
? ? ? ? 特點(diǎn)是1. em的值并不是固定的; 2. em會(huì)繼承父級(jí)元素的字體大小。
3、rem
????????rem是相對(duì)于根元素html,這樣就意味著,我們只需要在根元素確定一個(gè)參考值,可以設(shè)計(jì)HTML為大小為10px,到時(shí)設(shè)置1.2rem就是12px.以此類推。
????????優(yōu)點(diǎn)是,只需要設(shè)置根目錄的大小就可以把整個(gè)頁面的成比例的調(diào)好。
4、%
????????一般來說就是相對(duì)于父元素的,
????????1、對(duì)于普通定位元素就是我們理解的父元素
?????????2、對(duì)于position: absolute;的元素是相對(duì)于已定位的父元素?
????????3、對(duì)于position: fixed;的元素是相對(duì)于ViewPort(可視窗口),
5、vw
????????css3新單位,view width的簡(jiǎn)寫,是指可視窗口的寬度。假如寬度是1200px的話。那10vw就是120px
????????舉個(gè)例子:瀏覽器寬度1200px, 1 vw = 1200px/100 = 12 px。
6、vh
????????css3新單位,view height的簡(jiǎn)寫,是指可視窗口的高度。假如高度是1200px的話。那10vh就是120px
????????舉個(gè)例子:瀏覽器高度900px, 1 vh = 900px/100 = 9 px。
7、vm
????????css3新單位,相對(duì)于視口的寬度或高度中較小的那個(gè)。其中最小的那個(gè)被均分為100單位的vm 舉個(gè)例子:瀏覽器高度900px,寬度1200px,取最小的瀏覽器高度,1 vm = 900px/100 = 9 px。
????????兼容性太差 ,現(xiàn)在基本上沒人用,我試了一下Chrome就用不了。
3.常見問題
????????假如使用em來設(shè)置文字大小要注意什么?
????解決方案
????????注意父元素的字體大小,因?yàn)閑m是根據(jù)父元素的大小來設(shè)置的。比如同樣是1.5em,要是父元素是20,那1.5em就是30px.要是父元素是30px,1.5em就是45px.
????????特別是在多重div嵌套里面更要注意。??
4.擴(kuò)展思考
????????css還有哪些長度單位?
????????in:寸
????????cm:厘米
????????mm:毫米
????????t:point,大約1/72寸
????????pc:pica,大約6pt,1/6寸? ?
5.更多問題
????1.pc pt ch一般用在什么場(chǎng)景?
????????????這些我們網(wǎng)頁設(shè)計(jì)基本上用不到,在排版上會(huì)有用處。
? ? 2.如何使 1rem=10px
????????????在設(shè)置HTML{font-size:62.5%;}即可
? ? 3.如果父元素沒有指定高度,那么子元素的百分比的高度是多少?
????????????會(huì)按照子元素的實(shí)際高度,設(shè)置百分比已經(jīng)沒有效果了。