带有 ng-select 的下拉面板中的透明背景错误

Transparent background bug in dropdown panel with ng-select

我有一个奇怪的错误,只有当下拉面板超出浏览器时才会出现 window。然后面板的背景变为透明。如果调整浏览器 window 的大小以便在单击时可以完全显示下拉面板,背景将不再透明。

这些是影响 ng-select 下拉菜单的自定义样式:

    .prop-form {
      ...

      &__row {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
      }

      &__col {
        flex: 1;
      }

      &__dropdown {
        display: flex;
        align-items: baseline;
      }

      &__ng-select {
        width: 100%;
        margin: 0.75em 0.5em;
      }

      &__ng-select > .ng-value-container {
        padding-bottom: 0;
      }
    }

和标记:

    <div class="prop-form__row">
      ...
      <div class="prop-form__col">
        <div class="prop-form__dropdown">
          <ng-select class="prop-form__ng-select" name="time"
            [items]="scheduleFormService.timeOptions" [markFirst]="true" [clearable]="false" [searchable]="false"
            placeholder="Select time" formControlName="time">
            <ng-template ng-option-tmp let-item="item">
              <div>{{ item }}</div>
            </ng-template>
          </ng-select>
        </div>
      </div>
      ...
    </div>

已经尝试过的解决方案(但没有奏效):

错误出现在 Chrome 和 Safari 中。

我的同事能够找到问题所在。下拉容器的高度设置为自动。因此,当模态框的高度不足以显示所有项目时,高度将调整为较小的值。

解决方案:

.ng-dropdown-panel {
  white-space: normal;
  height: fit-content;
}