记录一些移动端H5,小程序视觉还原问题及方法

前端,特别是移动端如果对视觉还原要求比较高的时候。功能测试和性能测试完成之后。UI真的是一个像素一个像素的给你抠出来哪里还原不到位

之前项目要求还原度要达到98%以上。所以每到视觉还原的时候真的是挺痛苦的,这里记录一些视觉还原不同机型上的一些显示问题。

  • 小程序iOS端1rpx显示2px宽度

这个视觉问题这真的是很痛苦的。我们想到针对iOS端单位1rpx,然后transform:scale(0.5);但是会导致个别安卓机型显示特别细,所以这个方案否决了。

最后使用的是http://www.cnblogs.com/leungUwah/p/8519759.html上一篇博文写的方案,后面完美解决

  • 明明设置了对应的font-size大小但是还是高度的还原还是对不上

解决办法:检查一下最外层元素有没有设置font-size:0;取消元素之间的间隙

  • 小程序元素高度较小的时候安卓机显示字体偏上问题

解决办法:不要因为总共20px的高就设置line-height:20px;要设置line-height:1;然后其他的高度用padding撑开;这种情况如果对应有前面跟有icon的话icon的display:inline-block;vertical-align:top;

  • 数字字体行高与中文不在一个高度上的问题

解决办法:这就江郎才尽了。数字本来就别中文矮难道每个数字都单独包起来吗,这治标不治本。UI在设计的时候工具弄的多好看多好看都是建立在某个较好状态数字下的或者其他显示,前端做出来

之后显示肯定是动态的这还真没办法。

  

  • 小程序icon图片background-image显示rpx单位显示边缘有较细微显示不完整问题

解决办法:有两种1.如果还是用rpx单位,那icon整合成雪碧图的时候对应icon周围留1-2个像素的空白。2.用px单位http://www.cnblogs.com/leungUwah/p/8519759.html还是上一篇博文写的方案。

  

  • 其他

多用弹性布局,这对视觉还原效果较好可以减少后面不少的麻烦。还有一个就是我很少几乎不用float,脱离文档流还要清除浮动,不然对其他的元素有影响,说不定还会有什么意想不到的bug。还有一个就是

拿到视觉或者ue搞的时候心里就该先想清除怎么布局了;当然了你这个要根据你的需求显示来的。

好了,暂时想到的就这么多后面如果后面遇到的话会持续更新。

4月的最后一天了,抽点时间来写写博客,记录一些自己遇到的疑难杂症,有写得不对的地方希望大家多多指正。

原文地址:https://www.cnblogs.com/leungUwah/p/8665637.html

时间: 2024-11-10 17:05:37

记录一些移动端H5,小程序视觉还原问题及方法的相关文章

记录开发代码量的小程序

这段时间在开发网站,想要去记录自己的开发代码量,所以写了一个小脚本,用来记录,代码如下: #-*- coding: UTF-8 -*- #用来检测当前的代码量 import sys,os count = 0 def readfile(file): global count f = open(file,'r') read = f.readlines() for i in read: count+=1 f.close() def check(currentpath): s = os.listdir(

多多客微信百度支付宝三端合一小程序平台正式上线,集齐BAT,开启新篇章!

多多客DOODOOKE微信.百度.支付宝三端合一小程序SaaS平台今日正式上线! 开年集齐BAT,多多客DOODOOKE与你一起开启新篇章! 一次制作 三端发布 同时管理 商家只需要在多多客管理后台制作一次小程序,即可在微信.百度.支付宝三大平台同时发布和管理. 多多客三端合一小程序平台帮助商家快速布局小程序,跨越小程序开发的高门槛.高成本,一次性获取微信.支付宝.百度全域千亿级流量,同时节省小程序的制作时间和制作成本. 商家可以在同一个后台统一管理微信.百度.支付宝三端用户和订单等数据,大大优

微信小程序传值以及获取值方法

微信小程序传值以及获取值方法,传值有两种方法,对应也有获取值得方法, 1.设置id的方法标识跳转后传递的参数值: 2.通过使用data - xxxx 的方法来标识要传递的值 微信小程序设置id的方法标识来传值 在要跳转的item处,设置一个id并给当前的id赋值上对应的key值,比如一部电影的id(后面带着id去下一个页面查询,详细信息)如: 后我们在js的bindtap的响应事件中获取,并传递到下一个界面中: 获取到id传的值 通过e.currentTarget.id;获取设置的id值,并通过

跨端开发小程序

在微信小程序中,每个页面都是由.js..wxss..wxmk和.json四个部分构成,代码结构比较复杂.另外,由于对ES6语法和sass等css预处理支持的不友好,导致开发效率很低,所以早早就有用vue.js来开发小程序的框架,比如webpy和mpvue,但是基本都是单纯的开发微信小程序. 可是,随着微信小程序.网页H5.头条小程序.百度小程序.支付宝小程序.快运用.原生APP的增多,每个都独立开发的话,每个前端估计都要吐血了,所以,就出现了跨端开发的框架.现在基本对多端支持足够好的,就是tar

小程序-跳转页面的方法

刚开始编写小程序时,页面跳转一直采用wx.navigateTo, 但是当我一直来回跳转后,页面就没反应了.今天师傅提示我还可以用其他的方法跳转,现在记录下来,怕时间一久我就给忘了 需求:从 index.wxml 页面,跳转到 aaa.wxml 页面 方法一:WXML页面实现 1.<navigator url = "../aaa/aaa">跳转到新页面</navigator> 2.<navigator url = "../aaa/aaa"

使用Appium 测试微信小程序和微信公众号方法

由于腾讯系QQ.微信等都是基于腾讯自研X5内核,不是google原生webview,需要打开TBS内核Inspector调试功能才能用Chrome浏览器查看页面元素,并实现Appium自动化测试微信小程序和微信公众号. 前提条件Appium环境搭建,这里不多说了,可查阅Appium环境搭建文章. 因夜神等模拟器是intel的X86架构,很多app安装不了,比如微信.qq等(虽然说可以通过安装arm解释器来解决该问题,但是进行X5内核调试的话也会出现问题),建议最好是一台真实的手机来做. webv

小程序设置全局变量,全局方法

最近在做小程序项目,遇到多个页面共用页面变量的问题,小程序需要渲染到页面的数据,都需要在页面data进行定义,这样如果多个页面都需要用到同一个变量,就会造成资源的重复定义: 例子: Page({ data: { backgroundImg: request.getImgServerApi() + 'section2/background.png', helpLinkImg: request.getImgServerApi() + 'cardPackage/card-link2.png', log

微信小程序之选项卡的实现方法

微信小程序里没有自带选项卡组件,但是却带有swiper组件,所以,我们便利用swiper来实现选项卡的功能. 先看效果图: 实现代码: 页面代码: 1 2 3 4 5 6 7 8 9 10 11 <view class="swiper-tab">   <view class="swiper-tab-item {{currentTab==0?'active':''}}" data-current="0" bindtap="

微信小程序request(promise)方法封装

var Promise = require('es6-promise'); var app = getApp(); function wxPromisify(fn) { return function (obj = {}) { return new Promise((resolve, reject) => { obj.success = function (res) { //成功 resolve(res) } obj.fail = function (res) { //失败 reject(res