CSS3中多列布局详解

news2025/1/24 14:35:06

多列布局

概念:在CSS3之前,想要设计类似报纸那样的多列布局,有两种方式可以实现:一种是"浮动布局",另一种是“定位布局”。

这两种方式都有缺点:浮动布局比较灵活,但不容易控制;定位布局可以精准定位,但是不够灵活

为了解决这多列布局的难题,CSS3新增了一种布局方式-多列布局。多列布局提供了一种多列组织内容的方式,可以简单的实现类似报纸格式的布局。

在CSS3中,多列布局常用的属性有以下属性

属性值说明
column-count定义元素的列数
column-width定义每一列的宽度
column-gap定义两列之间的距离
column-rule定义两列之间的边框样式
column-span定义跨列样式

列数:column-count

概念:column-count属性用来定义多列布局的列数

语法:

column-count:auto|number;

属性值

属性值说明
auto默认值,表示列数由column-width属性决定
number表示自动划分几列

实例:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>列数</title>
		<style>
			div{
				width:400px;
				padding:10px;
				border:1px solid blueviolet;
				column-count:2;
			}
			h1{
				height:60px;
				line-height:60px;
				text-align:center;
				background-color:rgba(83,199,86,0.6);
			}
			p{
				font-family:"仿宋";
				font: size:16px;
			}
		</style>
	</head>
	<body>
		<div>
		<h1>顾城</h1>
		<p>命运不是风来回吹,命运是大地,走到哪里你都在命中。从叶到花,或从花到叶,于科研是一个过程,而于生命自身则永远只在此刻。花和叶都是一种记忆方式,果子同时也是种子。生命是闪耀的此刻,不是过程,就像芳香不需要道路一样。诗是树叶,比秋天短,比世界长。</p>
		<h1>史铁生</h1>
		<p>于是得有一种道路,你愿2意为之生也愿意为之死,愿意为之累,愿意在它的引力下耗尽生命。不是强言不悔,是清醒地从命。死亡来临时有一个仪式,灰和土都好,看往日轻轻地蒸发,但同时明白,有什么东西沉沉地还在。不求还在现实中,但愿还在美丽的位置上。于爱者而言,爱情怎么会是悲剧?对春天而言,秋天是它的悲剧吗?</p>
		</div>
	</body>
</html>

运行结果
在这里插入图片描述

列宽:column-width

概念:column-width属性用来定义多列布局中每一列的宽度

语法:

column-width:auto|number;

属性值

属性值说明
auto默认值,表示列数由column-count属性决定
number表示每列的宽度。值为正数,否则属性会无效。单位可以为px、em和百分比等

实例:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>列宽</title>
		<style>
			div{
				width:400px;
				padding:10px;
				border:1px solid blueviolet;
				/* 每一列宽度为100px */
				column-width:100px;
			}
			h1{
				height:60px;
				line-height:60px;
				text-align:center;
				background-color:rgba(83,199,86,0.6);
			}
			p{
				font-family:"仿宋";
				font: size:16px;
			}
		</style>
	</head>
	<body>
		<div>
		<h1>顾城</h1>
		<p>命运不是风来回吹,命运是大地,走到哪里你都在命中。从叶到花,或从花到叶,于科研是一个过程,而于生命自身则永远只在此刻。花和叶都是一种记忆方式,果子同时也是种子。生命是闪耀的此刻,不是过程,就像芳香不需要道路一样。诗是树叶,比秋天短,比世界长。</p>
		<h1>史铁生</h1>
		<p>于是得有一种道路,你愿2意为之生也愿意为之死,愿意为之累,愿意在它的引力下耗尽生命。不是强言不悔,是清醒地从命。死亡来临时有一个仪式,灰和土都好,看往日轻轻地蒸发,但同时明白,有什么东西沉沉地还在。不求还在现实中,但愿还在美丽的位置上。于爱者而言,爱情怎么会是悲剧?对春天而言,秋天是它的悲剧吗?</p>
		</div>
	</body>
</html>

运行结果
在这里插入图片描述

间距:column-gap

概念:column-gap属性用于定义元素列与列之间的间距大小

语法:

column-gap:normal|number;

属性值

属性值说明
normal默认值,表示浏览器默认长度值
number定义列之间的间隔大小。属性值必须是正数。单位可以是px、em和百分比等

