盒子模型

盒子模型

  • 一個(gè)盒子我們會(huì)分成幾個(gè)部分:
    內(nèi)容區(qū)(content)
    內(nèi)邊距(padding)
    邊框(border)
    外邊距(margin)
  • 盒子模型分布


    圖片1.png

內(nèi)容區(qū)

  • 內(nèi)容區(qū)指的是盒子中放置內(nèi)容的區(qū)域蔚袍,也就是元素 中的文本內(nèi)容,子元素都是存在于內(nèi)容區(qū)中的谋梭。
  • 如果沒有為元素設(shè)置內(nèi)邊距和邊框昼窗,則內(nèi)容區(qū)大小 默認(rèn)和盒子大小是一致的鬼佣。
  • 通過width和height兩個(gè)屬性可以設(shè)置內(nèi)容區(qū)的大 小瓤的。
  • width和height屬性只適用于塊元素。

內(nèi)邊距

  • 內(nèi)邊距指的就是元素內(nèi)容區(qū)與邊框以內(nèi) 的空間盅抚。
  • 默認(rèn)情況下width和height不包含padding的大小润脸。
  • 使用padding屬性來設(shè)置元素的內(nèi)邊距柬脸。
  • 例如:
    1.padding:10px 20px 30px 40px
    這樣會(huì)設(shè)置元素的上、右毙驯、下倒堕、左四個(gè)方向的內(nèi)邊距。
    2.padding:10px 20px 30px;
    分別指定上爆价、左右垦巴、下四個(gè)方向的內(nèi)邊距
    3.padding:10px 20px;
    分別指定上下、左右四個(gè)方向的內(nèi)邊距
    4.padding:10px;
    同時(shí)指定上左右下四個(gè)方向的內(nèi)邊距
  • 同時(shí)在css中還提供了padding-top铭段、padding-right骤宣、padding-
    right、padding-bottom分別用來指定四個(gè)方向的內(nèi)邊距序愚。

邊框

  • 可以在元素周圍創(chuàng)建邊框憔披,邊框是元素可見框的最外部。
  • 可以使用border屬性來設(shè)置盒子的邊框:border:1px red solid;
    上邊的樣式分別指定了邊框的寬度爸吮、顏色和樣式芬膝。
  • 也可以使用border-top/left/right/bottom分別指定上右下左 四個(gè)方向的邊框。
  • 和padding一樣拗胜,默認(rèn)width和height并包括邊框的寬度蔗候。
    邊框的樣式
語法 說明
none (沒有邊框)
dotted (點(diǎn)線)
dashed (虛線)
solid (實(shí)線)
double (雙線)
groove (槽線)
ridge (脊線)
inset (凹邊)
outset (凸邊)

外邊距

  • 外邊距是元素邊框與周圍元素相距的空間怒允。
  • 使用margin屬性可以設(shè)置外邊距埂软。
  • 用法和padding類似,同樣也提供了四個(gè)方向的 margin-top/right/bottom/left。
  • 當(dāng)將左右外邊距設(shè)置為auto時(shí)勘畔,瀏覽器會(huì)將左右外 邊距設(shè)置為相等所灸,所以這行代碼margin:0 auto可 以使元素居中。
  • 外邊距重疊

相鄰元素炫七,垂直方向爬立,取最大值

內(nèi)聯(lián)元素的盒模型

  • 內(nèi)聯(lián)元素不能設(shè)置寬高
  • 可以設(shè)置水平內(nèi)邊距,垂直不影響布局
  • 可以設(shè)置水平邊框万哪,垂直不影響布局
  • 可以設(shè)置水平外邊距侠驯,不支持垂直外邊距

display

  • 我們不能為行內(nèi)元素設(shè)置width、height奕巍、 margin-top和margin-bottom吟策。
  • 我們可以通過修改display來修改元素的性 質(zhì)。
  • 可選值:
語法 說明
block: 設(shè)置元素為塊元素
inline: 設(shè)置元素為行內(nèi)元素
inline-block: 設(shè)置元素為行內(nèi)塊元素
none: 隱藏元素(元素將在頁面中完全消失)

visibility

  • visibility屬性主要用于元素是否可見的止。
  • 和display不同檩坚,使用visibility隱藏一個(gè)元 素,隱藏后其在文檔中所占的位置會(huì)依然 保持诅福,不會(huì)被其他元素覆蓋匾委。
  • 可選值:
語法 說明
visible: 可見的
hidden: 隱藏的

