1. 视口:(布局视口(layout viewport),视觉视口(visual viewport),理想视口(ideal viewport))

  • meta 视口标签 <meta  name = "viewport"  content = “ width = device-width,user-scalable = no,initial-scale = 1.0,maximum-scale = 1.0,minimum-scale = 1.0”
  • width:宽度设置的是 viewport 宽度,可以设置 device-width(设备宽度)特殊值
  • user-scalable:用户是否可以缩放,yes 或者 no(1 或者 0)
  • initial-scale:初始缩放比,大于 0 的数字
  • maximum-scale:最大缩放比,大于 0  的数字
  • minimum-scale:最小缩放比,大于 0 的数字

 标准的 viewport 设置

  • 视口宽度和设备保持一致
  • 视口的默认缩放比例1.0
  • 不允许用户自行缩放
  • 最大允许的缩放比例1.0
  • 最小允许的缩放比例1.0

2. 物理像素 & 物理像素比

  • 物理像素点指的是屏幕显示的最小颗粒(也就是我们说的分辨率),是物理真实存在的,这是厂商在出厂时就设置好的,比如苹果6/7/8 是750*1334
  • 开发时的 1px 不一定等于 1个物理像素的
  • PC端页面,1个px 等于 1个物理像素,但是移动端就不尽相同
  • 一个px的能显示的物理像素点的个数,称为物理像素比或者屏幕像素比
  • 在移动端大多数 1px 开发像素 = 2个物理像素

3. 图片,背景图片,精灵图的二倍图

 3.1 二倍图片做法

  • 需要一个50*50像素( css 像素)的图片  直接放到 移动端页面里面 会放大2倍 100*100 就会模糊
  • 放一个 100*100 的图片,然后手动的把图片样式缩小为 50*50( css像素 )
  • 移动端 准备的图片 比我们实际需要的大小  大2倍,这种方式就是 2倍图

 3.2 二倍背景图做法

  • 有一个 50*50的盒子需要一个背景图片,但是根据分析这个图片 还是要准备2倍,100*100
  • 需要把这个背景图片缩小一半,也就是50*50  background-size:宽度  高度;

 3.3 二倍精灵图做法

  • 先把精灵图等比例缩放为原来的一半
  • 之后根据大小测量坐标
  • 注意代码里面 background-size 也要写:精灵图原来宽度的一半

4. css初始化 normalize.css

 移动端 CSS 初始化推荐使用 normalize.css

 normalize.css:保护了有价值的默认值,修复了浏览器的bug,是模块化的,拥有详细的文档

 官网地址:http://necolas.github.io/normalize.css/

4.特殊样式

 1. css3盒子模型:-webkit-box-sizing:border-box;

 2. 超链接标签,点击高亮,需要清除 设置 transparent  完成透明

  -webkit-tap-highlight-color:transparent;

 3. 在移动端浏览器默认的外观在iOS上加上这个属性才能给按钮 或者 输入框 自定义样式

  -webkit-appearance:none;

 4. 禁用长按页面时的弹出菜单

  img,a{ -webkit-touch-callout:none;}

5. 常见屏幕尺寸

