盒子模型初學

2021-08-11 06:01:44 字數 1770 閱讀 7815

element : 元素。

padding : 內邊距,填充。不允許負值

border : 邊框。

margin : 外邊距;空白或空白邊。可以有負值

順序:上右下左 順時針

可以為元素的內邊距設定百分數值。百分數值是相對於其父元素的 width 計算的,這一點與外邊距一樣。所以,如果父元素的 width 改變,它們也會改變。

元素外邊距內就是元素的的邊框 (border)。元素的邊框就是圍繞元素內容和內邊據的一條或多條線。

每個邊框有 3 個方面:寬度、樣式,以及顏色。

border-color 屬性,它一次可以接受最多 4 個顏色值。

可以使用任何型別的顏色值,例如可以是命名顏色,也可以是十六進製制和 rgb 值,預設的邊框顏色是元素本身的前景色,如果顏色值小於 4 個,值複製就會起作用

邊框顏色值 transparent用於建立有寬度的不可見邊框

利用 transparent,使用邊框就像是額外的內邊距一樣;此外還有乙個好處,就是能在你需要的時候使其可見。這種透明邊框相當於內邊距,因為元素的背景會延伸到邊框區域(如果有可見背景的話)。

注釋:「border-width」 屬性如果單獨使用的話是不會起作用的。請首先使用 「border-style」 屬性來設定邊框。

外邊距合併指的是,當兩個垂直外邊距相遇時,它們將形成乙個外邊距。合併後的外邊距的高度等於兩個發生合併的外邊距的高度中的較大者。

當乙個元素出現在另乙個元素上面時,第乙個元素的下外邊距與第二個元素的上外邊距會發生合併。請看下圖:

當乙個元素包含在另乙個元素中時(假設沒有內邊距或邊框把外邊距分隔開),它們的上和/或下外邊距也會發生合併。請看下圖:

注釋:只有普通文件流中塊框的垂直外邊距才會發生外邊距合併。行內框、浮動框或絕對定位之間的外邊距不會合併。

假設有乙個空元素,它有外邊距,但是沒有邊框或填充。在這種情況下,上外邊距與下外邊距就碰到了一起,它們會發生合併:

如果這個外邊距遇到另乙個元素的外邊距,它還會發生合併:

這就是一系列的段落元素占用空間非常小的原因,因為它們的所有外邊距都合併到一起,形成了乙個小的外邊距。

外邊距合併初看上去可能有點奇怪,但是實際上,它是有意義的。以由幾個段落組成的典型文字頁面為例。第乙個段落上面的空間等於段落的上外邊距。如果沒有外邊距合併,後續所有段落之間的外邊距都將是相鄰上外邊距和下外邊距的和。這意味著段落之間的空間是頁面頂部的兩倍。如果發生外邊距合併,段落之間的上外邊距和下外邊距就合併在一起,這樣各處的距離就一致了。

盒子模型與怪異盒子模型

所有html元素可以看作盒子,在css中,box model 這一術語是用來設計和布局時使用。css盒模型本質上是乙個盒子,封裝周圍的html元素,它包括 邊距,邊框,填充,和實際內容。盒模型允許我們在其它元素和周圍元素邊框之間的空間放置元素。下面的說明了盒子模型 box model content...

css盒子模型 CSS 盒子模型

css 盒子模型基本上是面試的必考題,因為實在是太重要了。以前寫 css 總是感覺元素的寬高十分難調,其中乙個很大的問題就是忽略了盒子模型的重要性。說到 css 盒子模型,你可能會說我知道呀,就是 margin 包 border,border 包 padding,padding 包 content ...

html盒子模型 jquery盒子模型

最近學了jquery的盒子模型之後,感覺真的顛覆我之前對盒子模型的看法,我在最初以為盒子模型只存在於html,我們就來看看他們有何區別。1.html盒子模型 如果說js裡面萬物皆是物件,那麼html裡面的萬物皆是盒子。不是盒子的我們也可以用dispiay block 變成盒子。那他的盒子是怎麼計算的...