博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
小侃CSS3——多列布局
阅读量:6604 次
发布时间:2019-06-24

本文共 2141 字,大约阅读时间需要 7 分钟。

为了能在Web页面中方便实现类似报纸、杂志那种多列排版的布局,W3C特意给CSS3增加了一个多列布局模块(CSS Multi Column Layout Module)。它主要应用在文本的多列布局方面,这种布局在报纸和杂志上使用了几十年,但要在Web页面上实现这样的效果还是需要一些技巧的,庆幸的是,CSS3的时代来了~~~~多列布局可以轻松实现。我们来看一下具体的情况。

看看MDN的解释

喔吼吼~听到他怎么说是不是感觉大块人心呢~

要注意的一点是

上个代码先看看好了

大概就是这个样子的,注意一下,如果你的宽度设置的太过于宽然后你的文字达不到一定数量级的话,你设置的栏数也会完美的呈现出来喔~只不过高度不限死的话它就会从高度上面给你做手脚给你呈现四栏。

但是!!!!

但是!!!!

但是1!!!

如果你文字十分稀少的话,你看看,它为了执行你的要求他也会强行四栏,我们可以看的出他的高度会让给最高的列,然后再根据要求来进行分栏,到最后字数不够还是会给你分出来不过是用空白来占位。

不知道当你看到这种布局的时候,有没有心头突然有种悸动的感觉。这种布局明明以前就要写一些其他的样式来实现啊。可是现在,就是现在,我们已经可以简简单单通过CSS3的这一个属性来实现了啊!

我们首先来看看下面这个属性表

Properties
属性
CSS Version
版本
Inherit From Parent
继承性
Description
简介
columns CSS3 设置或检索对象的列数和每列的宽度。复合属性
column-width CSS3 设置或检索对象每列的宽度
column-count CSS3 设置或检索对象的列数
column-gap CSS3 设置或检索对象的列与列之间的间隙
column-rule CSS3 设置或检索对象的列与列之间的边框。复合属性
column-rule-width CSS3 设置或检索对象的列与列之间的边框厚度。
column-rule-style CSS3 设置或检索对象的列与列之间的边框样式。
column-rule-color CSS3 设置或检索对象的列与列之间的边框颜色。
column-span CSS3 设置或检索对象元素是否横跨所有列。
column-fill CSS3 设置或检索对象所有列的高度是否统一。
column-break-before CSS3 设置或检索对象之前是否断行。
column-break-after CSS3 设置或检索对象之前是否断行。
column-break-inside CSS3 设置或检索对象内部是否断行。

这样 看可能会比较正式,我们换个法子来看看

  • 列数和列宽:columnscolumn-countcolumn-width
  • 列的间距和分列样式:column-gapcolumn-rule-colorcolumn-rule-stylecolumn-rule-widthcolumn-rule
  • 跨越列:column-span
  • 填充列:column-fill
  • 分栏符:column-break-beforecolumn-break-aftercolumn-break-inside

这样大家应该可以一目明了了吧~

按照步骤肯定要讲下语法

columns

[v_act]columns: <column-count> <column-width>[/v_act]

这个是一个复合样式,包含了column-count和column-width。

column-count:有多少列

column-width:每一列有多宽

看看兼容性,虽然绿油油但是感觉还是不够啊。尚且需要加油的样子!!!

column-gap & column-rule

[v_act]column-gap: normal || length;[/v_act]

[v_act]column-rule: <column-rule-width> || <column-rule-style> || <column-rule-color>;[/v_act]

这两个样式我想一起讲,因为是修饰类的。看个图就知道是什么了。

简直一目了然。通过这张图你是不是瞬间又清楚了这个属性的使用方法和效果呢?

其实呢,这里还有个小秘密不知道大家发现没有。就是~~~~~~看图~~~

看到了吗~rule-width增大不会霸占空间~

column-span

[v_act]column-span: none || all;[/v_act]

小舅子打灯笼---照旧、一图胜千言

这里给我的感觉有点像bootstrap的栅格化系统然后给了col-md-12的感觉,然后选择还只有占满和不占的选择,目前至少来说算是一个进步吧。

还有一些选项没有讲主要是感觉用处不大,待到感觉有奇特的地方的时候再做研究吧~

我的博客:http://zengjinchao.com/wordpress/

转载于:https://juejin.im/post/5a4ef1e2f265da3e4f09f76e

你可能感兴趣的文章
ubuntu 12.04 安装 redis
查看>>
IOS_CGRect
查看>>
Sql Server中不常用的表运算符之APPLY(1)
查看>>
【DM642】ICELL Interface—Cells as Algorithm Containers
查看>>
linux所有命令失效的解决办法
查看>>
力扣算法题—085最大矩阵
查看>>
svs 在创建的时候 上传文件夹 bin obj 这些不要提交
查看>>
mysql-用命令导出、导入表结构或数据
查看>>
Tinkphp
查看>>
EntityFrameworkCore 一对一 && 一对多 && 多对多配置
查看>>
How to temporally disable IDE tools (load manually)
查看>>
Vue.js学习 Item4 -- 数据双向绑定
查看>>
几种排序方式的java实现(01:插入排序,冒泡排序,选择排序,快速排序)
查看>>
server application unavailable
查看>>
浅谈尾递归的优化方式
查看>>
eclipse 的小技巧
查看>>
频率域滤波
查看>>
图片存储类型的种类、特点、区别
查看>>
GETTING UP AND RUNNING WITH NODE.JS, EXPRESS, JADE, AND MONGODB
查看>>
求二叉树第K层节点的个数
查看>>