当前位置: 首页 > 图文教程 > 网页制作 > CSS样式表 > CSS教程:彻底弄懂闭合浮动元素

CSS样式表
CSS3教程(10):CSS3 HSL声明设置颜色
CSS3教程:新增加的结构伪类
网页布局绝对定位(position)轻松简单
掌握盒模型轻松DIV CSS网页布局
实例方式学CSS text-align怎么用
网页重构时在IE6中遇到png兼容性
CSS3教程:边框属性border的极致应用
CSS网页布局使用表格可以吗?
最新版本的CSS选择器浏览器支持情况
有序列表和段落设计华丽的网页列表数字
CSS教程:通过实例学习和理解CSS盒模型
CSS网页布局的核心内容:CSS盒模型
CSS3伪类选择器:nth-child()
CSS教程:inline-block在各浏览器的显示
CSS实现网页分栏布局的方法:绝对定位和浮动
CSS实例:用CSS制作网页像素画
CSS教程:三列固定网页布局实例
无hack无js全兼容text-overflow-ellipsis效果
CSS解决方案:IE6中遇到png兼容性
CSS学习之类目之间竖线的练习实例

CSS样式表 中的 CSS教程:彻底弄懂闭合浮动元素


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-11   浏览: 137 ::
收藏到网摘: n/a


                         一般说来如果某个子元素使用了浮动(float),那父元素总是不能确切地知道子元素是在什么位置结束的,所以父元素的下边框总是从子元素的中间甚至是顶部穿过,看起来很不舒服。             
  最近两个月断断续续做了好几个网站的美工,做的过程中对DIV Css的标准开发有了进一步的了解。有两点收获最大,一是彻底弄懂了CSS的盒子模式(Box Model),再一个就是搞定了困扰我很久的“闭合浮动元素”的问题:
  一般说来如果某个子元素使用了浮动(float),那父元素总是不能确切地知道子元素是在什么位置结束的,所以父元素的下边框总是从子元素的中间甚至是顶部穿过,看起来很不舒服。
  最早时我都是在子元素结束后单独加个<br />或<div></div>将其属性设置为“clear:all;”,但这样一来就需要生成不少没用的空标签,甚至有些网站需要修改ASP代码以自动添加这些空标签,只能算是下策。
  后来发现当父标签也设置为浮动(float)时就可以在正确的位置闭合了,所以就把父容易也浮动起来,这样一来很多ASP代码就不需要改了,遇到需要添加含Clear属性的空标签时如果不能从模板中添加,而需要从ASP代码中添加时,就不需要改ASP代码了,只需要把父容器设为浮动,如果还需要改ASP,那就再把父容器的父容器设为浮动,一层层地浮动上去,总能解决问题的。这虽然能省不少事,但很容易造成整个页面中全是浮动元素,-_-!!! 也只能算是中策而已。
  再后来,在网上搜索别的东西时偶然发现有人说只要在父容器的CSS属性中加上以下两个属性就可以搞定了:
overflow: auto;
_height: 1%;
  试了一下,果然好用,这么一来,这在目前应该算是解决这一问题的上策了:不需要对页面做任务修改,也基本上不需要对父容器--甚至是父容器的父容器做什么改动,只给父容器添加两个无所谓的属性就搞定了。