最近在使用 uni-app 进行开发,发现在有的组件上使用 class 在编译到小程序后不会生效,但是有的组件设置 class 却是生效的。例如
// 不生效
<uni-list class="mt-10" :border="false">
<uni-list-item title="收藏"></uni-list-item>
</uni-list>
// 生效
<uni-icons class="mt-10" type="compose" size="18" />
mt-10 这个类在 app.vue 中设置。
一开始以为是因为组件存在多根标签不会生效,但是打开组件看也是单根标签。也有可能是 styleIsolation 隔离设置问题,但是对比生效和不生效的组件也找不出有 styleIsolation 设置的地方。这问题出在什么地方?
先看下浏览器控制台元素里面 类名有没有加上
如果加上了选中元素 看右侧是否有对应的样式代码
如果有但是被覆盖了 就是权重不够
基本就这几种情况 仔细检查 慢慢定位就好