本博文也是自己理解的心得體會,分享給對此還迷惑的小夥伴。
我們在寫頁面時,或者檢視別人的頁面樣式**時,時常會看到如下的四種常見的元素的大小單位:
1. pxpx是pixel的縮寫,表示畫素,所謂畫素就是呈現在我們顯示器上的乙個個小點,每個畫素點都是大小等同的,所以畫素為計量單位被分在了絕對長度單位中。
2. %百分比%就是相對于父元素尺寸來進行計算的,比如定義兩個div元素,div1包含div2,設定父div1的width為100px,子div2的width為50%,則實際上計算的結果就是:子div2的寬度是100px*50% = 50px。
3. emem就是相對於本身元素的字型尺寸來進行計算的,比如2em就是所應用元素上字型大小的兩倍。
4. remrem是css3中引入的單位,rem是相對於根元素的字型大小來進行計算的,它可以避免em因為層級巢狀太多,字型設定變的難易維護的問題,目前主流的瀏覽器除了ie8以外,大部分瀏覽器都支援rem。
這裡我主要展示下% em rem相對長度單位的使用和計算理解,對於px絕對單位就直接略過。
/* em 使用
注意:em相對於本身元素字型大小計算,如果本身元素沒有定義字型大小,那就逐級向上查詢計算,如果最高端也沒有定義,則使用預設值計算,一般瀏覽器的預設字型大小為12px*/
body
.div1
.div2
.div3
小結:想必通過簡單例子,大家已經完全理解了em的計算原理,也肯定感覺出乙個問題,就是如果我們頁面設計中巢狀的元素關係太多,使用em就需要一級一級查詢計算,這使得頁面元素字型大小難以維護和把握,所以也就有了rem的出現,很好解決了em的這個問題。
/* rem 使用
注意:rem相對於根元素字型大小計算,如果根元素字型大小沒有定義,則使用預設值計算,一般瀏覽器的預設字型大小為12px */
* .div1
.div2
.div3
/* % 使用介紹
注意:%相對于父元素尺寸大小計算*/
body
.div1
.div2
.div3
.div1,.div2,.div3
盡量設定相對尺寸
只有在預知元素尺寸下,才使用決定尺寸
使用em 或者 rem 設定頁面字型大小
咳咳,還是那句話
還是要不斷學習,因為自己還很年輕
那些年讓你迷惑的阻塞 非阻塞 非同步 同步
在it圈混飯吃,不管你用什麼程式語言 從事前端還是後端,阻塞 非阻塞 非同步 同步這些概念,都需要清晰地掌握,否則,怎麼與面試官談笑風生 chui niu pi 但是,掌握這些概念又不是非常容易,尤其對非科班出身的,更加困難。本文試圖給出乙個清晰簡明但不失深刻的介紹,希望對大家有所幫助。這些概念之所...
那些年讓你迷惑的阻塞 非阻塞 非同步 同步
在it圈混飯吃,不管你用什麼程式語言 從事前端還是後端,阻塞 非阻塞 非同步 同步這些概念,都需要清晰地掌握,否則,怎麼與面試官談笑風生 chui niu pi 但是,掌握這些概念又不是非常容易,尤其對非科班出身的,更加困難。本文試圖給出乙個清晰簡明但不失深刻的介紹,希望對大家有所幫助。這些概念之所...
Ext中的頁面排版布局總和
小小的入門 首先是怎麼得到ext中的物件 只需要乙個new關鍵字即可 例如 new ext.form.formpanel 注釋一下 這個裡面放的主要是new的這個物件裡面的配置,即他們的屬性 items 這個裡面放入的主要是物件,即直接放入可以了,不需要用 如果配置的話也要用 在jsp中寫ext的時...