CSS技巧:子元素浮动后父容器的闭合

2016-02-19 17:27 7 1 收藏

今天图老师小编给大家介绍下CSS技巧:子元素浮动后父容器的闭合,平时喜欢CSS技巧:子元素浮动后父容器的闭合的朋友赶紧收藏起来吧!记得点赞哦~

【 tulaoshi.com - Web开发 】

  最近两个月断断续续做了好几个网站的美工,做的过程中对DIV+CSS的标准开发有了进一步的了解。有两点收获最大,一是彻底弄懂了CSS的盒子模式(Box Model),再一个就是搞定了困扰我很久的“闭合浮动元素”的问题:

  一般说来如果某个子元素使用了浮动(float),那父元素总是不能确切地知道子元素是在什么位置结束的,所以父元素的下边框总是从子元素的中间甚至是顶部穿过,看起来很不舒服。

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

  最早时我都是在子元素结束后单独加个br /或div/div将其属性设置为“clear:all;”,但这样一来就需要生成不少没用的空标签,甚至有些网站需要修改ASP代码以自动添加这些空标签,只能算是下策。

  后来发现当父标签也设置为浮动(float)时就可以在正确的位置闭合了,所以就把父容易也浮动起来,这样一来很多ASP代码就不需要改了,遇到需要添加含Clear属性的空标签时如果不能从模板中添加,而需要从ASP代码中添加时,就不需要改ASP代码了,只需要把父容器设为浮动,如果还需要改ASP,那就再把父容器的父容器设为浮动,一层层地浮动上去,总能解决问题的。这虽然能省不少事,但很容易造成整个页面中全是浮动元素,-_-!!! 也只能算是中策而已。

  再后来,在网上搜索别的东西时偶然发现有人说只要在父容器的CSS属性中加上以下两个属性就可以搞定了:

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

overflow: auto;
_height: 1%;

  试了一下,果然好用,这么一来,这在目前应该算是解决这一问题的上策了:不需要对页面做任务修改,也基本上不需要对父容器--甚至是父容器的父容器做什么改动,只给父容器添加两个无所谓的属性就搞定了。

来源:http://www.tulaoshi.com/n/20160219/1615255.html

延伸阅读
标签: Web开发
按照CSS规范,浮动元素(floats)会被移出文档流,不会影响到块状盒子的布局而只会影响内联盒子(通常是文本)的排列。因此当其高度超出包含容器时,一般父容器不会自动伸长以闭合浮动元素。但是有时我们却需要这种自动闭合行为,具体如何处理呢? 有一种做法就是在父容器内再插入一个额外的标签,并令其清除浮动(clear)以撑大父容器。这...
标签: Web开发
关于闭合浮动元素(clearing float)的方法现在已经很多了,个人认为简单实用的方法就是使用:after伪类动态的嵌入一个用于清除浮动的元素,可惜代码量太大了,看上去不够简洁。 这一方面的原理是,外围元素之所以不能很好的延伸,问题出在了overflow上,因为overflow不可见(见W3C的解释)。现在只要将给外围元素添加一个overflow:aut...
标签: Web开发
一、float 闭合(清除浮动) 将以下代码加入Global CSS 中,给需要闭合的div加上 class="clearfix" 即可,屡试不爽. style .clearfix:after { content:"."; display:block; height:0; clear:both; visibility:hidden; } .clearfix { display:inline-block; } .clearfix {display:bl...
标签: Web开发
当元素设置浮动(float)后会被移出文档流,相信大家都会经常遇到这样的问题。 这问题的解决办法有N种之多,因为每种浏览器对CSS的解析各异,所以在不同浏览器使用清除浮动的元素也会有所不同。 我认为目前还没有最好的清除浮动元素或组合,而是根据情况分析而选择,最好的清除浮动元素或组合。 为了兼容不同浏览器,可能要使用不同的清除...
标签: Web开发
IE捉迷藏bug(peek-a-boo),之所以起这个名称是因为在某些条件下文本看起来消失了,只有在重新装载页面时才再度出现。出现这个bug的条件是:一个浮动元素后而跟着一些非浮动元素,然后是一个清理元素,所有这些元素都包含在一个设置了背景颜色或图像的你元素中。如果清理元素砬到了浮动元素,那么中间的非浮支元素看起来消失了,隐到了父...

经验教程

373

收藏

23

精华推荐

css浮动的实例

css浮动的实例

笑笑是我的娃娃

CSS教程:容器定位

CSS教程:容器定位

利琴a

CSS教程:关于浮动

CSS教程:关于浮动

莫小姐1211

微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部