首頁 >web前端 >css教學 >如何防止內容跨 CSS 欄位中斷?

如何防止內容跨 CSS 欄位中斷?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-12-26 22:09:14798瀏覽

How to Prevent Content from Breaking Across CSS Columns?

如何防止元素內的分欄:綜合指南

問題
在網頁設計中,當內容使用以下格式進行格式化時CSS 列,內容可能會在列之間換行,導致視覺上不良的效果。例如,列表可以分解為多個列,從而破壞其連續性。

:
為了防止這種不良的中斷,可以使用break-inside CSS 屬性。透過將其設定為避免列,瀏覽器將被指示盡可能將內容保留在同一列中。

範例
為了防止多列表中的列表項目內換行列版面:

.list-container {
    column-count: 3;
}

.list-container li {
    break-inside: avoid-column;
}

瀏覽器支援
不幸的是,截至2021 年10 月,Firefox不完全支持break-inside:void-column。但是,除 Firefox 之外的所有主要瀏覽器都支援此屬性。

Firefox 的解決方法
對於 Firefox,可以使用解決方法來防止清單項目中出現分欄:將表格中的內容。

<div class="container">
    <table>
        <tbody>
            <tr>
                <th>Number</th>
                <th>Description</th>
            </tr>
            <tr>
                <td>1</td>
                <td>Number one, one, one, one, one</td>
            </tr>
            <tr>
                <td>2</td>
                <td>Number two, two, two, two, two, two, two, two, two, two, two, two</td>
            </tr>
            <tr>
                <td>3</td>
                <td>Number three</td>
            </tr>
        </tbody>
    </table>
</div>
.container {
    column-count: 3;
}

注意:此解決方法並不理想,因為它可能會引入額外的標記和樣式複雜性。

更新
Firefox 20 的最新更新引入了對 page-break-inside: 避免的支持,但這尚未完全解決防止清單內分欄的問題。建議繼續監控網頁瀏覽器的開發。

以上是如何防止內容跨 CSS 欄位中斷?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn