Vue中select 标签自定义样式
需求原因:我在vue开发中,也会习惯使用各种UI库,但让人难受的是,提供的UI组件的样式难以覆盖,比如我要用的select,我的界面风格是深蓝色的,它的白色背景都不符合需求,要跑到element-plus的样式文件去修改。=》之后,我想,这种简单的组件,我完全可以自己手写,好处可以让我更好的掌握select本身,消除不确定的部分。=》以后,可以直接拿来当组件使用下面就是自己修改出来的样式截图。..
·
需求原因:我在vue开发中,也会习惯使用各种UI库,但让人难受的是,提供的UI组件的样式难以覆盖,比如我要用的select,我的界面风格是深蓝色的,它的白色背景都不符合需求,要跑到element-plus的样式文件去修改。
=》之后,我想,这种简单的组件,我完全可以自己手写,好处可以让我更好的掌握select本身,消除不确定的部分。
=》以后,可以直接拿来当组件使用
下面就是自己修改出来的样式截图
<template>
<select v-model="selectId" class="select-box">
<option v-for="item in options" :key="item.id" :value="item.id">
{{ item.name }}
</option>
</select>
</template>
<script setup>
import {ref, reactive} from 'vue';
let selectId = ref(1); //默认选择id为1的选项
let options = reactive([ //数据
{
id:1,
name:"张三"
},
{
id:2,
name:"李四"
},
{
id:3,
name:"玄策"
}
]);
</script>
<style scope lang="scss">
.select-box {
width: 1.8rem; /*设置宽度确保内容 和 下拉icon的距离*/
padding-top: 0.06rem;
padding-bottom: 0.06rem;
padding-left: 0.07rem;
background: transparent;
border: none;
font-size: 0.15rem;
font-family: Microsoft YaHei;
font-weight: bold;
color: #ffc000;
/*清除select聚焦时候的边框颜色*/
outline: none;
option {
background: #06175b;
border: none;
}
}
</style>
更多推荐
已为社区贡献7条内容
所有评论(0)