日韩欧美国产精品免费一二-日韩欧美国产精品亚洲二区-日韩欧美国产精品专区-日韩欧美国产另-日韩欧美国产免费看-日韩欧美国产免费看清风阁

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

CSS 21天入門:盒子模型(box model)

admin
2024年10月18日 22:39 本文熱度 917

CSS 中的盒子模型,或盒模型,是 box model。它指的是我們把元素看成一個個盒子。

所以看到說盒子怎么怎么樣,實際指的是某個元素的行為如何。

box model 定義了盒子四個部分(如下)之間如何協作,最后創建出一個顯示在頁面上可以看到的盒子。

  • 外邊距 margin

  • 邊框 border

  • 填充(有時也翻譯成內邊距) padding

  • 內容

在講 margin 和 padding 的時候,曾用下面這張圖闡述過四個不同部分的位置關系。

區塊盒子(block boxes)和行內盒子(inline boxes)

CSS 盒模型整體上適用于區塊盒子,行內盒子使用的只是盒模型中定義的部分行為。

具體的原因在之前介紹區塊元素和內聯元素曾簡單介紹過,這里再來仔細看看。

display 屬性實際定義了元素(盒子)的兩種行為,一個是元素與其它元素之間的關系,也就是外部顯示行為;另一個是元素內部元素之間的關系,也就是內部顯示行為。

外部顯示

當 display 屬性值為 block 時,它的外部顯示行為表現如下:

  • 盒子會換行。

  • width 和 height 屬性值會生效。

  • padding、border 和 margin 會將其它元素從當前盒子周圍“推開”。這里“推開”是一種形象的說法,具體就是盒子與其它元素之間的距離增大(或減少)了。

  • 如果不指定 width,盒子將占據容器可用空間的全部寬度。

當 display 屬性值 為 inline 時,它的外部顯示行為表現如下:

  • 盒子不會換行。

  • width 和 height 屬性值不會生效。

  • 垂直方向的 padding、margin 以及 border 會被應用,但不會把其他處于 inline 狀態的盒子“推開”。

  • 水平方向的 padding、margin 以及 border 會被應用,且會把其他處于 inline 狀態的盒子“推開”。

內部顯示

默認情況下,元素內的元素會以標準流的方式布局呈現,并表現為區塊或行內盒子。

但可以通過 display 屬性改變內部顯示行為,例如,display 值為 flex,它的外部行為依然是 block,但內部顯示行為則變成了 flex,也就是后面會提到的彈性盒子。

標準盒子模型和替代盒子模型

一個區塊盒子由以下部分組成:

  • 內部盒子:內容顯示區域,使用 width 和 height 設置其大小。

  • padding 盒子:填充內容周圍的空白處,使用 padding 相關的屬性值設置其大小。

  • border 盒子:邊框盒子包裹了任何內容和填充,使用 border 相關的屬性值設置其大小。

  • margin 盒子:最外層作為該盒子與其它盒子之間的空白,使用 margin 相關的屬性值設置其大小。

標準盒子模型

.standard-box {   background-color: antiquewhite;   border: 5px solid green;   padding: 10px;   margin: 20px;   width: 200px;   height: 60px; }  .others {   background-color: lightblue; } 

定義了標準盒子的寬度為 200px,高度為 60px,同時定義了它的邊框為 5px,外邊距為 20px,填充為 10px。

<div class="others">其它盒子</div> <div class="standard-box">內容width:200px, height:60px</div> <div class="others">其它盒子</div> 

這時,整個盒子在頁面布局中占據的空間,實際是寬度 200px + 10px + 10px + 5px + 5px + 20px + 20px。同樣的,高度占據的空間高度也不只是內容的高度,而是要把填充,邊框和外邊距的占據的高度加到一起。

這是一個標準盒子在頁面中占據空間的計算方式。

替代盒子模型

替代盒子模型則希望對于盒在網頁中占據的空間計算方式不要那么復雜,直接使用 width 和 height 就能做到。

想要達成這樣的呈現,需要做的事情如下:

html {   box-sizing: border-box; }  *, *::before, *::after {   box-sizing: inherit; } 

在 CSS 中設置 box-sizing 的值為 border-box,這樣同樣的代碼,呈現的效果就和前面標準盒子不同。

整個盒子占據的寬度和高度就和內部的寬度和高度一樣。

使用瀏覽器的開發者工具查看盒子模型

在 Chrome 瀏覽器里按住 F12,打開開發者工具。

然后選擇到前面實現的盒子,可以看到如下:

上面是標準盒子在瀏覽器里看到盒子模型,下面是替代盒子模型,可以看到標注出來的數字方便我們清楚地知道它真實的寬度和高度。

總結

  • ?? CSS 中的盒子模型,或盒模型,是 box model。它指的是我們把元素看成一個個盒子。

  • ?? CSS 盒模型整體上適用于區塊盒子,行內盒子使用的只是盒模型中定義的部分行為。

  • ?? 一個區塊盒子由以下部分組成:內部盒子、padding 盒子、 border 盒子和 margin 盒子。


該文章在 2024/10/19 12:42:48 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved

主站蜘蛛池模板: 在线视频一区二区 | 国产激情影视综合 | 国产aⅴ视频免费观看国语 91大神在线视频免费观看 | 欧美高清一区三 | 日韩精品视频在线 | 亚洲精品午夜不卡在线播放 | 久热韩国综合中文字幕视频 | 女邻居丰 | 香蕉在线精品视频在线观看2 | 国产91丝袜在线播放动漫蜜月 | 精品动漫福利h视频在线观看 | 国产传媒片免费观看 | 日本高清不卡一道免费观看 | 亚洲h成年动漫在线观看不卡 | 欧美日韩国产中文字幕在线 | 欧美精产国品一二三类产品特点 | 露脸美女另类 | 国产精品1区2区 | 日本成人三级在线播放 | 又大又硬一进一出做视频 | 一区二区三区高清视频在线观看 | 亚洲国产激情一区二区三区 | 黑人操中国女人 | 日本一夲道dvd在线 在线观看国产一线天木耳奈奈 | 国产精品日产三级在线观看 | 91精品国产免费自在线观看 | 亚洲aⅴ无一区二区三区 | 在线观看中文字幕 | 日产精品一线二线三线芒果 | 午夜熟女插插xx免费视频 | 国产人碰人摸人爱视频 | 国产精品尤物在线 | 夫妇交换 | 涩涩涩在线 | 天堂在线8一区二区三区 | 成人精品久 | 俺去也伦理资源站 | 国产精品黄在线观看免费网站 | 国产二区在线播放 | 婷婷激情五月天四房 | 欧美视频亚洲视频日韩动漫 |