问题:option选项内容多,导致弹出框过长,甚至超出屏幕,如下:
解决:
1、通过添加Select 下拉框的类名popper-class="popper-class",修改样式,限制弹出框长度,超出...;同时将弹出框插入至 body 元素样式才会生效:popper-append-to-body="false"
2、选项绑定title,悬浮显示全部。
效果如下:
完整代码
<template>
<el-select v-model="value"
popper-class="popper-class"
:popper-append-to-body="false"
placeholder="请选择">
<el-option
v-for="item in options"
:key="item.value"
:label="item.label"
:value="item.value"
:title="item.label">
</el-option>
</el-select>
</template>
<script>
export default{
data() {
return {
options: [{
value: '选项1',
label: '黄金糕好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好好吃'
}, {
value: '选项2',
label: '双皮奶'
}, {
value: '选项3',
label: '蚵仔煎'
}, {
value: '选项4',
label: '龙须面'
}, {
value: '选项5',
label: '北京烤鸭'
}],
value: ''
}
}
}
}
</script>
<style scoped>
.el-select{
width:300px;
}
::v-deep .popper-class {
max-width: 300px;
}
.iclass-text-ellipsis {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
</style>