如何在普清的屏上调试CSS样式二倍图背景
背景:
最近就遇到一个同事的项目,还是像平常一样小心切图,认真对像素。
一切测试都没有问题,顺利上线。
但是,上线之后,产品经理跑过来说,有BUG。
BUG描述:(不认为是BUG)
前端页面上的图标是虚的。
环境:mackbook pro retina屏
现象:
给了一个截图

图标是虚的
BUG修复要求:
对图标进行修正,使在retina屏上图标依旧是清晰的。
分析:
到这里,做过移动端页面的都知道,这是没有双倍图呀。
修复方法:
第一步,让设计师出对应图标的双倍图
第二步,使用css的media query适配retina屏。
@media only screen and (-webkit-min-device-pixel-ratio: 1.5),
only screen and (-moz-min-device-pixel-ratio: 1.5),
only screen and (-o-min-device-pixel-ratio: 3/2),
only screen and (min-device-pixel-ratio: 1.5) {
/* 这里放对应的图标兼容! */
}
第三步,对应图标样式添加,并在浏览器中察看效果。
上面三步完成,这个小的适配也算完成了。
痛点:
但一般工作环境是不会每人配置一台苹果的,至少我们公司没有。
在修复的过程小的调试难免,这就要频繁用到机器。
机器不好找,只能用其他方法了。
看一下上面的适配的media query代码。
dervicePixelRatio,这个属性,
在chrome里可以使用window.dervicePixelRatio,看页面对应的值。
retina 的macbook pro是 2.0
普清 的是1.0
方法一:
这时,可以能过chrome的移动端模拟功能,去看二倍图的设置情况。
设置如下:

添加一个新的设备。

配置主要是里面的device pixel ratio。只要大于你css里设置的最小device-pixel-ratio就成。

之后测试页面的时候点击这个选项。
下面就是看是看页面样式了。

可以看出二倍的样式顺利读取出来了。
优点:
1、移动端页面的高度方法相同
2、不用找专门的高清retina屏设备
缺点:
1、无法对比一倍的图和二倍图之间的差别,视觉上不直观。
2、和测试及产品无法解释相关的原理性东西。
方法二:
直接按住ctrl+鼠标滚轮上滚,或ctrl+'+',把浏览器的视口放大到150%以上。

这个时候,可以在控制台里输入
window.devicePixelRatio 1.5
发现什么了devicePixelRatio是1.5了。
同样的可以读取1.5及以上的适配代码了。

但这个时候,有双倍适配和没有的,之间就可以清楚地看出来对比了。

