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

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

                                                       第二十八章  CSS3多列布局

一、早期多列问题

         //五段内容,分为三列

<div>

<p>。。。</p>

<p>。。。</p>

<p>。。。</p>

<p>。。。</p>

<p>。。。</p>

</div>

 

          //带标题的五段内容,分为三列。

<div>

<h3>第一段内容</h3>

<p>。。。</p>

<h3>第二段内容</h3>

<p>。。。</p>

<h3>第三段内容</h3>

<p>。。。</p>

<h3>第四段内容</h3>

<p>。。。</p>

<h3>第五段内容</h3>

<p>。。。</p>

</div>

      所以CSS3提供了多列布局属性columns来实现这个动态变换功能

 

二、属性及版本

      CSS3提供了columns多列布局属性等7个属性集合,具体如下

           属性                      说明

        columns               集成columns-widthcolumns-count两个属性

        columns-width         定义每列宽度

        columns-count         定义分列宽度

        columns-gap           定义列间距

        columns-rule          定义列边框

        columns-span          定义多列布局中子元素跨列效果,Firefox不支持

        columns-fill          控制每列的列高效果,主流浏览器不支持

     由于column属性尚未纳入标准,大多数浏览器必须带上厂商前缀才能使用,好在主流浏览器大多能支持了,下面是主流浏览器支持情况和前缀情况

                             Opera       Firefox     Chrome    Safari     IE

         支持需带前缀       11.529      240      445     3.18     

         支持不带前缀                                            10.0+

       //通过上面的表格,了解到想让最新的浏览器全部实现效果,都必须使用前缀

 

       //完整形式

            -webkit-columns150px 4;

            -moz-columns150px 4;

            columns150px 4;

 

三、属性解释

        为了方便解释,就用Firefox浏览器测试,只用-moz-前缀展示

       1columns   是一个复合属性,包含columns-widthcolumns-count这两种简写,意为同时设置为分列列数和分列宽度

            //分成四列,每列宽度自适应

            -moz-columns:auto 4

 

       2column-width   属性用于设置每列的宽度

            //设置列宽

                 div{

             -moz-columns:100px 3;    //当拉动浏览器边框缩小是,不足以支持3列,会自动变成2列,最后变成1列,1列最小宽度为100px

                 }

 

            // -moz-columns-width:100px;  (如果没有设置列数,但设置了像素,系统会自动设置列数)

           属性值                  说明

       (1)  auto               默认值,自适应

       (2)  长度值             设置列宽

 

       3column-count   用于设置多少列

            //设置列数

               -moz-columns-count: 4

          (1)auto     默认值,表示就一列

          (2)数值     设置列数

 

       4column-gap     用于设置列间距

               -moz-columns-gap:100px;

          (1)(2)同上

 

       5column-rule   设置每列中间的分割线

               -moz-columns-rule:2px dashed gray;

          (1)columns-rule            <宽度><样式><颜色>的边框简写形式

          (2)columns-rule-width      单独设置边框宽度

          (3)columns-rule-style      单独设置边框的样式

          (4)columns-rule-color      单独设置边框的颜色

        判断线不会影响到布局,他会根据布局的缩放自我调节是否显示,如果我们把页面缩放到只能显示一列时,他自动消失。

 

       6column-span  设置跨列大标题

               -webkit-column-span:all;   (由于火狐尚未支持,先用webkit)

          (1)none      默认值,表示不同跨列

          (2)all       表示跨列-

转载于:https://www.cnblogs.com/keshuai752100461/p/8485239.html

你可能感兴趣的文章
自己写token类(无视jwt)
查看>>
NIOS2随笔——中断控制
查看>>
VNX VMX and delete luns
查看>>
Saltstack部署
查看>>
「人物特写」工程院院士谭建荣:马云不是制造业的杀手,工业机器人也不是救命良药...
查看>>
PHP添加zip&&curl扩展
查看>>
Ubuntn16 部署shellinabox--web shell工具
查看>>
SVN的部署和仓库的备份及WIN7客户端测试
查看>>
saltstack搭建集群3
查看>>
Python学习(13)--Lambda表达式和switch语句的实现
查看>>
the vmrc console has disconnected attempting to reconnect
查看>>
配置bind主域名服务器
查看>>
DeepMind让AI系统拥有记忆,教机器学习系统举一反三打游戏
查看>>
WordPress用户登录后根据不同的角色跳转到不同的页面处理
查看>>
利用autobench测试web服务器极限并发数
查看>>
视图和模型变换
查看>>
Matlab绘图控制命令
查看>>
C#实现CAD数据转shape或mdb
查看>>
使用MiniProfiler给Asp.net MVC和Entity Framework号脉(附源码)
查看>>
机器学习的算法选择
查看>>