CSS3学习系列之布局样式(一)

  • 多栏布局

使用float属性或position属性的缺点:

使用float属性或position属性进行页面中的简单布局的例子。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>使用float属性进行页面布局的示例</title>
    <style>
        div {
            width: 20em;
            float: left;
        }
        div#div1 {
            margin-left: 2em;;
        }
        div#div3 {
            width: 100%;
            background-color: yellow;
            height: 200px;
        }
    </style>
</head>
<body>
<div id="div1"><p>
    为安静高三的时候有一个女同桌,快高考的时候有一天他突发感慨,就对着女同桌说:我想去南方,看看外面的世界。女同桌说:哎呀妈呀,老娘等你这句话已经很久了,走走走!
    为安静和女同桌在南方辗转六年去过很多地方,深圳东莞广州福建…他们在工厂里打过工,高档小区当过保安,酒店做过服务生。为安静曾经给我们吹牛,在酒店的那些日子里,什么牌子的避孕套他都用过。
    六年的时间把女同桌变成了女朋友,她跟着他五湖四海的跑,干的事情也和为安静差不多,超市管理员、酒店服务生、糕点店的服务员。
    终于有一天,他们觉得这样打一辈子工,未来也没有希望,就决定先回老家西安,然后再好好想想以后的人生之路。
</p></div>
<div id="div2">
    <p>
    我刚去培训班的时候,为安静坐在我的前面,当我不会用eclipse调试debug的时候,为安静大着嗓门说,这还不简单,上手给我演示了一遍。瞬间对他有了好感,同时觉得班里大家技术都很牛逼。
    培训那年在夏天,天很热空调很不给力,那时候我胃不好,一吃东西就打嗝,需要喝大量的水把它压下去。由于喝水多,闲频繁的去打水比较麻烦,于是,我就去超市买了一个很大的水瓶,大概5、6升。拿到班里没几天,被为安静发现了,见人就说,强子准备把学费喝回来,每天能喝半桶纯净水。后来大家跟风,都买了很大的水瓶来打水,看来大家都想把学费喝回去
    </p>
</div>
<div id="div3">
    <p>
        后来我才知道,为安静在培训班的过道,想装x的说一句“on my god”,结果发音走调的飞上了天,就成了"擀面的"。我到现在也没想出两者发音有什么联系,那时候刚认识为安静没两天,就一直在想能把“on my god”发音成 "擀面的",是一个什么样的男人?"擀面的"后来就成我们开玩笑的一个梗。
    </p>
</div>
</body>
</html>

使用float属性或position属性进行页面布局时有一个比较明显的缺点,就是第一个div元素与第二个div元素时各种独立的,因此如果在第一个div元素中加入一些内容的话,将会使得两个元素的底部不对齐,导致页面中多出一块空白区域。

  • 使用多栏布局方式

在css3中加入了多栏布局方式,使用多栏布局可以将一个元素的内容分为两栏或多栏显示,并且确保各栏内容的底部对齐。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>多栏布局方式的使用示例</title>
    <style>
        div#div1 {
            width: 40em;
            -moz-column-count: 2;
            -webkit-column-count: 2;
            column-count: 2;
        }

        div#div3 {
            width: 100%;
            background-color: yellow;
            height: 200px;
        }
    </style>
</head>
<body>
<div id="div1">
    <p>为安静高三的时候有一个女同桌,快高考的时候有一天他突发感慨,就对着女同桌说:我想去南方,看看外面的世界。女同桌说:哎呀妈呀,老娘等你这句话已经很久了,走走走!
        为安静和女同桌在南方辗转六年去过很多地方,深圳东莞广州福建…他们在工厂里打过工,高档小区当过保安,酒店做过服务生。为安静曾经给我们吹牛,在酒店的那些日子里,什么牌子的避孕套他都用过。
        六年的时间把女同桌变成了女朋友,她跟着他五湖四海的跑,干的事情也和为安静差不多,超市管理员、酒店服务生、糕点店的服务员。
        终于有一天,他们觉得这样打一辈子工,未来也没有希望,就决定先回老家西安,然后再好好想想以后的人生之路。</p>
    <p>
    为安静高三的时候有一个女同桌,快高考的时候有一天他突发感慨,就对着女同桌说:我想去南方,看看外面的世界。女同桌说:哎呀妈呀,老娘等你这句话已经很久了,走走走!
    为安静和女同桌在南方辗转六年去过很多地方,深圳东莞广州福建…他们在工厂里打过工,高档小区当过保安,酒店做过服务生。为安静曾经给我们吹牛,在酒店的那些日子里,什么牌子的避孕套他都用过。
    六年的时间把女同桌变成了女朋友,她跟着他五湖四海的跑,干的事情也和为安静差不多,超市管理员、酒店服务生、糕点店的服务员。
    终于有一天,他们觉得这样打一辈子工,未来也没有希望,就决定先回老家西安,然后再好好想想以后的人生之路。
