CSS3中多列布局详解

多列布局

概念:在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.hqwc.cn/news/410190.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ElasticSearch概述+SpringBoot 集成ES

ES概述 开源的、高扩展的、分布式全文检索引擎【站内搜索】 解决问题 1.搜索词是一个整体时&#xff0c;不能拆分&#xff08;mysql整体连续&#xff09; 2.效率会低&#xff0c;不会用到索引&#xff08;mysql索引失效&#xff09; 解决方式 进行数据的存储&#xff08;只存储…

javacv和opencv对图文视频编辑-裸眼3D图片制作

通过斗鸡眼&#xff0c;将左右两张相似的图片叠加到一起看&#xff0c;就会有3D效果。 3D图片&#xff0c;3D眼镜&#xff0c;3D视频等原理类似&#xff0c;都是通过两眼视觉差引起脑补产生3D效果。 图片&#xff1a; 图片来源&#xff1a; 一些我拍摄的真*裸眼3D照片 - 哔哩…

【C语言】详解编译和链接

1.翻译环境和运行环境 在ANSIC的任何一种实现中&#xff0c;存在两个不同的环境 第1种是翻译环境&#xff0c;在这个环境中源代码被转换为可执行的机器指令第2种是执行环境&#xff0c;它用于实际执行代码 2.翻译环境 翻译环境是怎么将源代码转换为可执行的机器指令的呢&…

使用AI自动生成PPT提高制作效率

使用AI自动生成PPT提高制作效率 在制作PPT方面&#xff0c;很多制作者都会轻易跳进一个怪圈&#xff1a;“我要制作一个关于关爱老人的PPT&#xff0c;该怎么做呢&#xff0c;有模板没有?”这个会涉及很多逻辑需要经过不断的思考&#xff0c;制作PPT要通过很多素材、使用技巧、…

VM安装群晖系统 挂载整个硬盘给群晖系统

前言 在我们日常业务需求中&#xff0c;经常需要把整个磁盘的空间分配给群晖使用&#xff0c;那么如何通过vm分配整个磁盘空间给群晖系统。 操作 需要用管理员运行VM虚拟机 然后添加硬盘 就可以有权限全部添加了。这样会清除要挂载的磁盘的全部的数据。

PLSQL 截取字符串中的数字

PLSQL 截取字符串中的数字 sql Select regexp_replace(20天前发现, [^0-9]) 截取数字 From dual;效果

网络爬虫丨基于scrapy+mysql爬取博客信息并保存到数据库中

文章目录 写在前面实验描述实验框架实验需求 实验内容1.安装依赖库2.创建Scrapy项目3.配置系统设置4.配置管道文件5.连接数据库6.分析要爬取的内容7.编写爬虫文件 运行结果写在后面 写在前面 本期内容&#xff1a;基于scrapymysql爬取博客信息并保存到数据库中 实验需求 ana…

科东软件再创新高,连续两年荣获“信优奖”

近日&#xff0c;广州市黄埔区信息行业协会公布了2023年度“信优奖”获奖单位名单&#xff0c;科东软件凭借健全的信用管理体系、良好的合同履约状况、良好的企业经营效益和品牌美誉度等多个优异的指标再次荣获“信优奖”。 “信优奖”的评选旨在促进企业在信用经济全面到来的…

GitHub图床搭建

1 准备Github账号 如果没有Github账号需要先在官网注册一个账号 2 创建仓库 在github上创建一个仓库&#xff0c;随便一个普通的仓库就行&#xff0c;选择公共仓库 并且配置github仓库的pages&#xff0c;选择默认访问的分支及默认路径 3 github token获取 github token创…

【SQL注入】SQLMAP v1.7.11.1 汉化版

下载链接 【SQL注入】SQLMAP v1.7.11.1 汉化版 简介 SQLMAP是一款开源的自动化SQL注入工具&#xff0c;用于扫描和利用Web应用程序中的SQL注入漏洞。它在安全测试领域被广泛应用&#xff0c;可用于检测和利用SQL注入漏洞&#xff0c;以验证应用程序的安全性。 SQL注入是一种…

【LangChain学习之旅】—(6) 提示工程(下):用思维链和思维树提升模型思考质量

【LangChain学习之旅】—&#xff08;6&#xff09; 提示工程&#xff08;下&#xff09;&#xff1a;用思维链和思维树提升模型思考质量 什么是 Chain of ThoughtFew-Shot CoTZero-Shot CoTChain of Thought 实战CoT 的模板设计程序的完整框架Tree of Thought总结 Reference&a…

spring基于XML方式的组件管理

基本介绍 依赖注入是一种处理对象间依赖关系的技术。在Spring中&#xff0c;依赖注入有构造方法注入和设值注入两种方式。 设值注入是将依赖作为成员变量&#xff0c;通过主调类的setter方法注入依赖。构造方法注入则是在Bean的构造方法中注入依赖。 本次我们将通过具体例子来…