奇思乎乎乎 iPhone 16e · 17 系列 · Air - 一束网址,折射万屏
100%

输入网址,立刻开始预览

预设:
自定义:

鸿蒙 HarmonyOS NEXT 响应式适配

HarmonyOS NEXT 采用了全新的设计语言,系统底部的“导航条(Navigation Bar)”高度和留白与安卓有显著差异。由于脱离了 AOSP,部分原本在安卓 WebView 上的 CSS 表现,在鸿蒙原生浏览器下会发生变化。

核心差异:

  • 底部安全区变化:鸿蒙 NEXT 的底部小横条占据约 28pt 的空间,且不提供类似 iOS 的 env(safe-area-inset-bottom) 环境变量。
  • 视口高度计算:系统自带的顶部状态栏和浏览器工具栏联动,100vh 极易引发纵向滚动条。
  • 字体渲染:鸿蒙采用了全新的“鸿蒙字体”,同等 font-size 下,视觉大小和行高比安卓默认字体略大。

如何适配?鸿蒙官方建议使用 window.innerHeight 动态计算并设置 CSS 变量,或者在 CSS 中针对 UA 包含 OpenHarmony 的设备做特定降级处理。

在下方输入你的网址,同时加载华为 Pura 70 和 iPhone 17 对比,快速定位鸿蒙上的视觉错位。

常见问题

鸿蒙 NEXT 下 env(safe-area-inset-bottom) 有效吗?
无效。鸿蒙 NEXT 底层不再直接映射此环境变量,建议通过 CSS 媒体查询加特定 Padding 来模拟,或者使用 JS 动态计算。
为什么在鸿蒙上 100vh 溢出?
因为鸿蒙浏览器的地址栏和状态栏的折叠机制不同,导致视口计算包含了非内容区域。推荐用 100% 替代 100vh。

相关工具