overflow

  • 當(dāng)相關(guān)標(biāo)簽里面的內(nèi)容超出了樣式的寬度 和高度是,就會(huì)發(fā)生一些奇怪的事情氓润,瀏 覽器會(huì)讓內(nèi)容溢出盒子赂乐。
  • 可以通過overflow來控制內(nèi)容溢出的情況。
  • 可選值:
語法 說明
visible: 默認(rèn)值
scroll: 添加滾動(dòng)條
auto: 根據(jù)需要添加滾動(dòng)條
hidden: 隱藏超出盒子的內(nèi)容

文檔流

  • 文檔流指的是文檔中可現(xiàn)實(shí)的對(duì)象在排列時(shí)所占用的位置旺芽。
  • 將窗體自上而下分成一行行沪猴,并在每行中按從左至右的順序排 放元素,即為文檔流采章。
  • 也就是說在文檔流中元素默認(rèn)會(huì)緊貼到上一個(gè)元素的右邊运嗜,如 果右邊不足以放下元素,元素則會(huì)另起一行悯舟,在新的一行中繼 續(xù)從左至右擺放担租。
  • 這樣一來每一個(gè)塊元素都會(huì)另起一行,那么我們?nèi)绻朐谖臋n 流中進(jìn)行布局就會(huì)變得比較麻煩抵怎。

浮動(dòng)

  • 所謂浮動(dòng)指的是使元素脫離原來的文本流奋救,在父元素中浮動(dòng)起來。
  • 浮動(dòng)使用float屬性反惕。
  • 可選值:
語法 說明
none: 不浮動(dòng)
left: 向左浮動(dòng)
right: 向右浮動(dòng)
  • 塊級(jí)元素和行內(nèi)元素都可以浮動(dòng)尝艘,當(dāng)一個(gè)行內(nèi)元素浮動(dòng)以后將會(huì)自動(dòng)變?yōu)橐?個(gè)塊級(jí)元素。
  • 當(dāng)一個(gè)塊級(jí)元素浮動(dòng)以后姿染,寬度會(huì)默認(rèn)被內(nèi)容撐開背亥,所以當(dāng)漂浮一個(gè)塊級(jí)元 素時(shí)我們都會(huì)為其指定一個(gè)寬度。
  • 當(dāng)一個(gè)元素浮動(dòng)以后,其下方的元素會(huì)上移狡汉。元素中的內(nèi)容將會(huì)圍繞 在元素的周圍娄徊。
  • 浮動(dòng)會(huì)使元素完全脫離文本流,也就是不再在文檔中在占用位置盾戴。
  • 元素設(shè)置浮動(dòng)以后寄锐,會(huì)一直向上漂浮直到遇到父元素的邊界或者其他 浮動(dòng)元素。
  • 元素浮動(dòng)以后即完全脫離文檔流尖啡,這時(shí)不會(huì)再影響父元素的高度橄仆。也 就是浮動(dòng)元素不會(huì)撐開父元素。
  • 浮動(dòng)元素默認(rèn)會(huì)變?yōu)閴K元素衅斩,即使設(shè)置display:inline以后其依然是個(gè) 塊元素沿癞。

文字環(huán)繞

  • 浮動(dòng)不會(huì)覆蓋文字,會(huì)環(huán)繞在浮動(dòng)元素周圍

內(nèi)聯(lián)元素浮動(dòng)

  • 內(nèi)聯(lián)元素脫離文檔流會(huì)變成塊元素

高度塌陷

  • 父元素由子元素?fù)伍_矛渴,子元素浮動(dòng)后椎扬,父元素中沒有內(nèi)容就會(huì)塌陷
  • 解決辦法
    1.給父元素定height(不推薦使用)
    2.bfc

bfc的作用:

1.父元素的外邊距不會(huì)和子元素發(fā)生重疊
2.開啟bfc的元素不會(huì)被浮動(dòng)元素覆蓋
3.開啟bfc的元素可以包含浮動(dòng)的子元素

如何開啟bfc

1.設(shè)置元素浮動(dòng)(不推薦)
2.設(shè)置絕對(duì)定位(不推薦)
3.設(shè)元素為: inline-block
4.將overflow設(shè)置為一個(gè)非visble得值
(IE6應(yīng)該用haslayout zoom:1)

3.清除浮動(dòng)

.clear:after{content:' '; display:block; clear:both }

4.在父元素下添加一個(gè)空白兄弟元素

