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

如何设置DIV元素支持纵向滚动且高度不超过浏览器页面100%高度

问题解决方案

核心原因

你之前设置的滚动不生效,本质是承载内容的容器没有固定的可参考高度:

  • ul、li两个父级容器都没有继承视口高度,会随内容自动撑开
  • .accslide 容器虽然设了height:100%,但父级li没有明确高度,这个属性无法生效,自然也不会触发内部滚动
  • 浮动布局会导致高度塌陷,进一步加剧高度计算异常

需修改的代码

1. CSS部分调整

找到对应选择器,替换为以下规则:

/* LIST */
ul {
  list-style: none;
  margin: 0px;
  height: 100%; /* 新增,继承body的100%视口高度 */
  display: flex; /* 新增,替代浮动解决高度塌陷问题 */
}

li {
margin: 0px;    
height: 100%; /* 新增,继承ul的高度 */
display: flex; /* 新增,内部元素横向排列 */
}

/* SLIDES */
.accslide {
  display: block;
  height: 100%;
  width: 0px;
  /* 删除原有float: left;属性 */
  overflow-x: hidden;
  overflow-y: auto; /* 新增,内容超出时自动显示纵向滚动条 */
  font-size: 14px;
  line-height: 1.5;
  -moz-transition: all 700ms ease;
  -o-transition: all 700ms ease;
  -webkit-transition: all 700ms ease;
  transition: all 700ms ease;
}

2. HTML部分调整

删除第一个标签页.content节点上的内联样式style="overflow-y:scroll;",避免出现双层滚动条。

修改后即可实现整个站点高度固定为视口100%,内容超出时仅在内容区域内部滚动的效果。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 11:21:03