css子元素浮动后父元素高度不能自动撑开

.news是父级元素,它的子元素li浮动后父级元素.news高度就无法自动适应了
如果你看不清楚上面的图片你就把图片拖出来看,图片是很大很清楚的,只是百度提问这个框架让他等比例缩小而已

1、首先新建一个html文件,命名为test.html。

2、在test.html文件内,使用p标签创建两行文字,代码如下。

3、在test.html文件内,设置第一个p标签id属性为mp,主要用于下面使用css设置该p元素隐藏。

4、在test.html文件内,编写标签<style type="text/css"></style>,下面将在标签内编写css样式。

5、在css标签内,使用css设置p标签的行高为30px,在浏览器运行test.html。

6、在css标签内,对id为mp的p元素样式进行单独定义,通过dispay属性设置为none,实现该p元素隐藏不可见。

7、最后在浏览器打开test.html文件,查看实现的效果。

温馨提示:内容为网友见解,仅供参考
第1个回答  2017-03-14
三种方法可以解决:
1、给父元素(也就是你的.new)加一个overflow:hidden;
2、将父元素也一起浮动(这个比较复杂,会影响到父元素的同级元素);
3、在父元素的最后一个子元素(也就是你的ul标签)后边再增加多一个非浮动的子元素,然后将这个子元素加个clear(例:<div style="clear:both"></div>)

至于第3种方法的原理嘛…是因为父元素一定会包围着他所有遵循标准流的子元素(也就是你在最后新加的那个非浮动子元素),而这个子元素的顶部会紧贴在你的ul底部,所以父元素会因此撑开高度。
(CSS浮动原理:如果B元素浮动,上一个元素也是浮动的话,会紧跟其后,除非不够宽才会另起一行;如果上一个元素不是浮动的话,也就是遵循标准流,那么B元素顶部会紧贴上一个元素底部;当然,如果B元素不浮动,是遵循文档流的话,就会默认占一行了)
关于CSS浮动这里有篇通俗易懂的文章:
http://www.cnblogs.com/zhongxinWang/archive/2013/03/27/2984764.html#commentform本回答被网友采纳
第2个回答  2015-07-22
所以说要清理浮动,百度下:清理浮动 或 清楚浮动,有n种相关方法,把它学会,清理之后就正常了。

记住,99%的情况下你只要用了浮动,接下来第一件事就是清理。追问

我清除过了,还是没用~~~

追答

方法不对或其他代码有问题,你这样发个图是看不出来的。

第3个回答  2016-08-26
加一个dispaly:table:
clear:both
第4个回答  2015-08-01
你给news加一个overflow:hidden

css子元素浮动后父元素高度不能自动撑开
1、首先新建一个html文件,命名为test.html。2、在test.html文件内,使用p标签创建两行文字,代码如下。3、在test.html文件内,设置第一个p标签id属性为mp,主要用于下面使用css设置该p元素隐藏。4、在test.html文件内,编写标签,下面将在标签内编写css样式。5、在css标签内,使用css设置p标签的行高...

在css中什么叫高度垂直塌陷
1. 子元素未设置浮动 .b{ width: 100px;height: 100px;background-color: aqua;} 此时,父元素被子元素撑起 2. 子元素设置浮动 .b{ width: 100px;height: 100px;background-color: aqua;float: left;} 此时,父元素没有被子元素撑起,父元素高度塌陷 二、高度塌陷导致的问题 父元素高度...

CSS 子元素宽度变宽时,如何撑开父元素?
希望子元素撑开父级元素可以使用以下两种方法:1、父级版元素宽度不固定,父级元素设置为inline-block或者添加float;2、对父级元素使用min-width,这样只限制了最小的宽度,如果子元素变宽,父级同样会变宽。3、首先父类元素必须不是相对定位,如果是相对定位宽度就会默认为百分百。所以必须是绝对定位或...

为什么盒子宽度够,但是子盒子浮动后还是不能排好
清除浮动即可。清除浮动其实叫做闭合浮动更合适,因为是把浮动的元素圈起来,让父元素闭合出口和入口不让他们出来影响其他的元素。在CSS中,clear属性用于清除浮动,其基本语法格式如下:选择器{clear:属性值;};\/*属性值为left,清除左侧浮动的影响;属性值为right,清除右侧浮动的影响;属性值为both,同...

清除浮动的方法有哪些
【推荐课程:CSS课程】浮动导致的后果:(1)由于浮动元素脱离了文档流,所以父元素的高度无法被撑开,影响了与父元素同级的元素(2)与浮动元素同级的非浮动元素会跟随其后,因为浮动元素脱离文档流不占据原来的位置(3)如果该浮动元素不是第一个浮动元素,则该元素之前的元素也需要浮动,否则容易影响页面...

CSS教程之CSS浮动(浮动对于元素的影、文档流、浮动对于元素等级...
通过实例,我们来观察浮动的实际效果。当你设置元素浮动时,看似一切顺利,但隐藏的挑战也随之而来。例如,浮动的子元素会影响其父元素的高度,即使父元素本身并未设置高度。这种现象就像“一人得道,鸡犬升天”,子元素的高度会撑起父元素,使其具有高度。尽管浮动在某些布局中非常有用,但需要注意的是,...

浮动以及浮动的用处
设置了浮动以后会按照设置浮动的方向靠,直到碰到了另一个浮动元素,或者碰到了父级元素的边缘(准确点来说应该是父级元素不包括边框和padding的边缘)。当父级元素的一行宽度不够容纳浮动的子元素时,会换行显示浮动元素脱离标准文档流 浮动元素脱离标准文档流的意思就是,它不会占据原本正常显示的位置。更像是“浮”在...

CSS float浮动布局
因此在受浮动影响的父元素,就可以利用此方法,在浮动元素之后新增加一个元素,使新增加的元素清除浮动,这样新增加的元素的位置就在浮动元素的下面,使得在一定程度上实现了撑开盒子的作用。方法二:BFC 其次还可以采用BFC,使得父元素形成独立的空间,也即可以感知子元素的高度和宽度,在一定程度上也不会...

...父DIV设置了position:relative的时候,子DIV如何能把父DIV撑开...
1、作为外部容器的边框为红色的DIV,没有被撑开。这是因为内部的DIV因为float:left之后,就丢失了clear:both和display:block的样式,所以外部的DIV不会被撑开。2、在容器DIV内要显示出来的float:left的所有的DIV之后,我们添加了这样的一个DIV: 。3、在用dojo做Drag & Drop的时候,由于这个DIV是容器...

CSS高度塌陷的8种方法以及优缺点
高度塌陷是指父元素在没有设置高度,且所有子元素都浮动后,父元素高度为0,导致后续元素布局受到影响的现象。解决高度塌陷有多种方法,以下详细阐述8种方法及其优缺点。方法1:父级div定义 height 原理:通过给父级div手动设置高度,解决无法自动获取高度的问题。优点:简单、代码量小、易于掌握。缺点:仅...

相似回答