首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何设置父div的高度为子div的position: absolute

如何设置父div的高度为子div的position: absolute
EN

Stack Overflow用户
提问于 2018-08-19 02:37:47
回答 2查看 3.5K关注 0票数 1

我有一个没有高度的父div,也嵌套了另一个子div,里面有绝对位置。Child div的高度为652px。但我不能在父div中获得相同的高度。我试着使用clear: both,overflow。

代码如下:

HTML

代码语言:javascript
运行
复制
    <div class="content">
      <div class="container">
          some other elements whose height is 652px... 
      </div>
     </div>

CSS

代码语言:javascript
运行
复制
.content {
  position: relative;
}

.container {
  position: absolute;
  width: 100%;
  max-width: 1160px;
  margin: 0 auto;
  padding: 120px 0;
}

Content div的高度为0。容器div的高度是652px。如何让content div的高度与容器div的高度一致?

EN

Stack Overflow用户

回答已采纳

发布于 2018-08-19 03:01:03

我不认为在保持孩子们绝对位置的情况下,使用CSS是不可能的。

绝对定位的元素将从文档流中完全移除,因此它们的尺寸不能改变其父元素的尺寸。

如果您确实需要在将子对象保留为position: absolute的同时实现此效果,则可以使用JavaScript,方法是在渲染后找到绝对定位子对象的高度,并使用该高度设置父对象的高度。

代码语言:javascript
运行
复制
var content=document.querySelector('.content');
var container=document.querySelector('.container');

content.style.height=container.offsetHeight + 'px';
代码语言:javascript
运行
复制
*{box-sizing:border-box;}

.content {
  width: 100%;
  max-width: 1160px;
  margin: 0 auto;
  /*padding: 120px 0;*//*Padding removed for example*/
   border:5px solid green;
}
.container{
  position: absolute;
  overflow: hidden;
  width: 100%;
  border:2px solid red;
  height:652px;
}
代码语言:javascript
运行
复制
<div class="content">
  <div class="container">
    some other elements whose height is 652px...
  </div>
</div>

票数 1
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51911553

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档