通过JavaScript获取刘海屏安全区域高度的方式

2,617 阅读1分钟

在css中,可以通过env()函数读取安全区域规范定义的边界距离值,比如:

margin-top: env(safe-area-inset-top);

但这个方法只能用于css中,JavaScript是无法直接读取env函数的。

想在JavaScript中读取env函数值,需要使用css自定义属性(变量)

首先设置:

:root {
    --sat: env(safe-area-inset-top);
    --sar: env(safe-area-inset-right);
    --sab: env(safe-area-inset-bottom);
    --sal: env(safe-area-inset-left);
}

然后可以在JavaScript中,通过以下方法,读取到css自定义变量

getComputedStyle(document.documentElement).getPropertyValue("--sat")