修改el-autocomplete下拉列表的样式
碰到一个需求,我这里使用el-autocomplete,因为列表的内容可能很长,导致显示不全,影响阅读。所以需要修改一下下拉列表的宽度为auto,使得其适应内容宽度,而不是继承父元素宽度。一开始使用深度作用选择器,发现作用样式不生效,查看dom结构发现是因为下拉列表的class是插入至body下的,而不是vue app 下。所以无法作用到。解决方法:将popper-append-to-body设为
·
碰到一个需求,我这里使用el-autocomplete,因为列表的内容可能很长,导致显示不全,影响阅读。
所以需要修改一下下拉列表的宽度为auto,使得其适应内容宽度,而不是继承父元素宽度。
一开始使用深度作用选择器,发现作用样式不生效,查看dom结构发现是因为下拉列表的class是插入至body下的,而不是vue app 下。所以无法作用到。
解决方法:
将popper-append-to-body设为false,然后再使用深度作用选择器。
上代码
<template v-slot:acc_no_edit="{ row }">
<el-autocomplete
class="inline-input"
ref="accNoSearch"
v-model="row.acc_name"
:popper-append-to-body="false"
:fetch-suggestions="querySearch"
size="medium"
@select="handleSelect($event,row)"
clearable
@clear="clearSelect(row)"
@keydown.enter.native="handleSelect(null,row)"
value-key="acc_title"
/>
</template>
// 修改下拉列表的宽度,使得其可以自动适应内容。
::v-deep.el-autocomplete .el-popper{
width: auto !important;
}
效果如下
更多推荐
已为社区贡献7条内容
所有评论(0)