一、调试工具介绍(Chrome Emulation)

  1.Device(设备相关)

    自定义尺寸、Network(网络模拟)、UseAgent(浏览器信息)、缩放

  2.Media(媒体)

  3.Network(网络模拟)

  4.Senors(传感器)

    经纬度、陀螺仪

二、本地服务器搭建

  1.搭建服务器 || HBuilder

  2.同一网络下用设备连接

    *关闭防火墙

三、像素比

  1.点 point(抽象单位)

  2.像素渲染(栅格化)

  3.物理像素(调整大小)

  4.dpi、ppi

  5.获取像素比(window.devicePixelRatio)

四、viewport(视口)

  1.width 设备宽度[pixel_value | device-width]

  2.user-scalable 是否允许缩放(no || yes)

  3.initial-scale 初始比例

  4.minimum-scale 允许缩放的最小比例

  5.maximum-scale 允许缩放的最大比例

  6.target-densitydpi (已淘汰)

  7.动态控制比例 1/像素比

五、前期准备

  1.布局单位介绍选择

  2.默认样式处理

    -webkit-tap-highlight-color:transparent;

    input{-webkit-appearance:none;}/*去除input默认样式*/

  3.框架搭建

  4.横竖屏适配

    getBoundingClientRect().width

    resize.orientationchange

六、媒体查询

  all 所有媒体

  braille 盲文触觉设备

  embossed 盲文打印机

  print 手持设备

  projection 打印预览

  screen 彩屏设备

  speech ‘听觉’类似的媒体类型

  tty 不适用像素的设备

  tv 电视

七、媒体特征

  min-width 分辨率宽度大于等于设备值得时候识别

  max-width 分辨率宽度小于等于设备值的时候识别

  orientation:portraint 竖屏

  orientation:landscape 横屏

  -webkit-min-device-pixel-radio:2 像素比

八、关键字

  and 和、与(连接媒体特性)

  not 排除指定媒体类型

  only 指定某种特定的媒体类型(很多时候是用来对那些不支持媒体特性但却支持媒体类型的设备)

九、样式引用

  外联样式表 link[media="all and (min-width:600px)"]

  @import @import url(index.css)all and (min-width:600px)

