欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 教育 > 锐评 > uni-app Vue3语法实现微信小程序样式穿透uview-plus框架

uni-app Vue3语法实现微信小程序样式穿透uview-plus框架

2025/10/26 23:14:08 来源:https://blog.csdn.net/Alan_Walker688/article/details/143828553  浏览:    关键词:uni-app Vue3语法实现微信小程序样式穿透uview-plus框架

1 问题描述

我在用 uni-app vue3 语法开发微信小程序时,在项目中使用了 uview-plus 这一开源 UI 框架。在使用 up-text 组件时,想要给它添加一些样式,之前了解到微信小程序存在样式隔离的问题,也在uview-plus官网-注意事项中找到了相关解决方法,尝试后发现样式仍然不能失效。

<template><view class="container"><up-text text="标题"></up-text><up-text text="内容" class="content"></up-text></view>
</template><style scoped>.container ::v-deep .content {margin-top: 5px !important;border: 1px solid red;}
</style>

说明:由于不是自定义组件,所以不是配置styleIsolation参数的问题(以下不需要进行配置

<script setup>
// 功能实现
</script>
// 配置自定义组件样式穿透
<script>
export default {options: {styleIsolation: 'shared'}
}
</script>

2 引发原因

在微信开发者工具查看页面 DOM 结构时发现,我给第二个 up-text 添加的类名 .content 没有生效。
在这里插入图片描述

3 解决方法

通过 up-text 内部类 .u-text 和伪类 :nth-child 结合使用定位到要添加自定义样式的元素。

<style scoped>.container ::v-deep .u-text:nth-child(2) {margin-top: 5px !important; border: 1px solid red;}
</style>
<!-- 备注:!important 用于覆盖 up-text 默认的 margin: 0 样式 -->

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词