要自定义填充溢出父元素的mat-select,你可以使用CSS来修改mat-select的样式。下面是一个示例代码,演示如何实现这个效果:
HTML代码:
选项1
选项2
选项3
选项4
CSS代码:
.custom-select ::ng-deep .mat-select-trigger {
/* 设置父元素的填充为0,以便让下拉框溢出父元素 */
padding: 0;
}
.custom-select ::ng-deep .mat-select-panel {
/* 设置下拉框的位置和大小 */
position: absolute;
top: 100%;
left: 0;
width: 100%;
max-height: 200px;
overflow-y: auto;
}
这段代码使用了 ::ng-deep 选择器来穿透Angular的组件封装,以便修改内部元素的样式。它将mat-select-trigger的填充设置为0,以便让下拉框溢出父元素,并将mat-select-panel的位置设置为绝对定位,以及设置最大高度和垂直滚动条。
你可以根据需要调整样式,将.custom-select类添加到你的mat-select元素上,以应用自定义样式。