CSS-多列布局1-概述

简介: 1、多列布局概述通过 CSS3,您能够创建多个列来对文本进行布局 - 就像报纸那样!2、常用属性属性版本描述columnsCSS3设置或检索对象的列数和每列的宽度。

1、多列布局概述

通过 CSS3,您能够创建多个列来对文本进行布局 - 就像报纸那样!

2、常用属性

属性 版本 描述
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 设置或检索对象内部是否断行。

3、常用属性说明

3.1 显示多少列.

(1)如果不设置 column-count 时

显示列数 = (总宽度+列间距)/ (列宽度+列间距)

(2)如果不设置 column-count 时

条件 显示列数
(列宽度+列间距)*列数 -列间距 <= 盒子宽度 显示列数量
(列宽度+列间距)*列数 -列间距 <= 盒子宽度 (总宽度+列间距)/ (列宽度+列间距)

3.2 实例效果

源代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>CSS多列布局</title>
    <style type="text/css">
        p{
            width: 800px;
            margin: 5px;
            border: 1px solid gray;
        }
        .div1{
            column-width: 200px;
            column-count: 3;
            column-gap: 100px;
            column-rule: 150px solid red;
            width: 800px;
            border: 1px solid red;
            margin: 5px;
        }
        .div2{
            column-width: 200px;
            column-count: 3;
            column-gap: 100px;
            column-rule: 150px solid red;
            width: 799px;
            border: 1px solid red;
            margin: 5px;
        }
    </style>
</head>
<body>
    <p>
    column-width:200px;<br>column-gap: 100px;<br>column-count: 3;<br>width: 800px;<br>  column-rule: 150px solid red;<br>
    </p>
    <p style="color: red">
      (column-width:200px+column-gap:100px)*(column-count:3)-(column-gap:100px)
      <=800px<br>
      因此显示列数 = 设置列数;
      <br/>
      column-rule-width的值,不影响列数显示。
    </p>
    <div class="div1">CSS3中新出现的多列布局(multi-column)是传统HTML网页中块状布局模式的有力扩充。这种新语法能够让WEB开发人员轻松的让文本呈现多列显示。我们知道,当一行文字太长时,读者读起来就比较费劲,有可能读错行或读串行;人们的视点从文本的一端移到另一端、然后换到下一行的行首,如果眼球移动浮动过大,他们的注意力就会减退,容易读不下去。所以,为了最大效率的使用大屏幕显示器,页面设计中需要限制文本的宽度,让文本按多列呈现,就像报纸上的新闻排版一样。
    </div>
     <p>
    column-width:200px;<br>column-gap: 100px;<br>column-count: 3;<br>width: 799px;<br>  column-rule: 150px solid red;<br>
    </p>
    <p style="color: red">
      (column-width:200px+column-gap:100px)*(column-count:3)-(column-gap:100px)
      >799px<br>
      因此显示列数 = (799+100)/(200+100)=2;
       <br/>
      column-rule-width的值,不影响列数显示。
    </p>
    <div class="div2">CSS3中新出现的多列布局(multi-column)是传统HTML网页中块状布局模式的有力扩充。这种新语法能够让WEB开发人员轻松的让文本呈现多列显示。我们知道,当一行文字太长时,读者读起来就比较费劲,有可能读错行或读串行;人们的视点从文本的一端移到另一端、然后换到下一行的行首,如果眼球移动浮动过大,他们的注意力就会减退,容易读不下去。所以,为了最大效率的使用大屏幕显示器,页面设计中需要限制文本的宽度,
</body>
</html>

运行效果:

image.png

