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

Angular12+Owl Carousel中mat-card hover放大无法超出轮播容器问题

问题根源

ngx-owl-carousel-o 为实现轮播滚动效果,默认给所有内部层级容器添加了overflow: hidden属性,导致hover放大的卡片超出容器部分被自动裁剪,无法外溢展示。

完整修改方案

1. 样式(SCSS)修改

直接替换你原有的CSS代码为以下内容,已覆盖所有需要调整的点:

.container {
  margin-top: 2rem;
  margin-right: 300px;
  margin-left: 5%;
  /* 确认外层无overflow: hidden即可 */
}

.sessao-titulo {
  margin-left: 5%;
  color: #fff;
}

.carrossel {
  background-color: rgba(0, 0, 0, 0.1);
  /* 移除固定高度避免裁剪放大后的卡片,加padding预留放大空间 */
  padding: 70px 45px;
}

/* 覆盖Owl Carousel默认overflow限制,加::ng-deep穿透Angular样式封装,限定父类避免全局污染 */
::ng-deep .carrossel .owl-carousel,
::ng-deep .carrossel .owl-stage-outer,
::ng-deep .carrossel .owl-stage,
::ng-deep .carrossel .owl-item {
  overflow: visible !important;
}

/* 提高轮播导航按钮层级,避免被放大的卡片遮挡 */
::ng-deep .carrossel .owl-nav button {
  position: relative;
  z-index: 20;
}

.card {
  width: 290px;
  height: 225px;
  margin: 0 12px;
  background-color: #fff;
  border-radius: 10px;
  box-sizing: border-box;
  /* 原5.5s过渡时间过长,改为0.3s符合常用交互动效速度 */
  transition: all 0.3s ease;
  /* 开启定位用于控制层级 */
  position: relative;
  z-index: 1;
}

.carrossel .card:hover {
  transform: scale(1.5);
  background-color: aqua;
  /*  hover时提高层级,避免被周边卡片遮挡 */
  z-index: 10;
}

.corpo-relatorio {
  padding: 20px 10px 20px 10px;
}

.titulo-relatorio {
  color: #000;
  font-size: 18px;
  text-align: center;
  font-weight: 500;
}

.descricao-relatorio {
  color: #000;
  font-size: 13px;
  padding-top: 5px;
}

2. 可选优化(按需调整)

  • 如果放大后左右边缘的卡片还是被外层容器裁剪,可以适当增大.container的左右margin,或者给.carrossel加更大的左右padding
  • 缩放比例可以根据需求调整scale的参数,同步调整padding值预留对应空间即可

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.09 17:03:03