CSS有方法可以拿到前一个盒子的高度吗?

背景是这样的,vue工程,用的vant组件。为了方便说明我简化来说,如图两个div竖排叠放,第一个div已设置fixed定位,那么如何动态拿到第一个div的height,然后设置给第二个div的margin-top或者其他,做到当滚动的时候,第二个div不会被第一个覆盖。

img

可用div.offsetHeight获取高度,但建议少用position。
可以设计为上下两部分:
1、第一div高度设置固定高度
2、第二div是需要滚动的,则设置flex:1;即可铺满剩余位置;
3、关闭外边(html,body)等滚动条,给第二个div开启滚动条 overflow:auto;

  1. 使用这个定位,就不需要那么麻烦
    ```css

position: sticky;

2. 一定要fixed的话,在mounted生命周期获取第一个div的高度赋值给第二个div的margin-top

```javascript

mounted(){
  $("第二个div").css({"margin-top": $("第一个div").height())
}