清除浮動(dòng)

  • clear屬性可以用于清除元素周圍的浮動(dòng)對(duì)元素的影響。
    也就是元素不會(huì)因?yàn)樯戏匠霈F(xiàn)了浮動(dòng)元素而改變位置具温。
  • 可選值:
語法 說明
left: 忽略左側(cè)浮動(dòng)
right: 忽略右側(cè)浮動(dòng)
both: 忽略全部浮動(dòng)
none: 不忽略浮動(dòng)蚕涤,默認(rèn)值
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市铣猩,隨后出現(xiàn)的幾起案子揖铜,更是在濱河造成了極大的恐慌,老刑警劉巖达皿,帶你破解...
    沈念sama閱讀 218,386評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件天吓,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡峦椰,警方通過查閱死者的電腦和手機(jī)龄寞,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,142評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來汤功,“玉大人物邑,你說我怎么就攤上這事√辖穑” “怎么了色解?”我有些...
    開封第一講書人閱讀 164,704評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)餐茵。 經(jīng)常有香客問我科阎,道長(zhǎng),這世上最難降的妖魔是什么忿族? 我笑而不...
    開封第一講書人閱讀 58,702評(píng)論 1 294
  • 正文 為了忘掉前任锣笨,我火速辦了婚禮刚梭,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘票唆。我一直安慰自己,他們只是感情好屹徘,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,716評(píng)論 6 392
  • 文/花漫 我一把揭開白布走趋。 她就那樣靜靜地躺著,像睡著了一般噪伊。 火紅的嫁衣襯著肌膚如雪簿煌。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,573評(píng)論 1 305
  • 那天鉴吹,我揣著相機(jī)與錄音姨伟,去河邊找鬼。 笑死豆励,一個(gè)胖子當(dāng)著我的面吹牛夺荒,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播良蒸,決...
    沈念sama閱讀 40,314評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼技扼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了嫩痰?” 一聲冷哼從身側(cè)響起剿吻,我...
    開封第一講書人閱讀 39,230評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎串纺,沒想到半個(gè)月后丽旅,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,680評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡纺棺,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,873評(píng)論 3 336
  • 正文 我和宋清朗相戀三年榄笙,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片祷蝌。...
    茶點(diǎn)故事閱讀 39,991評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡办斑,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出杆逗,到底是詐尸還是另有隱情乡翅,我是刑警寧澤,帶...
    沈念sama閱讀 35,706評(píng)論 5 346
  • 正文 年R本政府宣布罪郊,位于F島的核電站蠕蚜,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏悔橄。R本人自食惡果不足惜靶累,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,329評(píng)論 3 330
  • 文/蒙蒙 一腺毫、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧挣柬,春花似錦潮酒、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,910評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至侧到,卻和暖如春勃教,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背匠抗。 一陣腳步聲響...
    開封第一講書人閱讀 33,038評(píng)論 1 270
  • 我被黑心中介騙來泰國(guó)打工故源, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人汞贸。 一個(gè)月前我還...
    沈念sama閱讀 48,158評(píng)論 3 370
  • 正文 我出身青樓绳军,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親矢腻。 傳聞我的和親對(duì)象是個(gè)殘疾皇子删铃,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,941評(píng)論 2 355

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

  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標(biāo)簽?zāi)J(rèn)的外補(bǔ)...
    _Yfling閱讀 13,754評(píng)論 1 92
  • 引言 這次給大家?guī)砹薈SS-盒子模型部分的筆記踏堡,大家一同交流?? 認(rèn)識(shí)盒子模型之前猎唁,先來了解一下CSS元素的分類吧...
    zhaolion閱讀 4,306評(píng)論 9 85
  • 盒子模型 在網(wǎng)頁中“一切皆是盒子 CSS處理網(wǎng)頁時(shí),它認(rèn)為每個(gè)元素都包含在一 個(gè)不可見的盒子里顷蟆。為什么要想象成盒子...
    錦魚閱讀 654評(píng)論 0 2
  • 所有的頁面元素都可以看成一個(gè)盒子诫隅,并且占據(jù)著一定的頁面空間。無論是div帐偎、span逐纬、還是a都是盒子,但是削樊,圖片豁生、表...
    Python野路子閱讀 776評(píng)論 0 51
  • 什么是盒子? CSS處理網(wǎng)頁時(shí)漫贞,它認(rèn)為每個(gè)元素都包含在一 個(gè)不可見的盒子里甸箱。 我們只需要將相應(yīng)的盒子擺放到網(wǎng)頁中相...
    咻咻咻滴趙大妞閱讀 921評(píng)論 0 0