一:box-sizing
1:box-sizing 屬性允許您以特定的方式定義匹配某個區域的特定元素。
2:默認值 content-box
3:content-box----在寬度和高度之外繪制元素的內邊距和邊框 即寬度和高度只包括內容區域的寬高
4:border-box-----為元素指定的任何內邊距和邊框都將在已設定的寬度和高度內進行繪制。即通過從已設定的寬度和高度分別減去邊框和內邊距才能得到內容的寬度和高度。
二:px em和rem的比較
1:PX
含義:px像素(Pixel)。相對長度單位。像素px是相對于顯示器屏幕分辨率而言,用PX設置字體大小時,比較穩定和精確。
特點:
? ? ? ? ?這種方法存在一個問題,當用戶在瀏覽器中瀏覽我們制作的Web頁面時,如果改變了瀏覽器的縮放,這時會使用我們的Web頁面布局被打破,
? ? ? ? ? ?IE無法調整那些使用px作為單位的字體大小;
2:EM
含義:em是相對于父元素的font-size屬性值來計算的 ? em是相對長度單位。相對于當前對象內文本的字體尺寸。如當前對行內文本的字體尺寸未被人為設置,則相對于瀏覽器的默認字體尺寸
特點:
? ? ? ? em的值并不是固定的;
? ? ? ? ?存在一個問題,進行任何元素設置,都有可能需要知道他父元素的大小。
注意:任意瀏覽器的默認字體高都是16px。
? ? ? ? ? 所有未經調整的瀏覽器都符合: 1em=16px。那么12px=0.75em,10px=0.625em。為了簡化font-size的換算,需要在css中的body選擇器中聲明Font-size=62.5%,這就使em值變為 16px*62.5%=10px, 這樣12px=1.2em, 10px=1em, 也就是說只需要將你的原來的px數值除以10,然后換上em作為單位就行了。
? ? ? ? ? 重新計算那些被放大的字體的em數值。避免字體大小的重復聲明。
三:REM
含義:rem是CSS3新增的一個相對單位,使用rem為元素設定字體大小時,仍然是相對大小,但相對的只是HTML根元素
特點:?既可以做到只修改根元素就成比例地調整所有字體大小,又可以避免字體大小逐層復合的連鎖反應。目前,除了IE8及更早版本外,所有瀏覽器均已支持rem
px 與 rem 的選擇
對于只需要適配少部分手機設備,且分辨率對頁面影響不大的,使用px即可 。
對于需要適配各種移動設備,使用rem,例如只需要適配iPhone和iPad等分辨率差別比較挺大的設備。