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

如何让div容器内部分元素溢出可见、部分溢出隐藏?

解决方案:让图片溢出父容器可见,同时保留圆形的溢出隐藏效果

核心问题在于父容器的overflow:hidden会统一裁剪所有子元素的溢出部分,包括图片。要实现你的需求,需要将图片从这个裁剪容器中剥离出来,通过独立定位实现溢出可见,同时让彩色圆形留在原容器内受裁剪限制。

修改后的代码:

CSS 部分

.container {
  height: 300px;
  width: 300px;
  margin-top: 50px;
  background-color: black;
  position: relative;
  overflow: hidden;
  z-index: 1;
}

.subContainer1 {
  position: absolute;
  top: -50px;
  left: 90px;
  background-color: red;
  width: 110px;
  height: 110px;
  z-index: 3;
}

.imgContainer {
  width: 90px;
  height: 90px;
  position: absolute;
  top: -50px;
  left: 90px;
  z-index: 4;
}

.blueCircle {
  height: 100px;
  width: 100px;
  border-radius: 100px;
  background-color: #3D1CC4;
  position: absolute;
  top: -50px;
  left: 0;
  z-index: 2;
}

.greenCircle {
  height: 100px;
  width: 100px;
  border-radius: 100px;
  background-color: greenyellow;
  position: absolute;
  top: -50px;
  right: 0;
  z-index: 2;
}

HTML 部分

<div class="container">
  <div class="subContainer1"></div>
  <div class="blueCircle"></div>
  <div class="greenCircle"></div>
</div>
<img src="https://picsum.photos/200" alt="random img" class="imgContainer">

关键修改说明:

  • 将img元素从subContainer1中移出,放到container的同级位置,脱离父容器的overflow:hidden裁剪范围
  • 给imgContainer添加绝对定位,通过top和left属性设置和原位置完全一致的坐标,保证视觉布局不变
  • 保留container的overflow:hidden,让蓝色和绿色圆形的溢出部分继续被隐藏
  • 维持原有z-index层级,确保图片显示在红色容器和圆形上方

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.07 00:33:00