第一课 移动端&响应式

一、调试工具介绍(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;

时间: 2024-10-14 04:58:17

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

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

基于rem的移动端响应式适配方案(详解) : https://www.jb51.net/article/118067.htm 移动端H5页面的设计稿尺寸大小规范 http://www.tuyiyi.com/v/53039.html 原文地址:https://www.cnblogs.com/bydzhangxiaowei/p/9536126.html

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

背景 移动端响应式布局开发主要方案有: 基于rem开发 基于媒体查询 基于弹性盒 基础概念 在讨论响应式布局知识前,先了解下移动端常用基础概念. 逻辑像素(CSS pixels) 浏览器使用的抽象单位,主要用来在网页上绘制内容:通常在我们实际开发中涉及到的CSS单位px都是指逻辑像素. 设备像素或物理像素(Device Pixels) 显示屏幕的最小物理单位,每个DP包含自己的颜色.亮度.等值的 CSS pixels在手机屏幕上占多大的位置,这不是固定的,这取决于很多属性:经过分析和总结,我们可

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

一. 在HTML的头部加入meta标签 在HTML的头部,也就是head标签中增加meta标签,告诉浏览器网页宽度等于设备屏幕宽度,且不进行缩放,代码如下: <meta name="viewport" content="width=device-width,user-scalable=no,initial-scale=1.0,maximum-scale=1.0,minimum-scale=1.0"> 简单分析一下这一行代码的含义:width=device

Java的HTTP服务端响应式编程

为什么要响应式编程? 传统的Servlet模型走到了尽头 传统的Java服务器编程遵循的是J2EE的Servlet规范,是一种基于线程的模型:每一次http请求都由一个线程来处理. 线程模型的缺陷在于,每一条线程都要自行处理套接字的读写操作.对于大部分请求来讲,本地处理请求的速度很快,请求的读取和返回是最耗时间的.也就是说大量的线程浪费在了远程连接上,而没有发挥出计算能力.但是需要注意一点,线程的创建是有开销的,每一条线程都需要独立的内存资源.JVM里的-Xss参数就是用来调整线程堆栈大小的.而

移动端响应式

一.css3的@media媒体查询 1.定义和使用 @media 可以针对不同的屏幕尺寸设置不同的样式,特别是如果你需要开发响应式的页面,@media 是非常有用的.当你重置浏览器大小的过程中,页面也会根据浏览器的宽度和高度重新渲染页面,这对调试来说是一个极大的便利. 语法: @media mediaType and|not|only (media feature) { /*CSS-Code;*/ } 参数解释: mediaType(媒体类型):类型有很多,常用screen,用于电脑屏幕,平板电

移动端响应式的基础设置

这里是基础配置 蓝色加粗加大绿色背景部分是最关键的,其他的都是辅助 1 @charset "utf-8"; 2 html { 3 font-size: 625%; 4 } 5 body,h1,h2,h3,h4,p,ul,ol,form,fieldset,figure { 6 margin: 0; 7 padding: 0; 8 } 9 body { 10 background-color: #fff; 11 font-family: "Helvetica Neue"

移动端响应式布局

<script> var pixclPation = 1/window.devicePixelRation; document.write('<meta name="viewport" content="width=device-width,initial-scale='+pixelRatio+',minimum-scale='+pixelRatio+',maximum-scale='+pixelRatio+'" />'); </scr

移动端响应式布局+rem+calc()

1.媒体查询:@media only screen and (max-width: ) {},在最初做pc端时,使用各种媒体查询,因为pc的屏幕分辨率总共就几种,不嫌麻烦的重复使用类名.有很大的缺陷就是UI给的设计稿宽度是一定的,在做响应式式凭借自己的感觉是一种超级不爽的美感纠结症. 2.百分比:百分比也是相当的麻烦,还要去各种计算,不是程序员该做的笨重事. 3.em:缺陷是父盒子的百分比. 自己探索了一条自己选择走的捷径,不用在担心宽度和高度不等比例适应,也不用担心在各分辨率下的布局会出现问题

移动端响应式布局,rem动态更新

(function(){ var fontSizeMatchDeviceWidth = function(){ var deviceWidth = document.documentElement.clientWidth || window.screen.width || 320, devicePixelRatio = window.devicePixelRatio || 1, fontSize = (Math.ceil(deviceWidth * 16 / 320)), scale = 1 /