网上其他方法都是清除浮动的,解决absolute的塌陷问题,发现只有以下这种js有效
<body>
<div class="container" id="container">
<div class="box" id="box" ></div>
</div>
<script>
//拿到子元素的高度
var box=document.getElementById("box").offsetHeight;
//将子元素的高度赋予父元素
document.getElementById("container").style.height=box;
</script>
</body>
或者换个思路,不要用absolute来实现你的需求,比如子变成inline-block然后父设置text-align,或者用flex不香吗?