两个DIV,父元素相对定位没有设置高度,子元素绝对定位高度随内容变化,此无法撑开父DIV

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了两个DIV,父元素相对定位没有设置高度,子元素绝对定位高度随内容变化,此无法撑开父DIV相关的知识,希望对你有一定的参考价值。

你这个是怎么解决的???

参考技术A 使用绝对定位,已经脱离了文档流,貌似要用JS。追问

谢谢回答,已经好了

参考技术B 撑不开 一般要是没啥太大要求就定height了追问

已经好了,http://wenda.tianya.cn/question/657292a2950d75da 谢谢 回答 我的包裹的divoverflow设为hidden了所以无法显示 现在好了

本回答被提问者采纳

div+css中 父容器用position:relative; 定义,子容器用position:absolute定义 。父容器不能高度自适应

div+css中 父容器用position:relative; width:1000px;定义。2个子容器用position:absolute;定义,发现父容器高度就不能自适应了,如何解决 求 大神
非常感觉大家的帮助,但是我采用过overfl:auto但是还是没有,clear:both我没有float,所以不对的。

绝对定位(position:absolute;)使元素的位置与文档流无关,因此不占据空间。设置为绝对定位的元素框从文档流完全删除,并相对于其包含块定位。元素原先在正常文档流中所占的空间会关闭,就好像该元素原来不存在一样。

要子容器自适应高度,就不能用position:absolute; 你可以用 相对定位(position:relative;)来确定子容器的位置。
参考技术A display:table 参考技术B 今晚搞手机pc自适应banner轮播,也发现了这个问题
弄个空白的图片(图片大小要适合哦哦),width:100%; height:auto;撑开文档流,这样外层div就能自动适应了
参考技术C 用js动态获取相对定位的子元素的高度,然后赋值给父元素就行啦 参考技术D 在两个子容器外再套一个DIV就可以了。把relative属性加到新套上去的div上,最外框div就可以自适应了。

以上是关于两个DIV,父元素相对定位没有设置高度,子元素绝对定位高度随内容变化,此无法撑开父DIV的主要内容,如果未能解决你的问题,请参考以下文章

子元素绝对定位,父元素高度自适应子元素高度

div+css中 父容器用position:relative; 定义,子容器用position:absolute定义 。父容器不能高度自适应

CSS使容器相对父元素垂直水平居中定位(父容器及子元素大小不确定)

如何在绝对元素之后放置相对元素并导致父 div 扩展以适合子元素?

CSS实现垂直居中的7种方法

子元素使用了绝对定位,父元素怎么高度自适应