相关文章
|
18天前
|
前端开发 开发者 UED
解锁网页布局的秘密武器:探索 CSS Grid 布局的神奇魔力
解锁网页布局的秘密武器:探索 CSS Grid 布局的神奇魔力
21 3
|
25天前
|
前端开发 容器
《CSS 简易速速上手小册》第2章:CSS 布局与定位(2024 最新版)
《CSS 简易速速上手小册》第2章:CSS 布局与定位(2024 最新版)
21 2
|
1月前
|
前端开发 开发者 容器
彻底学会CSS grid网格布局
【4月更文挑战第1天】 彻底学会CSS grid网格布局
17 0
|
17天前
|
UED 开发者 容器
【专栏】Flexbox是CSS3的全新布局模式,提供灵活响应式的页面设计
【4月更文挑战第27天】Flexbox是CSS3的全新布局模式,提供灵活响应式的页面设计。其特点包括灵活性、响应式和易理解,通过主轴和交叉轴控制元素排列对齐。核心概念有容器和项目,常用于导航栏、卡片布局、响应式设计、表格和表单布局。关键属性如flex-direction定义主轴方向,justify-content和align-items控制对齐,flex属性调整项目伸缩,order改变排序。在实践中,要关注响应式、代码维护和浏览器兼容性,以优化布局和用户体验。
|
1月前
|
前端开发 开发者 容器
彻底学会CSS 弹性布局flex
【4月更文挑战第1天】 彻底学会CSS 弹性布局flex
19 0
|
14天前
|
前端开发 UED
【专栏:HTML与CSS实战项目篇】创建一个具有复杂布局的电商详情页
【4月更文挑战第30天】构建复杂布局的电商详情页涉及页面结构规划、样式设计和交互效果实现。首先规划顶部导航栏、商品图片展示区、商品信息区、用户评价区和相关商品推荐区。在样式设计上,注重色彩搭配、字体选择、布局与间距及图片处理。交互效果包括图片放大、添加到购物车按钮、滚动监听和评论互动,以提升用户体验。实际开发中需考虑跨设备兼容性和用户体验优化。
|
14天前
|
编解码 缓存 前端开发
【专栏:HTML与CSS移动端开发篇】移动端网页布局与适配
【4月更文挑战第30天】本文探讨了如何使用HTML和CSS优化移动端网页布局与适配,强调响应式设计、灵活布局和媒体查询的重要性。针对移动设备的屏幕尺寸、操作方式、网络速度和性能差异,提出了断点选择、触摸优化、图像和性能优化等最佳实践。测试和调试、框架工具的应用也是关键步骤,以确保在多设备上提供优秀用户体验。开发者需持续学习新趋势和工具,以适应移动端发展。
|
14天前
|
前端开发 UED 容器
【专栏:CSS进阶篇】CSS Grid布局:构建复杂的二维布局
【4月更文挑战第30天】CSS Grid布局是二维布局系统,适用于复杂页面结构,如页眉、主体和侧边栏。通过定义网格线和单元格,能轻松创建行和列。基本语法包括设置容器为grid容器,定义`grid-template-rows`和`grid-template-columns`。高级特性包括命名网格线、网格区域、网格间隙、重复网格线和自动填充。在实际应用中,CSS Grid能有效提升开发效率和用户体验,尤其在响应式设计和复杂布局场景下。
|
14天前
|
前端开发 开发者 容器
【专栏:CSS进阶篇】CSS Flexbox布局:实现灵活的响应式设计
【4月更文挑战第30天】CSS Flexbox是现代网页设计中创建响应式布局的关键工具,它提供了一种一维布局模型,使元素能灵活适应各种屏幕尺寸。通过设置容器的`display`属性为`flex`,开发者可以利用主轴和交叉轴调整元素排列和对齐方式。核心概念包括弹性项、伸缩性、空间分配和对齐。通过实例,如导航栏、卡片布局、图片画廊和响应式表单,展示了Flexbox在实现响应式设计中的应用。尽管需要注意浏览器兼容性,但掌握Flexbox能帮助开发者构建出功能强大且适应性强的界面。
|
14天前
|
前端开发 开发者 容器
【专栏:CSS基础篇】CSS定位与布局:从静态到浮动、定位
【4月更文挑战第30天】本文介绍了CSS定位与布局的基础,包括静态、相对、绝对、固定定位以及浮动。静态定位遵循HTML顺序,相对定位可在正常位置基础上偏移,不占用额外空间。绝对定位基于最近已定位祖先元素定位,脱离文档流。固定定位相对于浏览器窗口定位,无视页面滚动。浮动用于文字环绕图片等,可能导致父元素高度塌陷。Flexbox布局提供更灵活的元素排列和对齐方式,适配各种复杂布局需求。理解并掌握这些布局技术能提升网页设计的灵活性和响应性。