1

我有一个cdk-virtual-scroll-viewport元素,在这个元素内部我有一个相对定位的 div,里面有一个绝对定位的元素。基本上我希望能够在外部显示绝对定位的项目,cdk-virtual-scroll-viewport但它被切断了......

这是这个问题的堆栈闪电

https://stackblitz.com/edit/angular-kavjsh

组件.html

<div class="container">
  <cdk-virtual-scroll-viewport itemSize="70">
    <div class="test" *cdkVirtualFor="let name of names">
      <p>{{name}}</p>
      <div class="test-item"></div>
    </div>
  </cdk-virtual-scroll-viewport>
</div>

组件.css

p {
  font-family: Lato;
}

cdk-virtual-scroll-viewport {
  width: 150px;
  border: 1px solid black;
  height: 600px;
}

.test {
  position: relative;
}

.test-item {
  position: absolute;
  background: black;
  width: 150px;
  height: 100px;
  left: 50%;
}

这是怎么回事

在此处输入图像描述

我想要的结果是这样

在此处输入图像描述

各种定位配置都试过了还是不行?

任何帮助,将不胜感激!

4

2 回答 2

2

您可以使用以下步骤

  • 重置contain为“初始”或“布局”
  • 更改overflow为“可见”

cdk-virtual-scroll-viewport {
   overflow: visible;
    contain: initial;
  
}

:host() ::ng-deep cdk-virtual-scroll-viewport .cdk-virtual-scroll-content-wrapper {
   contain: inherit;
}

https://stackblitz.com/edit/angular-miqwyw?file=src/app/app.component.css

于 2019-12-06T02:24:43.600 回答
0

尝试在测试 div 或 cdk-virtual-scroll-viewport 中显示溢出


cdk-virtual-scroll-viewport {
  width: 150px;
  border: 1px solid black;
  height: 600px;
  overflow:visible
}

.test {
  position: relative;
  overflow:visible
}

于 2019-12-06T02:05:56.847 回答