CSS系列2-定位3:清除浮动1
2015-05-20 11:04
190 查看
浮动在布局上给我们带来了很多的方便,那么它有没有不足之处呢?
假设我们现在要做一个CSDN博客的这个样式
我们写下如下代码
得到了这样的效果
看上去我们基本实现了CSDN的这样一个效果,并且这个效果应该有这么一个结构,那就是我有一个ul包裹着这些li,像这样
现在我们设置一下ul的背景色background-color:#000让它显示出来。很可惜,没有达到我们预期的效果
可以看到,在设置了背景色之后,页面并没有显示出ul,同时我们在浏览器调试的时候发现ul的尺寸为944*0,也就是说我们的ul没有高度。
当我们的li不设置浮动的时候,ul是可以根据li自动调整自己的尺寸的,如图所示,取消浮动后黑色ul立即显示出来了
那么这是为什么呢?
浮动和绝对定位类似,不再属于文档的普通流中,因此事不会影响到块级框的布局的(对内联框会有影响)。因此文档普通流会表现出浮动元素不存在时的样子,也就是说包含框不会自动改变自己的高度而是默认为0,因为它认为它里面没有内容啊。这种现象也就是所说的“高度塌陷”现象。这个现象在我们实际不居中是不愿意看到的,因为这会对我们之后的元素布局造成影响,因此,清除浮动就变得很重要。
假设我们现在要做一个CSDN博客的这个样式
我们写下如下代码
<pre name="code" class="html"><html> <meta http-equiv="content-type" content="text/html;charset=utf-8" /> <head> <title>test</title> <style type="text/css"> *{ margin:0px; padding:0px; font-size:14px; } ul li{ float: left; height: 39px; margin: 0 5px; padding: 0 25px; border:1px solid #eee; border-radius:5px 5px 0px 0px; background-color:#ccc; color:#3B5998; line-height:39px; } </style> </head> <body> <ul> <li>发表文章</li> <li>文章管理</li> <li>类别管理</li> <li>评论管理</li> <li>博客配置</li> <li>博客栏目</li> <li>草稿箱</li> <li>回收站</li> </ul> </body> </html>
得到了这样的效果
看上去我们基本实现了CSDN的这样一个效果,并且这个效果应该有这么一个结构,那就是我有一个ul包裹着这些li,像这样
现在我们设置一下ul的背景色background-color:#000让它显示出来。很可惜,没有达到我们预期的效果
可以看到,在设置了背景色之后,页面并没有显示出ul,同时我们在浏览器调试的时候发现ul的尺寸为944*0,也就是说我们的ul没有高度。
当我们的li不设置浮动的时候,ul是可以根据li自动调整自己的尺寸的,如图所示,取消浮动后黑色ul立即显示出来了
那么这是为什么呢?
浮动和绝对定位类似,不再属于文档的普通流中,因此事不会影响到块级框的布局的(对内联框会有影响)。因此文档普通流会表现出浮动元素不存在时的样子,也就是说包含框不会自动改变自己的高度而是默认为0,因为它认为它里面没有内容啊。这种现象也就是所说的“高度塌陷”现象。这个现象在我们实际不居中是不愿意看到的,因为这会对我们之后的元素布局造成影响,因此,清除浮动就变得很重要。
相关文章推荐
- CSS系列2-定位3:清除浮动2
- css 布局+定位+浮动和清除
- css区块定位之浮动与清除属性
- CSS系列2-定位2:浮动
- CSS清除浮动和定位
- css清除浮动定位造成的异常
- CSS笔记-定位Position 及 浮动清除
- 【css技术指南笔记】 第三章 盒子模型 浮动 清除浮动 定位 显示属性 背景
- CSS的定位,浮动与清除浮动,position的定位
- CSS系列:CSS中盒子的浮动与定位
- 5-CSS-浮动清除-继承-优先级-定位-引入CSS-盒子模型
- CSS清除浮动和定位
- css清除浮动的几种方法
- CSS 相对/绝对(relative/absolute)定位系列(三)
- css 相对定位 绝对定位 浮动 分析
- css清除浮动大全,共8种方法
- css清除浮动float的三种方法总结,为什么清浮动?浮动会有那些影响?一起来$('.float')
- CSS 相对/绝对(relative/absolute)定位系列(三)
- 什么是CSS清除浮动?