elementplus 中 DatePicker 日期选择器样式修改无效

问题

遇到一个需求需要修改 DatePicker 日期选择器的样式,在添加了 scoped 属性的 style 标签,并且使用了 deep 样式穿透的情况下并不能修改其样式。

原因

DatePicker 日期选择器弹出面板默认挂载在 body 上,所以在组件中添加了 scoped 属性的 style 标签下是修改不到其样式的。

解决

官网中提供了一个给弹出面板设置 class 类名的属性------popper-class,通过该属性添加类名后选择该类名来修改样式即可。

需要注意的是,虽然官网提供了该属性,但是我们通过属性来修改样式的时候也并不能改变弹出面板是挂载在 body 的事实,所以我们要修改其样式的话需要把 scoped 属性去掉才行,我们可以添加一个新的不带 scoped 属性的 style 标签来对其样式进行修改。代码如下:

html 复制代码
<template>
  <el-date-picker
     v-model="time"  
     type="datetime"
     placeholder="请选择时间"
     popper-class="date-cell">
  </el-date-picker>
</template>

<style scoped lang="scss">
	...//组件内部样式
</style>

<style lang="scss"> //去掉 scoped 属性
	...//时间选择器样式
</style>
相关推荐
3秒一个大2 分钟前
Vue 任务清单开发:数据驱动 vs 传统 DOM 操作
前端·javascript·vue.js
an86950012 分钟前
vue自定义组件this.$emit(“refresh“);
前端·javascript·vue.js
Avicli3 分钟前
Gemini3 生成的基于手势控制3D粒子圣诞树
前端·javascript·3d
GinoWi3 分钟前
HTML标签 - 列表标签
前端
o__A_A3 分钟前
渲染可配置报告模板+自适应宽度(vue3)
前端·vue.js
鹏北海3 分钟前
Vue 组件解耦实践:用回调函数模式替代枚举类型传递
前端·vue.js
San305 分钟前
拒绝做 DOM 的“搬运工”:从 Vanilla JS 到 Vue 3 响应式思维的进化
javascript·vue.js·响应式编程
JienDa5 分钟前
JienDa聊PHP:从Laravel到ThinkPHP的现代Web开发实践
前端·php·laravel
软件技术NINI8 分钟前
盒模型在实际项目中有哪些应用场景?
前端·css·html
Beginner x_u9 分钟前
从组件点击事件到业务统一入口:一次前端操作链的完整解耦实践
前端·javascript·vue·业务封装