使用uniapp开发H5,样式已经按照UI设计稿全部实现。但是在打包微信小程序调试的时候,遇到很多样式失效的问题。问了度娘很久,并没有完全解决样式失效的问题。于是自己按照从度娘上查到的方法去进行组合尝试,最终样式失效问题得到了完全的解决。

样式不生效的原因:u-view框架组件自带的class优先级高于开发者自定义的优先级,所以显示的是组件的默认样式(网上有说是样式隔离)。解决办法就是提高自定义样式的优先级,使用自定义的样式去覆盖默认样式。

一、输入框(u–input)样式失效解决之道

在H5上,u–input的样式是可以完美展示的,但是到了微信小程序上,样式完全失效了。经过一番摸索,找到了最终的解决方法。

  1. 把样式失效的 u–input 改成 u-input

  2. 在u-input的自定义样式之前添加默认样式的class名,u-input__content,而且要使用深度渲染,写成::v-deep.u-input__content。这样H5中的样式就可以完全应用到微信小程序上了(前后插槽的样式也完美应用),示例代码如下。

    ::v-deep.u-input__content, .row-input {height: 70rpx;width: calc(100vw - 150rpx - 120rpx);background-color: #FEFCF8;border-radius: 8rpx;font-size: 24rpx;font-weight: 500;color: #999999;line-height: 24rpx;margin-top: 30rpx;//前插槽样式.prefix {padding: 0 20rpx;image {width: 30rpx;height: 30rpx;}}//后插槽样式.suffix {padding: 0 20rpx;image {width: 30rpx;height: 30rpx;}.picture-code {width: 100rpx;height: 48rpx;}}}.placeholder { //占位提示文字的样式font-size: 24rpx;font-weight: 500;color: #999999;line-height: 24rpx;}}
    

补充:组件的默认样式的class名如何获取。

二、u-list样式失效的解决之道

  1. 在u-list的自定义样式的class之前添加 默认样式的class u-list。就可以解决样式失效的问题。

  2. 对于列表顶部被导航栏遮挡,则需要添加一个view进行包裹,通过调节外层view的margin来进行调节。

    示例代码如下:

    .store-section, .u-list { //添加默认样式的class u-listbackground-color: #F7F1E8;border-radius: 40rpx 40rpx 0px 0px;padding: 20rpx 0rpx;
    }
    

三、底部安全区域失效

H5上可以使用 ****标签设置相应的背景色作为底部安全区域,但是微信小程序失效了。

微信小程序上应该使用一个 ****来替换。标签的样式如下:

.safe-bottom {background-color: #F4EBDF;height: var(--safe-area-inset-bottom);}

四、图片不显示问题

图片不显示,主要就是路径不对。

  1. 自定义组件的图片路径: /static/detail/personal-store-logo.png

  2. page里组件的路径: @/static/home/have-a-goods.jpeg

    图片路径的问题,也不一定就像上方那样,自己去尝试修改就好了,以图片显示为准。

五、u-icon不显示

遇到u-view里的u-icon不显示的情况,一般就是u-icon外面多包了一层组件,把多包的组件去掉u-icon就可以正常显示了。

六、u-cell-group样式失效解决之道

对于u-cell-group样式失效的问题,尝试过使用覆盖样式的问题,但是不生效。最终的解决之道是在u-cell-group外面包了一层view。把u-cell-group的样式放到view上。示例代码如下:

<view class="group-background"><u-cell-group><u-cell title="检测更新" :titleStyle="cellTitleStyle" size="large" :isLink="true" @click="checkUpdate()"></u-cell><u-cell title="隐私政策" :titleStyle="cellTitleStyle" size="large" :isLink="true"@click="privacyAgreement()"></u-cell></u-cell-group></view>
.group-background {width: 100%;background-color: #FEFCF8;margin-top: 40rpx;}

至此,经过上面的一番修改之后,uniapp开发的H5的样式就可以完美的在微信小程序中展示了。

uniapp 开发H5打包微信小程序样式失效的解决之道相关推荐

  1. 一招学会DIY官网可视化设计支持导出微擎、UNIAPP、H5、微信小程序源码

    DIY官网一站式婚庆案例实战,可视化设计导出微擎.UNIAPP.H5.微信小程序源码. 这里将给大家展示演示出来的所有不同类型演示. DIY官网一站式婚庆案例实战官网在线演示例子 一站式婚庆服务公司后 ...

  2. uni-app跨端开发H5、微信小程序、支付宝小程序遇到的坑

    文章目录 微信支付宝小程序通用功能 1.checkbox样式 2.分享功能 支付宝小程序参数 微信小程序参数 其他兼容问题 H5 微信小程序 支付宝小程序 持续更新中... 微信支付宝小程序通用功能 ...

  3. 基于uniapp开发的适用于微信小程序,头条小程序

    基于的uni-app开发的跨平台商城小程序(微信小程序,头条小程序,抖音小程序),合理的代码结构和规范的编码风格,能够让你很轻松的上手并转化成为自己的作品. 与之相支持的是,我们提供了一套完整的项目代 ...

  4. uniapp开发APP和微信小程序——使用高德实现定位

    在uniapp官网中明确说了可以使用高德地图来实现APP和微信小程序的定位. 在dcloud社区里大佬已经给出了实现方法(链接:uni-app 中使用微信小程序第三方 SDK 及资源汇总 - DClo ...

  5. uniapp的打包:h5、微信小程序以及APP方式

    uniapp的打包:h5.微信小程序以及APP方式 H5打包 微信小程序打包 App打包 本人用的是HBuilder编译器,学习uniapp时b站某位大大推荐的,我刚开始接触代码时候也用过,那时候并不 ...

  6. PHP开发B2C商城 微信小程序商城系统源码+数据库,轻量级前后端分离的电商系统,支持微信小程序 + H5+ 公众号 + APP

    项目介绍 一款轻量级.高性能.前后端分离的电商系统,支持微信小程序 + H5+ 公众号 + APP,前后端源码完全开源,看见及所得,完美支持二次开发,可学习可商用,让您快速搭建个性化独立商城. 完整代 ...

  7. h5是可以一键打包小程序的_H5手机网站封装打包微信小程序并实现分享及微信支付...

    手机网站打包小程序教程,生成小程序,网页版小程序  打包微信小程序,H5封装成微信小程序. 微信小程序开发一般分为2种方式,一种就是原生开发小程序,一种是将手机网站打包成小程序. 原生开发小程序成本较 ...

  8. vue+uni-app商城实战 | 第一篇:从0到1快捷开发一个商城微信小程序,无缝接入OAuth2实现一键授权登录

    一. 前言 本篇通过实战来讲述如何使用uni-app快速进行商城微信小程序的开发以及小程序如何接入后台Spring Cloud微服务. 有来商城 youlai-mall 项目是一套全栈商城系统,技术栈 ...

  9. 开发嵌入京东app h5| Hybrid | 微信小程序 | 实践踩坑总结十六条

    一 前言 笔者最近一直在开发京东app嵌入的h5项目和微信小程序商城项目,在此期间遇到很多坑.这篇文章主要是针对 h5| Hybrid | 微信小程序 三个方向来讲述我遇到的坑,以及详细讲解我是如何解 ...

最新文章

  1. 【云计算】阿里云云计算专业认证考试
  2. 征集并发文献译者之Disruptor
  3. 五个数字从小到大排序java,五个数冒泡排序 用c语言数组定义5个数使用冒泡排序 从小到大...
  4. 程序一启动检查网络,如果没有网络就退出程序
  5. JS之检索子字符串的search方法
  6. mysql常规使用(建立,增删改查,视图索引)
  7. JAVA8的新特性之Stream
  8. 【转】MyEclipse快捷键大全(绝对全)
  9. 1.7 理解 Dropout
  10. linux入门_Linux从入门到入土(抽奖送10本新书)
  11. primefaces教程_PrimeFaces教程
  12. 【缺陷检测】基于matlab形态学水果蔬菜缺陷检测【含Matlab源码 820期】
  13. FANUC机器人有关动作速度倍率的相关系统变量-解释说明
  14. python——田字格
  15. linux的dep文件是什么意思,DEP 文件扩展名: 它是什么以及如何打开它?
  16. Linux Ubuntu20.10 安装Process Monitor(Procmon),以及使用方法
  17. Linux系统DB2数据库安装手册
  18. 【题解】纪中篮球联赛
  19. IDEA快捷键大全,各类IDEA快捷键
  20. 用python实现生成验证码图片

热门文章

  1. 支付宝数据信息服务器在哪里,支付宝商户公钥在哪查看?什么是公钥?
  2. 手机号码中间隐藏四位
  3. 工程监测仪器振弦模拟信号采集仪VTN的传感器接口
  4. ProcessOn一款非常不错在线绘图工具
  5. hermite、三次样条插值算法 调用matlab函数、代码实现
  6. LTE学习笔记 ——GTP-U
  7. 微信接入微信JS-SDK----签名算法
  8. IOS 通过麦克风检测声音分贝
  9. anjuta , 88
  10. 如何用MATLAB进行电路仿真