天天看点

element ui 怎么样修改组件样式 (如何在Scoped CSS规范下 修改第三方组件中的样式)

产生原因:

由于组件之间需要做样式隔离(也就是<style scoped >中的scoped属性)

所以我们定义的样式类在打包时会在后面自动带一个不重复的后缀,以防止组件之间的样式相互影响,这样我们如果要通过组件内部的类名来修改样式就会出问题,

因为我们定义的类名总是会被修改 

element ui 怎么样修改组件样式 (如何在Scoped CSS规范下 修改第三方组件中的样式)

例如我们要修改el-input组件,它内部的类名有一个是el-input__inner

element ui 怎么样修改组件样式 (如何在Scoped CSS规范下 修改第三方组件中的样式)

如果我们要修改他,直接定义一个 .el-input__inner类,由于组件样式隔离的原因是作用不上去的

解决办法:

通过 /deep/深度选择器

/deep/.el-input__inner {
	height: 32px;
	line-height: 32px;
}
           

或者 >>>

如果/deep/深度选择器使用报错:

:deep(.el-input__inner){
    height: 50px;
    line-height: 50px;
  }
  
  //或者
  ::v-deep .el-input__inner {
  	height: 50px;
  	line-height: 50px;
  }