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

如何为overlay(叠加层)在达到指定高度时添加滚动条?

实现代码

HTML 结构

<button id="cartBtn">cart</button>

<!-- 叠加层容器 -->
<div id="overlay" class="overlay">
  <!-- 叠加层内容区域 -->
  <div class="overlay-content">
    <!-- 此处可替换为实际业务内容 -->
    <p>购物车商品1</p>
    <p>购物车商品2</p>
    <p>购物车商品3</p>
    <p>购物车商品4</p>
    <p>购物车商品5</p>
    <p>购物车商品6</p>
    <p>购物车商品7</p>
    <p>购物车商品8</p>
    <p>购物车商品9</p>
    <p>购物车商品10</p>
    <p>购物车商品11</p>
    <p>购物车商品12</p>
  </div>
</div>

CSS 样式

/* 叠加层默认隐藏 */
.overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(30, 144, 255, 0.9); /* 半透蓝色背景,可自行调整色值 */
  z-index: 999;
  padding: 20px;
  box-sizing: border-box;
}

/* 叠加层内容区域,超出最大高度自动出现垂直滚动条 */
.overlay-content {
  max-height: 80vh; /* 高度阈值设为视口高度的80%,可自行修改数值 */
  overflow-y: auto;
  color: #fff;
  font-size: 16px;
}

/* 控制叠加层显示的类 */
.overlay.show {
  display: block;
}

#cartBtn {
  padding: 8px 16px;
  cursor: pointer;
}

JavaScript 逻辑

const cartBtn = document.getElementById('cartBtn')
const overlay = document.getElementById('overlay')

// 点击cart按钮切换叠加层显示/隐藏状态
cartBtn.addEventListener('click', () => {
  overlay.classList.toggle('show')
})

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 06:54:03