修改uniapp组件默认样式

最近刚开始使用uniapp开发,有些组件渲染之后会生成一些标签,我需要修改生成标签的样式。比如
< uni-combox >、< uni-number-box > 等组件,我觉得它们都太大了,然后我直接:

<style scoped>
.uni-combox__input {
    font-size: 14px;
}
</style>

无效,字号还是组件默认定义的16px;

其他人的做法

网上关于如何修改uniapp组件原来定义好的样式的文章很多。

  • 有的说style标签上不加scoped,就可以了;
  • 有的说自己定义一个样式类,覆盖原来的样式就可以了;
  • 有的说用 /deep/ 穿透可以修改

我的做法

  • 不加 scoped 容易污染全局吧;
  • 自己定义一个类,无效;
<style scoped>
.mycombox .uni-combox__input {
    font-size: 14px;
}
</style>
  • 不加 scoped 使用 /deep/ ,无效

经过试验发现,style标签上加scoped,同时使用 deep 穿透 可以成功修改

<style scoped>
/deep/ .uni-combox__input {
    font-size: 14px;
}
</style>
Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