优点:
1、方法更加直观,可以重现在retina屏上的视觉观感,可以重现上面bug的描述。
2、好给产品及测试解释
3、设备要求低,普通电脑都可以用来开发和调试
缺点:
1、页面放大后出现横滚,整体页面无法显示全
总结:
设备硬件越来越好,以后说不定都要设计双倍的图标。
对于设计师水平高的,可以要求设计出矢量图(IE低版本没法)
也可以直接用字体做图标(所有版本都支持,但也会出现连续模糊的问题)
想想之前那么多页面都要去适配,工作量很大,打开了潘多拉盒子的感觉。
如何在普清的屏上调试CSS样式二倍图背景的更多相关文章
- 解决在IE11浏览器上,css样式不起作用的问题
1.首先下载http://pan.baidu.com/s/1c1DA1Ew并运行; 2.在列表中找到.css双击出现Edit File Type; 3.将MIME Type中改为text/css,点击 ...
- css样式清零及常用类
css样式清零及常用类 @charset "utf-8"; /*CSS Reset*/ /*"微软雅黑","\5FAE\8F6F\96C5\9ED1& ...
- 怎么在高清屏上画一条0.5px的边
怎么在高清屏上画一条0.5px的边呢?0.5px相当于高清屏物理像素的1px.这样的目的是在高清屏上看起来会更细一点,效果会更好一点,例如更细的分隔线. 理论上px的最小单位是1,但是会有几个特例,高 ...
- 移动端H5页面高清多屏适配方案
背景 开发移动端H5页面 面对不同分辨率的手机 面对不同屏幕尺寸的手机 视觉稿 在前端开发之前,视觉MM会给我们一个psd文件,称之为视觉稿. 对于移动端开发而言,为了做到页面高清的效果,视觉稿的规范 ...
- 解惑好文:移动端H5页面高清多屏适配方案 (转)
转自:http://mobile.51cto.com/web-484304.htm https://github.com/amfe/lib-flexible/blob/master/src/makeg ...
- [转]:移动端H5页面高清多屏适配方案
原文链接:http://www.tuicool.com/articles/YJviea 背景 开发移动端H5页面 面对不同分辨率的手机 面对不同屏幕尺寸的手机 视觉稿 在前端开发之前,视觉MM会给我们 ...
- 解惑好文:移动端H5页面高清多屏适配方案
背景 开发移动端H5页面 面对不同分辨率的手机 面对不同屏幕尺寸的手机 视觉稿 在前端开发之前,视觉MM会给我们一个psd文件,称之为视觉稿. 对于移动端开发而言,为了做到页面高清的效果,视觉稿的规范 ...
- 绕过限制,在PC上调试微信手机页面
场景 假设一个手机页面,开发者对其做了限制,导致只能在微信客户端中打开.而众所周知手机上非常不利于调试页面,所以需要能在电脑上打开并进行调试.这里针对常见的三种页面做一下分析,一一绕过其限制,(当然不 ...
- 【小梅哥FPGA进阶教程】串口发送图片数据到SRAM在TFT屏上显示
十五.串口发送图片数据到SRAM在TFT屏上显示 之前分享过rom存储图片数据在TFT屏上显示,该方法只能显示小点的图片,如果想显示TFT屏幕大小的图片上述方法rom内存大小不够.小梅哥给了个方案,利 ...
随机推荐
- Maven dependency spring-web vs spring-webmvc
<dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmv ...
- 不同版本strtotime("2016-09-04")输出不同问题
在php版本改变后,突然发现查询没结果.然后发现是时间不同了,测试以后发现以前版本的php和现在版本的phpstrtotime输出不同.原来是时区配置问题,解决办法:http://zhidao.bai ...
- PHP版本过狗Shell
默认密码demo使用方法 按p 输入密码 或者 你保存的xx.php?password=demo自定义密码在define('iphp','demo2'); demo2 为你设定的密码. <?ph ...
- [转]Oracle版本号解释
注意: 在oracle 9.2 版本之后, oracle 的maintenance release number 是在第二数字位更改. 而在之前,是在第三个数字位. 1. Major Database ...
- c# select标签绑定枚举,并以Description做Text显示
今天在做项目时遇到一个问题: 开发中有些字段是枚举类型如 Dept 企业表中可能有个字段 Property 性质 0:事业单位,1:私企,2:外企,但有时我们不会单独为性质这个字段定义一张表, 而是在 ...
- Android课程---寄存器与存储器的区别
存储器在CPU外,一般指硬盘,U盘等可以在切断电源后保存资料的设备,容量一般比较大,缺点是读写速度都很慢,普通的机械硬盘读写速度一般是50MB/S左右.内存和寄存器就是为了解决存储器读写速度慢而产生的 ...
- 【iCore3 双核心板】例程十九:USBD_MSC实验——虚拟U盘
实验指导书及代码包下载: http://pan.baidu.com/s/1i4eNbQd iCore3 购买链接: https://item.taobao.com/item.htm?id=524229 ...
- 【转载】James Whittaker:经营成功的测试职业生涯
转注:这篇文章出自 James A. Whittaker ,但未找到原始出处/译者.如果有知道原始出处的朋友,可在评论这留言. 你是如何开始做测试工作的? 1989年,我在田纳西大学读研究生的时候, ...
- (IOS)BaiduFM 程序分析
本文主要分享下楼主在学习Swift编程过程中,对GitHub上的一个开源app BaiduFM的研究心得. 项目地址:https://github.com/belm/BaiduFM-Swift 一.项 ...
- ASP.NET 大文件上传
一 web.config 配置: 1). <system.webServer> <security> <requestFiltering> <!-- maxA ...