css 盒子模型

作為一枚前端開發(fā)工程師茸塞,首先一定要清楚盒子模型是什么抵代,因為盒子模型是html+css中最核心的基礎知識攀唯,理解了這個重要的概念才能更好的排版,進行頁面布局媚朦。

一.盒子模型概念

CSS盒子模型 又稱 框模型(Box Model),包含了元素內容(content)氧敢、內邊距(padding)、邊框(border)询张、外邊距(margin)幾個要素孙乖。如下圖所示:

盒子模型

圖中最內部的框是元素的實際內容,也就是元素框份氧,緊挨著元素框外部的是內邊距padding唯袄,其次是邊框(border),然后最外層是外邊距(margin),整個構成了框模型。通常我們設置的背景顯示區(qū)域蜗帜,就是內容恋拷、內邊距、邊框 這一塊范圍厅缺。而外邊距margin是透明的梅掠,不會遮擋周邊的其他元素。

那么店归,

元素框的總寬度 = 元素(element)的width + padding的左邊距和右邊距的值 + margin的左邊距和右邊距的值 + border的左右寬度

元素框的總高度 = 元素(element)的height + padding的上下邊距的值 + margin的上下邊距的值 + border的上下寬度

二.CSS外邊距合并(疊加)

兩個上下方向相鄰的元素框垂直相遇時阎抒,外邊距會合并,合并后的外邊距的高度等于兩個發(fā)生合并的外邊距中較高的那個邊距值消痛,如圖:


示例圖


比較容易理解且叁,所以在頁面中有時候遇到實際情況是需要考慮這個因素的。當然外邊距合并其實也有存在的意義秩伞,如下圖所示:

需要注意的是:只有普通文檔流中塊框的垂直外邊距才會發(fā)生外邊距合并逞带。行內框、浮動框或絕對定位之間的外邊距不會合并纱新。

css reset中也會經常用到:

* { margin: 0; padding: 0; }

三.box-sizing屬性介紹

box-sizing屬性是用戶界面屬性里的一種展氓,之所以介紹它,是因為這個屬性跟盒子模型有關脸爱,而且在css reset中有可能會用到它遇汞。

box-sizing:content-box|border-box|inherit;

1.content-box:默認值,可以使設置的寬度和高度應用到元素的內容框。盒子的width只包含內容空入。

即络它, 總寬度 = margin + border + padding + width

2.border-box:設置的width值其實是除margin外的border+padding+element的總寬度。盒子的width包含border+padding+內容

即歪赢,總寬度=margin+width

很多CSS框架化戳,都會對盒子模型的計算方法進行簡化。

3.inherit:規(guī)定應從父元素繼承box-sizing屬性的值

關于border-box的使用:

(1)一個box寬度為100%埋凯,又想要兩邊有內間距点楼,這時候用就比較好。

(2)全局設置border-box很好白对,首先它符合直覺盟步,其次它還可以省去一次又一次的加加減減,它還有一個關鍵作用——讓有邊框的盒子正常使用百分比寬度躏结。

四.實際開發(fā)中遇到的和框模型有關的應用以及小問題

1.margin越界 [第一個子元素的margin-top和最后一個子元素的margin-bottom的越界問題]

以第一個子元素的margin-top為例:

當父元素沒有邊框border時,設置第一個子元素的margin-top值的時候狰域,會出現(xiàn)margin-top值加在父元素上的現(xiàn)象媳拴,解決方法有四個:

(1)給父元素加邊框border [副作用]

(2)給父元素設置padding值 [副作用]

(3)父元素添加overflow:hidden [副作用]

(4)父元素加前置內容生成 [推薦]

css代碼
html代碼

2.瀏覽器間的盒子模型

(1)ul標簽在Mozilla中默認是有padding值的,而在IE中只有margin有值兆览,

(2)標準盒子模型與IE模型之間的差異:

標準的盒子模型就是上述介紹的那種屈溉,而IE模型更像是box-sizing:border-box;其內容寬度還包含了border和padding。解決辦法就是:在html模板中加doctype聲明抬探。

3.用盒子模型畫三角形


triangle

