el-popover ::after style overwrite bug All In One
overwrite bug ❌
.table-custom-popover-class 与 .el-popper 或 .el-popper[x-placement^="top"]
类名同优先级
.table-custom-popover-class {
min- 30px !important;
auto !important;
font-size: 12px !important;
color: #FFFFFF !important;
background: #303133 !important;
.el-popper[x-placement^="top"] .popper__arrow,
.el-popper[x-placement^="top"] .popper__arrow::after {
border-top-color:#303133 !important;
display: none !important;
border-color: #303133 !important;
}
}
solution
CSS 优先级 bug,同级别的多个 class, 后面 class 会覆盖前面的样式, 导致前面的样式失效 ✅
.custom-popover-class {
min- 30px !important;
auto !important;
font-size: 12px !important;
color: #FFFFFF !important;
background: #303133 !important;
}
.custom-popover-class .popper__arrow::after {
border-top-color:#303133 !important;
}
/*
.custom-popover-class.el-popper[x-placement^="top"] .popper__arrow::after {
border-top-color:#303133 !important;
}
*/
holy shit & solution
x-placemen 可以省略,或者匹配正确 top/bottom/...
.icon-question-circle-dark {
background: #000 !important;
color: #fff !important;
}
// css important not work ??? webpack 打包顺序 bug
.icon-question-circle-dark[x-placement^="bottom"] .popper__arrow::after {
- border-bottom-color: #000 !important;
+ border-top-color: #000 !important;
}
.icon-question-circle-dark[x-placement^="top"] .popper__arrow::after {
- border-bottom-color: #000 !important;
+ border-top-color: #000 !important;
}
.icon-question-circle-dark .popper__arrow::after {
- border-bottom-color:#303133 !important;
+ border-top-color:#303133 !important;
}
demo
refs
https://element.eleme.io/#/zh-CN/component/popover
https://codepen.io/xgqfrms/pen/OJxraVq
https://github.com/xgqfrms/vue/issues/216
©xgqfrms 2012-2020
www.cnblogs.com/xgqfrms 发布文章使用:只允许注册用户才可以访问!
原创文章,版权所有©️xgqfrms, 禁止转载 ️,侵权必究⚠️!