实例:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>列宽</title>
		<style>
			div{
				width:400px;
				padding:10px;
				border:1px solid blueviolet;
				/* 定义列数目为2*/
				column-count:2;
				/* 定义列间距为100px */
				column-gap:100px;
			}
			h1{
				height:60px;
				line-height:60px;
				text-align:center;
				background-color:rgba(83,199,86,0.6);
			}
			p{
				font-family:"仿宋";
				font: size:16px;
			}
		</style>
	</head>
	<body>
		<div>
		<h1>顾城</h1>
		<p>命运不是风来回吹,命运是大地,走到哪里你都在命中。从叶到花,或从花到叶,于科研是一个过程,而于生命自身则永远只在此刻。花和叶都是一种记忆方式,果子同时也是种子。生命是闪耀的此刻,不是过程,就像芳香不需要道路一样。诗是树叶,比秋天短,比世界长。</p>
		<h1>史铁生</h1>
		<p>于是得有一种道路,你愿2意为之生也愿意为之死,愿意为之累,愿意在它的引力下耗尽生命。不是强言不悔,是清醒地从命。死亡来临时有一个仪式,灰和土都好,看往日轻轻地蒸发,但同时明白,有什么东西沉沉地还在。不求还在现实中,但愿还在美丽的位置上。于爱者而言,爱情怎么会是悲剧?对春天而言,秋天是它的悲剧吗?</p>
		</div>
	</body>
</html>

运行结果
在这里插入图片描述

边框:column-rule

概念:column-rule属性定义列与列之间的边框样式

语法:

column-rule:width style color;

属性值

属性值说明
width定义边框的宽度
style定义边框的样式
color定义边框的颜色

column-rule属性是一个复合属性,由3个子属性组成。

  • column-rule-width:定义边框的宽度。
  • column-rule-style:定义边框的样式。
  • column-rule-color:定义边框的颜色。

说明:用法跟border属性基本上是一样的

实例:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>边框</title>
		<style>
			div{
				width:400px;
				padding:10px;
				border:1px solid orange;
				/* 定义列数目为2*/
				column-count:2;
				/* 定义列间距为100px */
				column-gap:100px;
				/* 定义列之间的边框样式 */
				column-rule:1px solid blueviolet;
			}
			h1{
				height:60px;
				line-height:60px;
				text-align:center;
				background-color:rgba(83,199,86,0.6);
			}
			p{
				font-family:"仿宋";
				font: size:16px;
			}
		</style>
	</head>
	<body>
		<div>
		<h1>顾城</h1>
		<p>命运不是风来回吹,命运是大地,走到哪里你都在命中。从叶到花,或从花到叶,于科研是一个过程,而于生命自身则永远只在此刻。花和叶都是一种记忆方式,果子同时也是种子。生命是闪耀的此刻,不是过程,就像芳香不需要道路一样。诗是树叶,比秋天短,比世界长。</p>
		<h1>史铁生</h1>
		<p>于是得有一种道路,你愿2意为之生也愿意为之死,愿意为之累,愿意在它的引力下耗尽生命。不是强言不悔,是清醒地从命。死亡来临时有一个仪式,灰和土都好,看往日轻轻地蒸发,但同时明白,有什么东西沉沉地还在。不求还在现实中,但愿还在美丽的位置上。于爱者而言,爱情怎么会是悲剧?对春天而言,秋天是它的悲剧吗?</p>
		</div>
	</body>
</html>

运行结果
在这里插入图片描述

跨列:column-span

概念:column-span属性来实现多列布局的跨列效果

语法:

column-span:none|all;

属性值

属性值说明
none表示元素不跨多个列。
all表示元素横跨所有列。元素出现之前,出现在元素之前的正常流中的内容在所有列之间自动平衡。该元素建立一个新的区块格式化上下文。

实例:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>跨列</title>
		<style>
			div{
				width:400px;
				padding:10px;
				border:1px solid orange;
				column-count:2;
				column-gap:100px;
				column-rule:1px solid blueviolet;
			}
			h1{
				height:60px;
				line-height:60px;
				text-align:center;
				background-color:rgba(83,199,86,0.6);
				/* 该元素横跨所有列 */
				column-span:all;
			}
			p{
				font-family:"仿宋";
				font: size:16px;
			}
		</style>
	</head>
	<body>
		<div>
		<h1>顾城</h1>
		<p>命运不是风来回吹,命运是大地,走到哪里你都在命中。从叶到花,或从花到叶,于科研是一个过程,而于生命自身则永远只在此刻。花和叶都是一种记忆方式,果子同时也是种子。生命是闪耀的此刻,不是过程,就像芳香不需要道路一样。诗是树叶,比秋天短,比世界长。</p>
		<h1>史铁生</h1>
		<p>于是得有一种道路,你愿2意为之生也愿意为之死,愿意为之累,愿意在它的引力下耗尽生命。不是强言不悔,是清醒地从命。死亡来临时有一个仪式,灰和土都好,看往日轻轻地蒸发,但同时明白,有什么东西沉沉地还在。不求还在现实中,但愿还在美丽的位置上。于爱者而言,爱情怎么会是悲剧?对春天而言,秋天是它的悲剧吗?</p>
		</div>
	</body>