移动端(视口(meta),像素比,二倍图(图片,背景图,精灵图),css初始化(normalize.css),特殊样式,常见屏幕尺寸)的更多相关文章

  1. 前端二倍图的思考(涉及Retina)

    EXCELL格式 1 csv格式导出来之后不能用EXCELL打开,会乱码.用记事本打开,然后将"(英文的引号出掉),就可以了. 关于二倍图的操作 概念: 设备像素:也叫物理像素,显示设备上最 ...

  2. 用一篇文章了解ppi,dpr,物理像素,逻辑像素,以及二倍图

    这篇文章能让你了解到什么是分辨率.dpr.dip.ppi (dpi相当于ppi,dpi用点表示物理像素密度,ppi是逻辑像素密度) 首先从最简单的ppi开始: 一部手机,有大有小,怎么知道手机的大小用 ...

  3. 如何在普清的屏上调试CSS样式二倍图背景

    背景: 最近就遇到一个同事的项目,还是像平常一样小心切图,认真对像素. 一切测试都没有问题,顺利上线. 但是,上线之后,产品经理跑过来说,有BUG. BUG描述:(不认为是BUG) 前端页面上的图标是 ...

  4. 关于移动端border 1像素在不同分辨率下边显示粗细不一样的处理

    最近开发发现一个很有趣的问题  就是我如果给一个元素加上一个像素的 border 在不同的分辨率的情况下显示的不同 在高清屏幕(尤其是ios 喽 不鄙视国产) 据说在6plus下会变成3px  这个我 ...

  5. Retina 屏幕与二倍图

    分辨率 屏幕分辨率:指屏幕可显示的像素的个数 图像分辨率:位图图像包含的像素的个数 对于 Retina 屏它的分辨率是传统屏的两倍,而屏幕大小没有变化,所以它需要的图片的分辨率应该是传统屏幕的两倍(甚 ...

  6. iphone关于单倍图和二倍图(导航 背景 变高)

    同学们and朋友们大家好!今天我想说一下关于@2x二倍图的知识,以我所知所见所闻来讲述我的理解! 别看关于这么点小知识,有很多初学者在这个上面常会犯错误,以下是我的理解: 用二倍图是为了适配iphon ...

  7. 移动端Web Meta标签

    原文  http://blog.segmentfault.com/jianjian_532633/1190000000654839 添加到推刊   在介绍移动端特有 meta 标签之前,先简单说一下 ...

  8. h5移动端页面meta标签

    <!DOCTYPE html> <!-- 使用 HTML5 doctype,不区分大小写 --> <html lang="zh-cmn-Hans"&g ...

  9. Flex弹性盒模型(新老版本完整)--移动端开发整理笔记(二)

    Flex布局 Flex即Flexible Box,写法为:display:flex(旧版:display: -webkit-box) 在Webkit内核下,需要加-webkit前缀: .box{ di ...

随机推荐

  1. 记录pgsql数据库表设计date和time字段的处理

    pgsql表设计中,有时候涉及到日期和时间字段需要分别处理的情况,这个时候可以使用date和time字段分别定义两个字段的属性 对应的实体类可以使用LocalDate和LocalTime去做映射 环境 ...

  2. constructor prototype __proto__

    什么是对象 若干属性的集合 什么是原型? 原型是一个对象,其他对象可以通过它实现继承. 哪些对象有原型? 所有的对象在默认情况下都有一个原型,因为原型本身也是对象,所以每个原型自身又有一个原型(只有一 ...

  3. selectDOM操作详解-select option详细解释

    首先从一个面试题来讲,我最近在做前端面试题,题目如下: 完成函数showlmg(),要求能够动态根据下拉列表的选项变化,更新图片的显示<body><script type=" ...

  4. 使用aop和BindingResult进行参数验证

    1.在需要校验的参数名上面添加注解 2.在web层接收参数(参数前面使用@Valid进行标记,后面必须紧跟参数bindingResult,存储参数的错误信息) 3.使用aop进行校验信息统一处理 @C ...

  5. Sublime Text 3 - there are no packages available for installation 解决方法

    解决方法: 1. 下载一个channel_v3.json ,  提取码: n2vc 2. 进入以下路径的设置界面 3. 添加代码 , 文件路径以各自下载保存路径为准 ( 重启sublime, 搞定 ! ...

  6. GCC -l选项:手动添加链接库

    链接器把多个二进制的目标文件(object file)链接成一个单独的可执行文件.在链接过程中,它必须把符号(变量名.函数名等一些列标识符)用对应的数据的内存地址(变量地址.函数地址等)替代,以完成程 ...

  7. FTPClient TLS 与 FTP 进行数据传输异常:Remote host closed connection during handshake

    环境:java JDK 1.8.org.apache.commons-net-3.6.jar.端口已放开 FTPClient ftpClient = new FTPClient(protocol, f ...

  8. Python基础(一):程序输入输出、判断合法用户、编写判断成绩的程序

    一.程序输入输出 目标: 编写login.py脚本,实现以下目标: 提示用户输入用户名 将用户名保存在变量中 在屏幕上显示欢迎用户的信息 方案: 编写程序时,很多情况下都需要程序与用户交互.在pyth ...

  9. Service系统服务(三):查看进程信息、进程调度及终止、系统日志分析、使用systemctl工具

    一.查看进程信息 目标: 本例要求掌握查看进程信息的操作,使用必要的命令工具完成下列任务: 找出进程 gdm 的 PID 编号值 列出由进程 gdm 开始的子进程树结构信息 找出进程 sshd 的父进 ...

  10. delphi弹出选择对话框选择目录SelectDirectory 函数

    SelectDirectory 函数通过显示一个对话框来让用户选择一个目录.注意:在使用前要在Uses 语句中添加包含FileCtrl 的说明.函数原型如下:function SelectDirect ...