首頁 > web前端 > css教學 > 為什麼邊距在「display: table-cell」元素上不起作用?

為什麼邊距在「display: table-cell」元素上不起作用?

Susan Sarandon
發布: 2024-12-13 06:32:14
原創
755 人瀏覽過

Why Doesn't Margin Work on `display: table-cell` Elements?

元素對邊距不敏感

問題

格式化顯示的相鄰div :表格儲存格;即使設定為5px,也不會受到margin 屬性的影響。

說明

根據 MDN 文檔,margin 屬性不適用於元素具有 table-caption、table 和 inline-table 以外的表格顯示類型。因此,它不會影響具有 display:table-cell 的元素。

要在這些元素之間實現間距,請使用 border-spacing 屬性。但是,這需要對父元素應用 display:table 和 border-collapse:separate。

例如:

<div class="table">
    <div class="row">
        <div class="cell">123</div>
        <div class="cell">456</div>
        <div class="cell">879</div>
    </div>
</div>
登入後複製
.table {
    display: table;
    border-collapse: separate;
    border-spacing: 5px;
}
.row {
    display: table-row;
}
.cell {
    display: table-cell;
    padding: 5px;
    border: 1px solid black;
}
登入後複製

透過使用border-spacing 屬性並調整border-collapse 和顯示設置,您可以有效地在樣式為顯示的div 元素之間建立邊距: table-cell;.

高級功能

如Diego Quirós 所指出的,border-spacing 屬性可讓您為水平軸和垂直軸定義不同的邊距值。例如:

.table {
    /* ... */
    border-spacing: 3px 5px; /* 3px horizontally, 5px vertically */
}
登入後複製

以上是為什麼邊距在「display: table-cell」元素上不起作用?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板