</html>

运行结果
在这里插入图片描述
在该实例中,column-span:all;属性使得标题h1跨越所有的列。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1383634.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

PySide6/PyQt6中的时间管理类:QTime的使用方法

文章目录 📖 介绍 📖🏡 环境 🏡📒 使用方法 📒📝 创建QTime对象📝 常用方法⚓️ 相关链接 ⚓️📖 介绍 📖 QTime是PySide6中用于处理时间段的类,可以用来表示一天中的时间,例如小时、分钟和秒。它提供了许多操作和格式化时间的功能,使得处理时间变得更加…

PLC、工业设备如何远程访问?贝锐蒲公英云智慧组网实现数据互通

在工业4.0时代&#xff0c;工业数字化的核心在于数据的互联互通&#xff0c;而在整个工业数字化、智能化的过程中&#xff0c;往往面临数据采集困难、设备运行情况难以知晓、部署管理难度大、后期维护成本高等问题。 显然&#xff0c;PLC设备在整个工业数字化进程中扮演的角色…

AI智能剪辑,快速剪辑出需要的视频

AI智能剪辑技术&#xff0c;是一种基于人工智能的技术&#xff0c;它能够通过机器学习和深度学习算法&#xff0c;自动识别视频中的内容&#xff0c;并根据用户的需求和喜好&#xff0c;快速地剪辑出需要的视频。 所需工具 &#xff1a; 一个【媒体梦工厂】软件 视频素材 …

spring boot application yaml key下划线如何转java的Properties对象字段驼峰

spring boot yaml key和value如何映射到Properties对象 下面以MybatisPlusProperties为例 ##java properties 字段驼峰 ##yaml文件如图&#xff0c;key使用下划线 ##java对象驼峰转下划线匹配yaml文件key DataObjectPropertyName.toDashedForm(name);//驼峰转下划线 ##设置P…

杨中科 EFCORE 第三部分 主键

主键 自增主键 1、EF Core支持多种主键生成策略:自动增长;Guid;Hi/Lo算法等。 2、自动增长。 优点:简单; 缺点: 数据库迁移以及分布式系统中&#xff08;多数据库合并&#xff0c;会有重复主键值&#xff09;比较麻烦;并发性能差&#xff08;大并发情况下&#xff0c;为了保证…

聚道云软件连接器助力知名企业,提升合同管理效率

一、客户介绍 某服饰股份有限公司是一家集服装设计、生产、销售及品牌建设于一体的企业。该公司的产品线涵盖男装、女装、童装等多个领域&#xff0c;设计风格时尚、简约、大方&#xff0c;深受消费者喜爱。公司注重产品研发&#xff0c;不断推陈出新&#xff0c;紧跟时尚潮流…

【开发板资料】Arduino NANO 资料分享(引脚分布图、原理图、亮灯程序等)

给出部分参考资料以及来源 引脚分布 PINOUT 来源&#xff1a;Nano | Arduino Documentation https://docs.arduino.cc/hardware/nano PINOUT PINOUT 来源&#xff1a;https://www.tumblr.com/pighixxx/42591353009/arduino-nano-pinout https://www.tumblr.com/pighixxx/…

git的三种状态概念

git的三种状态 Git 有三种状态&#xff0c;你的文件可能处于其中之一&#xff1a; 已提交&#xff08;committed&#xff09;、已修改&#xff08;modified&#xff09; 和 已暂存&#xff08;staged&#xff09;。 已修改表示修改了文件&#xff0c;但还没保存到数据库中。 …

四、C++运算符(5)逻辑运算符

作用&#xff1a;用于根据表达式的值返回真值或假值 #define _CRT_SECURE_NO_WARNINGS #include<iostream> #include<string> using namespace std; int main() {//逻辑运算符 非&#xff01;int a 10;int b 20;//在c中除了0都是真cout << !a << end…