十、常规尺寸

  @media all and (min-width:1200px){//大分辨率(PC分辨率、TV)}

  @media all and (min-width:850px) and (max-width:1199px){//中等分辨率(PC小分辨率 || pad)}

  @media all and (min-width:700px) and (max-width:849px){//pad分辨率}

  @media all and (min-width:480px) and (max-width:699px){//高分辨率手机设备 || 低分辨率平板}

  @media all and (max-width:479px){//手机设备}

补充:

一、移动开发需求

  1.让页面的宽度跟访问设备的宽度一致 device-width

  2.不让用户进行页面缩放 user-scalable = no

  3.控制像素比

   (如何让1px做1px的事情?a 1:1像素还原 b 尽可能的和设备分辨率一致)

     通过JS控制像素比:

    <script>

      //获取像素比

      var pixelRatio = 1/window.devicePixelRatio;

      //通过JS动态设置视口(viewport)

      document.write('<meta name = "viewport" content = "width = device-width,initial-scale = '+pixelRatio+',minimum-scale = '+pixelRatio+'"/>')

    </script>

二、移动布局步骤

  1.确定尺寸(设计稿)并且还得再符合该尺寸的模拟器下进行第一次预览

  2.搭建大体框架

三、单位对比

  px 绝对(固定)单位

    缺点:任何情况下都是固定值,会导致布局在不同尺寸的设备下错位

  % 相对单位(会有影响发生变化)相对于父级(自身)大小进行计算

    缺点:能确定范围的还是比较好计算的,对于不太好确定值的地方不好使用百分比,并且会导致变形

  em 相对单位(会有影响发生变化)em=当前字体大小

      缺点:会根据当前容器字体大小发生变化,假如每个容器字体大小不一致,那么计算会非常麻烦

  rem r=root em=字体大小font size 相对单位 只依赖HTML字体大小

四、动态设置字体大小

  <script>

    //条件:尺寸越大,则字体越大,尺寸越小,则字体越小

    //获取html节点

    var html = document.getElementByTagName('html'[0]);

    //获取屏幕宽度

    var pageWidth = html.getBoundingClientRect().width;

    //屏幕宽度/固定数值=基准值

    html.style.fontsize = pageWidth/10 + 'px';

  </script>

移动端固定定位的方法:

  html{width:100%;height:100%;overflow:hidden;}

  body{width:100%;height:100%;overflow:auto;}

  需要定位的元素使用position:absolute;top:0;left:0;

第一课 移动端&响应式的更多相关文章

  1. 探讨兼容IE低版本的PC端响应式布局

    http://www.jiangweishan.com/article/lowIeResposive.html 响应式布局,oh my god!!有点醉了,感觉是老生常谈的话题了.虽然已经谈过很多了, ...

  2. 移动端使用rem同时适应安卓ios手机原理解析,移动端响应式开发

    rem单位大家可能已经很熟悉,rem是随着html的字体大小来显示代表宽度的方法,我们怎样进行移动端响应式开发呢 浏览器默认的字体大小为16px 及1rem 等于 16px 如果我们想要使1rem等于 ...

  3. 基于REM的移动端响应式适配方案

    视口 在前一段时间,我曾经写过一篇关于viewport的文章.最近由于在接触移动端开发,对viewport有了新的理解.于是,打算重新写一篇文章,介绍移动端视口的相关概念. 关于这篇文章说到的所有知识 ...

  4. 移动端响应式布局--你不知道的CSS3.0媒体查询,解决rem部分情况下无法适配的场景

    媒体查询作为响应式布局的方法之一,实际项目中用途也很广.但是你真的知道怎么用吗? 例如,下面匹配 iphone6/7/8 屏幕 @media screen and (max-width: 375px) ...

  5. 【CSS-移动端响应式布局详解】

    背景 移动端响应式布局开发主要方案有: 基于rem开发 基于媒体查询 基于弹性盒 基础概念 在讨论响应式布局知识前,先了解下移动端常用基础概念. 逻辑像素(CSS pixels) 浏览器使用的抽象单位 ...

  6. 基于rem的移动端响应式适配方案(详解) 移动端H5页面的设计稿尺寸大小规范

    基于rem的移动端响应式适配方案(详解) : https://www.jb51.net/article/118067.htm 移动端H5页面的设计稿尺寸大小规范 http://www.tuyiyi.c ...

  7. web前端-移动端响应式与自适应

    一. 在HTML的头部加入meta标签 在HTML的头部,也就是head标签中增加meta标签,告诉浏览器网页宽度等于设备屏幕宽度,且不进行缩放,代码如下: <meta name="v ...

  8. 前端笔记之移动端&响应式(上)媒体查询&Bootstrap&动画库&zepto&velocity

    一.媒体(介)查询 1.1 基本语法 媒体查询由媒体类型和一个或多个检测媒体特性的条件表达式组成.媒体查询中可用于检测的媒体特性有:width.height和color(等).使用媒体查询可以在不改变 ...

  9. PC 端响应式布局

    前言:PC端 电脑显示器的尺寸种类还是很多的,台式电脑和笔记本电脑尺寸相差就更明显,所以响应式布局还是很重要的,甚至是必须要考虑的. 响应式的页面好不好,在后管平台上很明显.因为后管平台,一般是全屏显 ...

随机推荐

  1. 制作自定义背景Button按钮、自定义形状Button的全攻略(转)

    在Android开发应用中,默认的Button是由系统渲染和管理大小的.而我们看到的成功的移动应用,都是有着酷炫的外观和使用体验的.因此,我们在开发产品的时候,需要对默认按钮进行美化.在本篇里,笔者结 ...

  2. 3d回顾

    手把手教你玩转 CSS3 3D 技术   要玩转css3的3d,就必须了解几个词汇,便是透视(perspective).旋转(rotate)和移动(translate).透视即是以现实的视角来看屏幕上 ...

  3. Unity手游之路<十三>手游代码更新策略探讨

    http://blog.csdn.net/janeky/article/details/25923151 这几个月公司项目非常忙,加上家里事情也多,所以blog更新一直搁置了.最近在项目开发上线过程中 ...

  4. Understand:高效代码静态分析神器详解(转)

    之前用Windows系统,一直用source insight查看代码非常方便,但是年前换到mac下面,虽说很多东西都方便了,但是却没有了静态代码分析工具,很幸运,前段时间找到一款比source ins ...

  5. Xcode 8 : iOS xib is missing from working copy、iOS misssing file

    1,造成此问题可能是SVN的原因,通过命令行解决. 2.未使用SVN,竟然是icloud 造成的,通过 改变网络状态 + 重启Xcode 解决.

  6. auto与decltype

    今天搜狗笔试的一道选择题,原题给忘了,但记得所考的知识点.知识点很基础,但很容易忽视. 具体内容可参考C++ Primer. auto :变量取auto后,其所对应的类型        auto一般会 ...

  7. PyCharm 5 破解注册方法

    方法: 调整时间到2038年. 申请30天试用 退出pycharm 时间调整回来即可. 或者: 注册时选择 License server ,填 http://idea.lanyus.com ,然后点击 ...

  8. C/C++相对论——C++中为什么要使用异常?

    C++中为什么要使用异常? 很多人也许知道C++中的异常机制,很多人也许不知道.很多人知道C中常用的assert,也知道在编译时候指定NODEBUG来忽略它. 对于C语言,使用正常的if-else即是 ...

  9. Extjs使用Ext.function.bind, 给句柄函数传参

    回调函数updateImage中的key参数,在外部调用时有程序员自己指定. 使用Ext.Function.bind(this.updateImage, this, 'imageUrl', true) ...

  10. 转:sql之left join、right join、inner join的区别

    left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录 right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录inner join(等值连接) 只 ...