css3 -> 多栏布局

在进行多栏布局时,使用bootstrap的栅格系统可以很轻松的实现效果,其实css3本身也提供了多兰布局的功能。

比如,我们在一个section标签内填充了很多内容,同时希望内容能够显示成三列,那么可以通过如下css来实现(使用chrome浏览器)。

设置分栏的数量

section {
  -webkit-column-count: 3;
}

根据宽度分栏

section {
  -webkit-column-width: 25rem;
}

其中remem不同,它所表示的字体大小是相对于全局的。

如果能够在分栏空隙中显示一些标记,页面会显得更加美观,它的实现也非常简单。

定义分栏间隙

section {
  -webkit-column-width: 25rem;
  -webkit-column-rule: 3px solid #8B2101;
  -webkit-column-gap: 2rem;

其中column-rule可以拆分成如下规则:

  • column-rule-width: 3px;
  • column-rule-style: solid;
  • column-rule-color: #8B2101;

如果不定义分栏的高度,内容会被平均分配,但是如果指定了高度,还可以执行分栏的填充方式。

分栏内容的填充方式

section {
  column-width: 20rem;
  column-rule: 3px solid #8B2101;
  column-gap: 2rem;
  height: 85rem;
  column-fill: balance;
}

column-fill的值除了balance,还有另一个值auto

如何跨栏

在表格中我们可以使用colspan=2来配置内容扩展的列数,当然分栏内容也可以通过如下方式来实现。

section img {
  column-span: all;
  margin: 1rem auto;
}

其它特性

告诉浏览器你想要在哪里开始分栏。

break-before
auto\always\avoid\column\avoid-column
break-after
auto\always\avoid\column\avoid-column
break-inside
auto\always\avoid\column\avoid-column

参考

《CSS实战 开发与设计》

css3 -> 多栏布局

时间: 2024-11-09 17:22:54

css3 -> 多栏布局的相关文章

CSS3多栏布局

1.column-count:将一个元素中的内容分成多栏进行显示. 2.column-gap:设定多栏之间的间隔距离. 3.column-rule:栏与栏之间增加一条间隔线. ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 <!doctype html> <html> <head> <meta charset="utf-8"> <title>CSS3分栏布局</title&g

CSS3多栏样式布局

看书的时候,遇到了CSS3一个新的多栏布局样式属性,测试了一下,贴段代码出来: 目前这个属性还是需要带上浏览器内核的私有前缀: 先看html代码: 1 <BODY> 2 <div class='main'> 3 <p>My father was a self-taught mandolin player. He was one of the best string instrument players in our town. He could not read mus

CSS3使用盒模型实现三栏布局

本篇文章由:http://xinpure.com/css3-box-model-to-implement-a-three-column-layout/ 使用 Position 绝对定位也是可以实现三栏布局的,然而使用 CSS3 的盒模型却显得更简单.更灵活 CSS3盒模型 display: -webkit-box; display: -moz-box; display: box; 将父元素定义成盒模型之后,就可以通过 box-flex 属性来实现布局了. box-flex 主要让子元素针对父元素

CSS3与页面布局学习笔记(四)——页面布局大全

一.负边距与浮动布局 1.1.负边距 所谓的负边距就是margin取负值的情况,如margin:-100px,margin:-100%.当一个元素与另一个元素margin取负值时将拉近距离.常见的功能如下: 1.1.1.向上移动 当多个元素同时从标准流中脱离开来时,如果前一个元素的宽度为100%宽度,后面的元素通过负边距可以实现上移.当负的边距超过自身的宽度将上移,只要没有超过自身宽度就不会上移,示例如下: <!DOCTYPE html> <html> <head> &

CSS3与页面布局学习总结(一)——概要、选择器、特殊性与刻度单位

CSS3与页面布局学习总结(一)--概要.选择器.特殊性与刻度单位 目录 一.CSS3概要 1.1.特点 1.2.效果演示 1.3.帮助文档与学习 二.选择器 1.1.基础的选择器 1.2.组合选择器 1.3.属性选择器 1.4.伪类 1.5.伪元素 三.特殊性(优先级) 3.2.计算特殊性值 四.刻度 4.1.绝对长度单位 4.2.文本相对长度单位 4.3.Web App与Rem 五.示例与帮助下载 web前端开发者最最注的内容是三个:HTML.CSS与JavaScript,他们分别在不同方面

记一道css面试题 : 三栏布局两边宽度固定,中间宽度自适应,并且布局随屏幕大小改变。

前几天面试时有道css题没做出来,回来好好学习一番后把其记录下来. 题目是这样的:左中右三栏布局,左右两栏宽度固定,左右两栏的宽度为200像素,中间栏宽度自适应.当屏幕小于600px时,3栏会分别占用一行.像这样 当屏幕大于600px时,是这样 我做出来用了css3的@media,如果不用这个,好吧,水平有限想不出来... 下面是代码: <!DOCTYPE> <html> <head> <style> body{ margin: 0 ; padding: 0

CSS3与页面布局学习总结(四)——页面布局的多种方法

一.负边距与浮动布局 1.1.负边距 所谓的负边距就是margin取负值的情况,如margin:-100px,margin:-100%.当一个元素与另一个元素margin取负值时将拉近距离.常见的功能如下: 1.1.1.向上移动 当多个元素同时从标准流中脱离开来时,如果前一个元素的宽度为100%宽度,后面的元素通过负边距可以实现上移.当负的边距超过自身的宽度将上移,只要没有超过自身宽度就不会上移,示例如下: <!DOCTYPE html> <html> <head> &

多栏布局

水平方向-三栏布局 1.浮动布局 简介:左边固定宽度后左浮动,右边固定宽度后右浮动 .float .left{ float: left; width: 200px; background-color: yellow; } .float .right{ float: right; width: 200px; background-color: green; } .float .center{ background-color: pink; } <section class="float&qu

html5/css3响应式布局介绍及设计流程

html5/css3响应式布局介绍及设计流程,利用css3的media query媒体查询功能.移动终端一般都是对css3支持比较好的高级浏览器不需要考虑响应式布局的媒体查询media query兼容问题 html5/css3响应式布局介绍 html5/css3响应式布局介绍及设计流程,利用css3的media query媒体查询功能.移动终端一般都是对css3支持比较好的高级浏览器不需要考虑响应式布局的媒体查询media query兼容问题 一个普通的自适应显示的三栏网页,当你用不同的终端来查