您现在的位置是:首页 > Javascript
当前栏目
CSS 的多列布局是什么?
2023-04-18 15:03:26 时间
一、多列布局是什么?
就是用 CSS 的 column-count
、column-width
、column-gap
、break-inside
、page-break-inside
等实现多列显示的功能。
二、应用场景
1、文字多列显示
通过 column-count
、column-gap
、column-rule
就能做出下面多列显示效果。
新建 index.html 文件并复制下面代码到文件中,保存后用浏览器打开即可看效果。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Multicol starting point</title>
<style>
body {
width: 90%;
max-width: 900px;
margin: 2em auto;
font: .9em/1.2 Arial, Helvetica, sans-serif;
}
.container {
column-count: 3;
column-gap: 20px;
column-rule: 4px dotted rgb(79, 185, 227);
}
</style>
</head>
<body>
<div class="container">
<h1>Simple multicol example</h1>
<p> Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla luctus aliquam dolor, eu lacinia lorem
placerat vulputate.
Duis felis orci, pulvinar id metus ut, rutrum luctus orci. Cras porttitor imperdiet nunc, at ultricies
tellus
laoreet sit amet. Sed auctor cursus massa at porta. Integer ligula ipsum, tristique sit amet orci vel,
viverra
egestas ligula. Curabitur vehicula tellus neque, ac ornare ex malesuada et. In vitae convallis lacus.
Aliquam
erat volutpat. Suspendisse ac imperdiet turpis. Aenean finibus sollicitudin eros pharetra congue. Duis
ornare
egestas augue ut luctus. Proin blandit quam nec lacus varius commodo et a urna. Ut id ornare felis, eget
fermentum
sapien.</p>
<p>Nam vulputate diam nec tempor bibendum. Donec luctus augue eget malesuada ultrices. Phasellus turpis est,
posuere
sit amet dapibus ut, facilisis sed est. Nam id risus quis ante semper consectetur eget aliquam lorem.
Vivamus
tristique elit dolor, sed pretium metus suscipit vel. Mauris ultricies lectus sed lobortis finibus. Vivamus
eu
urna eget velit cursus viverra quis vestibulum sem. Aliquam tincidunt eget purus in interdum. Cum sociis
natoque
penatibus et magnis dis parturient montes, nascetur ridiculus mus.</p>
</div>
</body>
</html>
2、文字不被断句
通过 break-inside
、page-break-inside
可以做到不截断内容。
新建 index.html 文件并复制下面代码到文件中,保存后用浏览器打开即可看效果。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Simple multicol example, break-inside</title>
<style>
body {
width: 90%;
max-width: 900px;
margin: 2em auto;
font: .9em/1.2 Arial, Helvetica, sans-serif;
}
.container {
column-width: 250px;
column-gap: 20px;
}
.card {
/* 取消注释即可看到,不截断内容的效果 */
/* break-inside: avoid;
page-break-inside: avoid; */
background-color: rgb(207, 232, 220);
border: 2px solid rgb(79, 185, 227);
padding: 10px;
margin: 0 0 1em 0;
}
</style>
</head>
<body>
<div class="container">
<div class="card">
<h2>I am the heading</h2>
<p> Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla luctus aliquam dolor, eu lacinia lorem
placerat
vulputate. Duis felis orci, pulvinar id metus ut, rutrum luctus orci. Cras porttitor imperdiet nunc, at
ultricies
tellus laoreet sit amet. Sed auctor cursus massa at porta. Integer ligula ipsum, tristique sit amet orci
vel, viverra egestas ligula.</p>
</div>
<div class="card">
<h2>I am the heading</h2>
<p> Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla luctus aliquam dolor, eu lacinia lorem
placerat
vulputate. Duis felis orci, pulvinar id metus ut, rutrum luctus orci. Cras porttitor imperdiet nunc, at
ultricies
tellus laoreet sit amet. Sed auctor cursus massa at porta. Integer ligula ipsum, tristique sit amet orci
vel, viverra egestas ligula.</p>
</div>
<div class="card">
<h2>I am the heading</h2>
<p> Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla luctus aliquam dolor, eu lacinia lorem
placerat
vulputate. Duis felis orci, pulvinar id metus ut, rutrum luctus orci. Cras porttitor imperdiet nunc, at
ultricies
tellus laoreet sit amet. Sed auctor cursus massa at porta. Integer ligula ipsum, tristique sit amet orci
vel, viverra egestas ligula.</p>
</div>
<div class="card">
<h2>I am the heading</h2>
<p> Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla luctus aliquam dolor, eu lacinia lorem
placerat
vulputate. Duis felis orci, pulvinar id metus ut, rutrum luctus orci. Cras porttitor imperdiet nunc, at
ultricies
tellus laoreet sit amet. Sed auctor cursus massa at porta. Integer ligula ipsum, tristique sit amet orci
vel, viverra egestas ligula.</p>
</div>
<div class="card">
<h2>I am the heading</h2>
<p> Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla luctus aliquam dolor, eu lacinia lorem
placerat
vulputate. Duis felis orci, pulvinar id metus ut, rutrum luctus orci. Cras porttitor imperdiet nunc, at
ultricies
tellus laoreet sit amet. Sed auctor cursus massa at porta. Integer ligula ipsum, tristique sit amet orci
vel, viverra egestas ligula.</p>
</div>
<div class="card">
<h2>I am the heading</h2>
<p> Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla luctus aliquam dolor, eu lacinia lorem
placerat
vulputate. Duis felis orci, pulvinar id metus ut, rutrum luctus orci. Cras porttitor imperdiet nunc, at
ultricies
tellus laoreet sit amet. Sed auctor cursus massa at porta. Integer ligula ipsum, tristique sit amet orci
vel, viverra egestas ligula.</p>
</div>
<div class="card">
<h2>I am the heading</h2>
<p> Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla luctus aliquam dolor, eu lacinia lorem
placerat
vulputate. Duis felis orci, pulvinar id metus ut, rutrum luctus orci. Cras porttitor imperdiet nunc, at
ultricies
tellus laoreet sit amet. Sed auctor cursus massa at porta. Integer ligula ipsum, tristique sit amet orci
vel, viverra egestas ligula.</p>
</div>
</div>
</body>
</html>
三、参考文档
相关文章
- Spring Boot 自定义 Swagger2 请求 URL 路径的两种方法
- XML——可扩展标记语言
- 在使用 Spring Boot 的过程中,你可能不太知道的点?
- 用Python Flask为女朋友做一个简单的网站(附可运行的源码)
- Spring Cloud Alibaba全家桶(四)——微服务调用组件Feign
- 细数那些惊艳一时的 CSS 属性
- 利用Debug调试代码解决0xC0000005: 读取位置 0x0000000000000000 时发生访问冲突
- php859微电影短视频分享网站
- HTML 扫盲
- 蓝桥杯第十四届蓝桥杯模拟赛第三期考场应对攻略(C/C++)
- 图片的美白与美化
- 【JavaScript 逆向】网易易盾滑块逆向分析
- Vue初入,了解Vue的发展与优缺点
- 渗透测试--网站目录扫描(爆破)--Dirbuster下载、安装和使用
- html实现浪漫的爱情日记(附源码)
- 人体姿态识别
- MATLAB | 这些花里胡哨的热图怎么画
- Apache 许可证2.0 版
- SpringCloud之 LoadBalancer和Feign负载均衡
- 植物大战 仿函数——C++