编程艺术之Unix哲学

Unix 哲学不算是一种正规设计方法&#xff0c;它并不打算从计算机科学的理论高度来产生理论上完美的软件。那些毫无动力、松松垮垮而且薪水微薄的程序员们&#xff0c;能在短短期限内&#xff0c;如神灵附体般开发出稳定而新颖的软件——这只不过是经理人永远的梦呓罢了。 1 Un…

《SPSS统计学基础与实证研究应用精解》视频讲解:SPSS 与 Stata、Python 的对比

《SPSS统计学基础与实证研究应用精解》1.5 视频讲解 视频为《SPSS统计学基础与实证研究应用精解》张甜 杨维忠著 清华大学出版社 一书的随书赠送视频讲解1.5节内容。本书已正式出版上市&#xff0c;当当、京东、淘宝等平台热销中&#xff0c;搜索书名即可。本书旨在手把手教会使…

作物叶片病害识别系统

介绍 由于植物疾病的检测在农业领域中起着重要作用&#xff0c;因为植物疾病是相当自然的现象。 如果在这个领域不采取适当的护理措施&#xff0c;就会对植物产生严重影响&#xff0c;进而影响相关产品的质量、数量或产量。植物疾病会引起疾病的周期性爆发&#xff0c;导致大…

制作 Kali 可启动 USB 驱动器

Kali USB驱动器&#xff0c;轻松安全&#xff0c;获取最新镜像&#xff0c;开始强大的安全测试&#xff01; Kali 可启动 USB 驱动器的优点&#xff1a; 不会更改主机系统的硬盘驱动器或已安装的操作系统&#xff0c;并且要返回正常操作&#xff0c;您只需删除“Kali Live”U…

前端基础知识整理汇总(下)

react 生命周期 React v16.0前的生命周期 初始化(initialization)阶段 此阶段只有一个生命周期方法&#xff1a;constructor。 constructor() 用来做一些组件的初始化工作&#xff0c;如定义this.state的初始内容。如果不初始化 state 或不进行方法绑定&#xff0c;则不需…

Calibre DESIGNrev Object Selection Toolbar

包括 Reference Path Polygon Edge Vertex Text的解释说明 FieldDescription用法&#xff08;勾选后&#xff09;ReferenceUsed to move or select a cell reference or array reference.可以选择一个cellPathUsed to move or select a contiguous path object.暂时不明请指教…

c语言题目之九九乘法表的打印

文章目录 题目一、题目分析二&#xff0c;代码编写三&#xff0c;拓展 题目 用c语言打印九九乘法表 提示&#xff1a;以下是本篇文章正文内容&#xff0c;下面案例可供参考 一、题目分析 在上面图我们假设一个乘法为一个单位&#xff0c;在这里我们可以看到第一行有一行一列&…

tr seq cut sort

一. tr 对字符进行处理 tr 命令用于字符转换、替换和删除&#xff0c;主要用于删除文件中的控制符或进行字符串转换等。 ① 转换 格式&#xff1a; tr 当前字符 需要转换成的字符 ​ ​ 将所有小写变成大写 ​ ② 压缩 格式&#xff1a; tr -s ​ ③ 删除 …

NVIDIA-SMI has failed because it couldn‘t communicate with the NVIDIA driver

安装显卡驱动 https://fakerth.blog.csdn.net/article/details/134659236 NVIDIA-SMI has failed because it couldn‘t communicate with the NVIDIA driver 电脑打开分辨率直接变了&#xff0c;运行nvidia-smi报错&#xff0c;当时我就在爆发的边缘了&#xff0c;想着大好…

【C++】union

union是C语言提供的一个数据结构&#xff0c;可以让多个变量共用同一块内存。 用法 union MyUnion {int num;char my_char;double ff; };int main() {MyUnion u1;u1.num 1;cout << sizeof(u1) << endl; }如图&#xff0c;在MyUnion里声明了多个变量&#xff0c;…

API设计:从基础到最佳实践

1*vWvkkgG6uvgmJT8GkId98A.png 在这次深入探讨中&#xff0c;我们将深入了解API设计&#xff0c;从基础知识开始&#xff0c;逐步进阶到定义出色API的最佳实践。 作为开发者&#xff0c;你可能对许多这些概念很熟悉&#xff0c;但我将提供详细的解释&#xff0c;以加深你的理解…