首页 > web前端 > css教程 > 如何防止 CSS 列表元素内出现分栏?

如何防止 CSS 列表元素内出现分栏?

Linda Hamilton
发布: 2025-01-05 21:24:44
原创
781 人浏览过

How Can I Prevent Column Breaks Within a List Element in CSS?

防止元素内的列中断

目标是防止内容在元素内跨多个列中断,确保所需的渲染。考虑下面的示例:

HTML:

<div>
登录后复制
登录后复制

CSS:

.x {
    -moz-column-count: 3;
    column-count: 3;
    width: 30em;
}
登录后复制

Firefox 中的渲染:

• Number one    • Number three          bit longer
• Number two    • Number four is a    • Number five
登录后复制

目标是实现防止内容中断的渲染,从而产生更具凝聚力的效果显示:

• Number one    • Number four is a
• Number two      bit longer
• Number three  • Number five
登录后复制

• Number one    • Number three        • Number five
• Number two    • Number four is a
                  bit longer
登录后复制

解决方案在于利用break-inside CSS属性:

.x li {
    break-inside: avoid-column;
}
登录后复制

所有主流浏览器都支持该属性除了火狐浏览器。在 Firefox 中,可以采用使用表格的解决方法,但这不是理想的解决方案。

更新

Firefox 20 现在支持内部分页:避免以防止列中断,但以下代码表明它仍然不能有效地使用列表:

CSS:

.x {
    column-count: 3;
    width: 30em;
}

.x ul {
    margin: 0;
}

.x li {
    -webkit-column-break-inside: avoid;
    -moz-column-break-inside:avoid;
    -moz-page-break-inside:avoid;
    page-break-inside: avoid;
    break-inside: avoid-column;
}
登录后复制

HTML:

<div>
登录后复制
登录后复制

以上是如何防止 CSS 列表元素内出现分栏?的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板