项目中如何修改element-ui的默认样式 (去除scoped,样式穿透 >>> , less/sass : /deep/)

当我们在vue中引入第三方组件库的时候,vue组件中样式的scoped会阻碍样式的修改,有以下三种方法修改样式,且不影响全局样式:①在样式外新增一个样式不添加scoped<style> .my{ margin: 20px; } .my .el-input__inner{ border-radius: 15px;/* 这个样式起效果 */ }</style><style scoped> .my .el-input__inner{ bor
摘要由CSDN通过智能技术生成

当我们在vue中引入第三方组件库的时候,vue组件中样式的scoped会阻碍样式的修改,有以下三种方法修改样式,且不影响全局样式:

①在样式外新增一个样式不添加scoped


<style>
	.my{
		margin: 20px;
	}
	.my .el-input__inner{
		border-radius: 15px;/* 这个样式起效果 */
	}
</style>
<style scoped>
	.my .el-input__inner{
		border-radius: 30px; /* 这个样式不起效果 */
	}
</style>

②使用deep样式穿透

<style scoped>
	.my .el-input__inner{
		border-radius: 30px;/* 这个不起作用 */
	}
	.my /deep/ .el-input__inner{
		border-radius: 30px;/* 这个起作用 */
	}
</style>

③使用>>>穿透

<style scoped>
	.my .el-input__inner{
		border-radius: 30px;/* 这个不起作用 */
	}
	.my >>> .el-input__inner{
		border-radius: 30px;/* 这些起作用 */
		border: 1px solid #eceef2;
		outline: 0;
	}
</style>

④有些样式是行内样式权重比较高则需要使用上面的几种方法来保证可以修改样式并且添加上 !important 来增加权重

<el-i
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Element UI 的 tabs 组件默认有自己的样式,如果你想要修改样式,特别是穿透到内部的子元素,可以采用以下方法: 1. **CSS 样式覆盖**: - 在你的项目,可以在全局 CSS 文件(如 `main.css` 或 `app.scss`)添加或使用 CSS 选择器优先级来覆盖 Element UI 的内置样式。例如: ```css .el-tabs__pane { background-color: your-desired-color; border-top: none; /* 如果你想修改顶部边框 */ } ``` 2. **Vue 面向组件的 scoped CSS**: - 如果你只想针对特定组件应用样式,可以使用 scoped CSS(即每个组件有自己的 CSS 渲染范围),这样可以避免样式穿透到其他地方: ```html <template> <el-tabs v-bind:class="{ customClass: true }"> <el-tab-pane>...</el-tab-pane> <!-- 更多 tab-panes --> </el-tabs> </template> <style scoped> .customClass .el-tabs__pane { /* 你的自定义样式 */ } </style> ``` 3. **CSS Modules** 或者 `:deep()` 或 `>>>` (在 Vue 3 Composition API ): - 如果你使用了 CSS Modules,可以使用 `:deep()` 选择器来精确地选 Element UI 的子元素,或者在支持的浏览器上使用 `>>>`(仅在浏览器原生支持时)。 4. **使用 CSS 预处理器(如 Sass 或 Less)和 Mixins**: - 你可以创建一个 Mixin 来封装你需要修改样式,然后在 tabs 的样式调用它,这样可以保持代码组织。 记住,尽量避免直接修改 Element UI 的原始 CSS 文件,因为这可能导致升级时样式冲突。在修改前,最好查看官方文档和示例,确保你的改动不会影响其他功能。相关问题:

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值