You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Div设置height:100%不生效,求替代100vh的全屏高度方案

解决#home_Page占满视口高度且适配移动端的方案

核心思路

不用100vh(会被移动端浏览器UI栏遮挡),改用**动态视口单位dvh**搭配Flex布局,同时确保父元素高度链完整,既实现占满可视区域,又支持内部图片自适应高度。

具体代码修改

1. 根元素(html/body)样式

html, body {
  margin: 0;
  padding: 0;
  /* 优先用dvh适配移动端,旧浏览器回退到vh */
  min-height: 100vh;
  min-height: 100dvh;
  display: flex;
  flex-direction: column;
}

2. #home_Page样式

#home_Page {
  /* 占满父容器剩余高度,自动适配视口 */
  flex: 1;
  display: flex;
  flex-direction: column;
  /* 可选:避免内部元素溢出时出现滚动条 */
  min-height: 0;
}

3. 内部元素样式调整

#homeSection {
  background-image: url(Assets/images/GraffitoViaDellaPace.svg);
  background-position: bottom right;
  background-repeat: no-repeat;
  padding-left: 20px;
  margin-top: calc(45px + 1vw);
  /* 仅占自身内容高度,不挤压图片区域 */
  flex: 0 0 auto;
}

#fotoRicordi {
  /* 占剩余空间,让图片自适应填充 */
  flex: 1;
  display: flex;
  align-items: center;
  overflow: hidden;
}

#fotoRicordi img {
  width: 100%;
  height: auto;
  /* 可选:如果需要图片填充容器且保持比例 */
  object-fit: cover;
}

方案说明

  • dvh是现代浏览器支持的动态视口单位,会自动排除移动端浏览器的顶部/底部UI栏高度,完美替代vh解决遮挡问题;
  • Flex布局让#home_Page自动继承根元素的视口高度,同时内部元素可按需求分配空间,图片容器能自适应剩余高度;
  • 保留了图片的自适应特性,确保#home_Page高度会随图片尺寸变化而调整,同时保证至少占满可视区域。

内容的提问来源于stack exchange,提问作者Devma

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 07:52:36