</p>
    <p>
        我刚去培训班的时候,为安静坐在我的前面,当我不会用eclipse调试debug的时候,为安静大着嗓门说,这还不简单,上手给我演示了一遍。瞬间对他有了好感,同时觉得班里大家技术都很牛逼。
        培训那年在夏天,天很热空调很不给力,那时候我胃不好,一吃东西就打嗝,需要喝大量的水把它压下去。由于喝水多,闲频繁的去打水比较麻烦,于是,我就去超市买了一个很大的水瓶,大概5、6升。拿到班里没几天,被为安静发现了,见人就说,强子准备把学费喝回来,每天能喝半桶纯净水。后来大家跟风,都买了很大的水瓶来打水,看来大家都想把学费喝回去
    </p>
</div>
<div id="div3">
    <p>
        后来我才知道,为安静在培训班的过道,想装x的说一句“on my god”,结果发音走调的飞上了天,就成了"擀面的"。我到现在也没想出两者发音有什么联系,那时候刚认识为安静没两天,就一直在想能把“on my god”发音成
        "擀面的",是一个什么样的男人?"擀面的"后来就成我们开玩笑的一个梗。
    </p>
</div>
</body>
</html>

使用多栏布局的时候,需要将元素的宽度设置成多个栏目的总宽度,它与使用float属性和position属性时的区别是:使用两个属性时需单独设定每个元素的宽度即可,而使用多栏布局时需要设定元素中多个栏目相加后的总的宽度。

我们也可以使用column-width属性单独设置每一栏的宽度而不设定元素的宽度。例子:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>多栏布局方式的使用示例</title>
    <style>
        div#div1 {
            width: 40em;
            -moz-column-count: 2;
            -webkit-column-count: 2;
            column-count: 2;
            -moz-column-width: 19em;
            -webkit-column-width: 19em;
            column-width: 19em;
        }

        div#div3 {
            width: 100%;
            background-color: yellow;
            height: 200px;
        }

        p {
            margin: 0;
        }
    </style>
</head>
<body>
<div id="div1">
    <p>为安静高三的时候有一个女同桌,快高考的时候有一天他突发感慨,就对着女同桌说:我想去南方,看看外面的世界。女同桌说:哎呀妈呀,老娘等你这句话已经很久了,走走走!
        为安静和女同桌在南方辗转六年去过很多地方,深圳东莞广州福建…他们在工厂里打过工,高档小区当过保安,酒店做过服务生。为安静曾经给我们吹牛,在酒店的那些日子里,什么牌子的避孕套他都用过。
        六年的时间把女同桌变成了女朋友,她跟着他五湖四海的跑,干的事情也和为安静差不多,超市管理员、酒店服务生、糕点店的服务员。
        终于有一天,他们觉得这样打一辈子工,未来也没有希望,就决定先回老家西安,然后再好好想想以后的人生之路。</p>
    <p>
        为安静高三的时候有一个女同桌,快高考的时候有一天他突发感慨,就对着女同桌说:我想去南方,看看外面的世界。女同桌说:哎呀妈呀,老娘等你这句话已经很久了,走走走!
        为安静和女同桌在南方辗转六年去过很多地方,深圳东莞广州福建…他们在工厂里打过工,高档小区当过保安,酒店做过服务生。为安静曾经给我们吹牛,在酒店的那些日子里,什么牌子的避孕套他都用过。
        六年的时间把女同桌变成了女朋友,她跟着他五湖四海的跑,干的事情也和为安静差不多,超市管理员、酒店服务生、糕点店的服务员。
        终于有一天,他们觉得这样打一辈子工,未来也没有希望,就决定先回老家西安,然后再好好想想以后的人生之路。
    </p>
    <p>
        我刚去培训班的时候,为安静坐在我的前面,当我不会用eclipse调试debug的时候,为安静大着嗓门说,这还不简单,上手给我演示了一遍。瞬间对他有了好感,同时觉得班里大家技术都很牛逼。
        培训那年在夏天,天很热空调很不给力,那时候我胃不好,一吃东西就打嗝,需要喝大量的水把它压下去。由于喝水多,闲频繁的去打水比较麻烦,于是,我就去超市买了一个很大的水瓶,大概5、6升。拿到班里没几天,被为安静发现了,见人就说,强子准备把学费喝回来,每天能喝半桶纯净水。后来大家跟风,都买了很大的水瓶来打水,看来大家都想把学费喝回去
    </p>
</div>
<div id="div3">
    <p>
        后来我才知道,为安静在培训班的过道,想装x的说一句“on my god”,结果发音走调的飞上了天,就成了"擀面的"。我到现在也没想出两者发音有什么联系,那时候刚认识为安静没两天,就一直在想能把“on my god”发音成
        "擀面的",是一个什么样的男人?"擀面的"后来就成我们开玩笑的一个梗。
    </p>
</div>
</body>
</html>

可以使用column-gap属性来设定多栏之间的间隔距离。

可以使用column-rule属性在栏与栏之间增加一条间隔线,并且设定该间隔线的宽度、颜色等。

posted @ 2017-07-06 16:34  余子酱  阅读(621)  评论(0编辑  收藏  举报