- 多栏布局
使用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属性在栏与栏之间增加一条间隔线,并且设定该间隔线的宽度、颜色等。