.triangle{ width: 0; height: 0; border-left:100px solid transparent; border-right:100px solid transparent; border-bottom:100px solid pink; } /* 可以設置4個方向的 三角形*/

上班時間整理寫出來子巾,別人看我一直敲鍵盤,^_^ ?(#^.^#)? O(∩_∩)O哈哈~

tired
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末小压,一起剝皮案震驚了整個濱河市线梗,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌怠益,老刑警劉巖仪搔,帶你破解...
    沈念sama閱讀 211,376評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異蜻牢,居然都是意外死亡烤咧,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,126評論 2 385
  • 文/潘曉璐 我一進店門抢呆,熙熙樓的掌柜王于貴愁眉苦臉地迎上來煮嫌,“玉大人,你說我怎么就攤上這事抱虐〔ⅲ” “怎么了?”我有些...
    開封第一講書人閱讀 156,966評論 0 347
  • 文/不壞的土叔 我叫張陵,是天一觀的道長宝泵。 經常有香客問我好啰,道長,這世上最難降的妖魔是什么儿奶? 我笑而不...
    開封第一講書人閱讀 56,432評論 1 283
  • 正文 為了忘掉前任柱查,我火速辦了婚禮,結果婚禮上撤防,老公的妹妹穿的比我還像新娘叙谨。我一直安慰自己,他們只是感情好瓤鼻,可當我...
    茶點故事閱讀 65,519評論 6 385
  • 文/花漫 我一把揭開白布秉版。 她就那樣靜靜地躺著,像睡著了一般茬祷。 火紅的嫁衣襯著肌膚如雪清焕。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,792評論 1 290
  • 那天祭犯,我揣著相機與錄音秸妥,去河邊找鬼。 笑死沃粗,一個胖子當著我的面吹牛粥惧,可吹牛的內容都是我干的。 我是一名探鬼主播最盅,決...
    沈念sama閱讀 38,933評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼突雪,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了涡贱?” 一聲冷哼從身側響起咏删,我...
    開封第一講書人閱讀 37,701評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎问词,沒想到半個月后饵婆,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經...
    沈念sama閱讀 44,143評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡戏售,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,488評論 2 327
  • 正文 我和宋清朗相戀三年侨核,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片灌灾。...
    茶點故事閱讀 38,626評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡搓译,死狀恐怖,靈堂內的尸體忽然破棺而出锋喜,到底是詐尸還是另有隱情些己,我是刑警寧澤豌鸡,帶...
    沈念sama閱讀 34,292評論 4 329
  • 正文 年R本政府宣布,位于F島的核電站段标,受9級特大地震影響涯冠,放射性物質發(fā)生泄漏。R本人自食惡果不足惜逼庞,卻給世界環(huán)境...
    茶點故事閱讀 39,896評論 3 313
  • 文/蒙蒙 一蛇更、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧赛糟,春花似錦派任、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,742評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至司倚,卻和暖如春豆混,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背动知。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評論 1 265
  • 我被黑心中介騙來泰國打工皿伺, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人拍柒。 一個月前我還...
    沈念sama閱讀 46,324評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像屈暗,于是被迫代替她去往敵國和親拆讯。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 43,494評論 2 348

推薦閱讀更多精彩內容

  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案养叛? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標簽默認的外補...
    _Yfling閱讀 13,737評論 1 92
  • 前言 總括: 對于盒子模型种呐,BFC,IFC和外邊距合并等概念和問題的總結 原文地址:從CSS盒子模型說起 知乎專欄...
    秦至閱讀 757評論 0 3
  • 1. 前言 前端圈有個“蛊”:在面試時爽室,問個css的position屬性能刷掉一半人,其中不乏工作四五年的同學淆攻。在...
    YjWorld閱讀 4,428評論 5 15
  • 最近在工作中遇到很多樣式的問題阔墩,雖然是解決了但是總覺得自己知其然而不知其所以然。今天簡單的了解了盒子模型瓶珊,解開了我...
    魏永_Owen_Wei閱讀 443評論 0 0
  • 學會使用CSS選擇器熟記CSS樣式和外觀屬性熟練掌握CSS各種選擇器熟練掌握CSS各種選擇器熟練掌握CSS三種顯示...
    七彩小鹿閱讀 6,306評論 2 66