1. viewport元标签

移动端浏览器在一个比屏幕更宽的虚拟视口(通常为980px)中渲染页面,用户通过平移和缩放来浏览页面不同区域。引入viewport元标签可以让web开发者控制视口尺寸及比例。

width属性控制视口宽度。可以设置确切像素数,或者device-width这一特殊值表示页面宽度为屏幕宽度。(相应有height及device-height属性。)

initial-scale属性控制页面初始缩放等级。

user-scalable,maximum-scale及minimum-scale属性表示允许用户以怎样的方式缩放页面。

2. 媒体查询

@media基于媒体类型、媒体特性来应用样式。

@media(max-width: 800px){

body{

background: red;

}

}

上面代码表示当满足最大宽度为800px时,使用其中的样式。

媒体类型

媒体类型描述设备的一般类别。除非使用not或only逻辑运算符,否则媒体类型是可选的,隐含使用all类型。

all 适用于所有设备

print 打印时生效

screen 主要适用于彩色电脑屏幕

媒体查询也可以应用于HTML标签来将样式表应用于某个特定媒体。

上面代码表示屏幕宽度不小于900px时widescreen-styles.css才会生效。注意这个css始终会下载,只是不满足条件是不生效。

3. 动态REM

动态REM是手机专用的自适应方案。

什么是REM

rem是一个相对字体大小单位,代表根元素的font-size大小(例如元素的font-size)。

常用长度单位(rem和em的区别)

em等于自己的font-size;一个M的宽度,或者说一个汉字的宽度;

rem是根元素的font-size;

px像素

vhviewport height 视口高度,100vh==视口高度

vwviewport width 视口宽度,100vw==视口宽度(兼容性差)

手机端方案的特点

手机类型太多,屏幕宽度不一,很难使用响应式。

如果使用百分比定宽度,因为宽度不确定导致高度无法与宽度有关联,无法保证宽高比例。

要实现完美还原页面设计,需要使宽高成比例整体缩放。

使用JS动态调整REM

var pageWidth = window.innerWidth

document.write('')

上面代码将根元素的font-size设为视口宽度,即 1rem == (html font-size) == (1page width)

如此,我们便可以都用rem为单位,以视口的宽度为基准,动态调整REM,确定宽高比例。

.child{

width: 0.4rem;

height: 0.2rem;

margin: 0.05rem;

}

上面代码便使用了rem动态调整宽高比例。但是因为1rem就等于一个视口的宽度,所以会用到很多位小数。可以将JS代码中的 pageWidth/10,这样1rem==1/10pageWidth。

如果写为 pageWidth/00,即1rem==1/100pageWidth,此时的rem就模拟了vw。但是由于chrome浏览器默认最小font-size为12px,因此可能会导致页面错乱。

REM可以和其他单位同时存在

font-size: 16px;

border: 1px solid red;

width: 0.5rem;

4.其他移动端适配方案

再给移动端写一套HTML和CSS,判断是移动设备,直接使用另一套HTML和CSS;

专为移动端新建一个站点,判断是移动设备,直接跳转。

一般只有简单的新闻站点、博客才会用到响应式。

响应式典型

html适配手机 响应式,移动端适配(响应式)相关推荐

  1. pageResponse - 让H5适配移动设备全家(移动端适配)1

    pageResponse - 让H5适配移动设备全家(移动端适配)1 转载于:https://www.cnblogs.com/lichaoqing/p/5994131.html

  2. pageResponse - 让H5适配移动设备全家(移动端适配)

    pageResponse - 让H5适配移动设备全家(移动端适配) 转载于:https://www.cnblogs.com/lichaoqing/p/5994114.html

  3. 移动端适配( 使用 vw 完成移动端适配 )

    移动端适配( 使用 vw 完成移动端适配 ) 文档 postcss-px-to-viewport 是一款 PostCSS 插件,用于将 px 单位转化为 vw/vh 单位. 具体用法 1.安装 npm ...

  4. element 手机适配_解决vue移动端适配问题

    1,先看看网上关于移动端适配讲解 再聊移动端页面适配,rem和vw适配方案! 基础点:rem相对根节点字体的大小.所以不用px; 根字体:字体的大小px; px:你就当成cm(厘米)这样的东西吧: 基 ...

  5. layui移动端适配_实战:移动端适配的最佳实践

    移动端适配我们需要做哪些事情? 一个最佳实践除了设置 viewport 和 rem 基准值,随着iPhone手机的不断升级,我们不得不正视以下2个问题: 安全区域适配 识别刘海屏 关于viewpoin ...

  6. android适配手机与平板,关于平板适配问题

    1.如果用了这个框架,什么都不做的话,在平板上会放大很多 2.有些应用也不必专门为平板做一套UI,取消autoSize适配,默认的效果也不错. 3.实现onAdaptListener,在onAdapt ...

  7. 【移动端适配二】H5移动端适配屏幕安全区(ios和android)

    全面屏手机把整个webview(包括状态栏)给H5的话,不对状态栏进行控制往往会有以下如图问题出现,这样头部的返回按钮置于页面的安全区外,无法进行操作. 有问题的: 想要的效果: 具体的实现: 针对i ...

  8. 关于移动端适配,你必须要知道的

    关于移动端适配,你必须要知道的 关于移动端适配,你必须要知道的 分享一款前端实用的面试题小程序   建议收藏,微信搜索   MST题宝库   ​ 移动端适配,是我们在开发中经常会遇到的,这里面可能会遇 ...

  9. 前端CSS移动端适配

    导读 移动端适配,是我们在开发中经常会遇到的,这里面可能会遇到非常多的问题: 1px问题 UI图完美适配方案 iPhoneX适配方案 横屏适配 高清屏图片模糊问题 ... 上面这些问题可能我们在开发中 ...

  10. pc端 移动端适配rem插件方式

    vue-屏幕适配方案 一,PC端适配 开发PC端项目,通常会要求适应各种的屏幕尺寸,并且要求浏览器缩小页面等比例变化,因此就要求写出来的前端页面是能够自适应的. 利用webpack配置px2rem-l ...

最新文章

  1. Openstack_通用模块_Oslo_vmware 创建/删除 vCenter 虚拟机
  2. 进入编辑模式、vim命令模式、vim实践
  3. Redis(5种数据类型)
  4. ssl1776-游乐场【图论,深搜】
  5. es6 Class 不存在变量提升
  6. Thinkphp3.2版本Controller和Action的访问方法
  7. php和mssql连接好吗,php如何与mssql数据库连接与配置_PHP教程
  8. 案例-三角形(CSS3)
  9. 基于stm32单片机智能温控风扇控制系统Proteus仿真(源码+仿真+全套资料)
  10. 18款表白源码,搭建网站必备,总有一款适合你
  11. MongoDB集群节点RECOVERING故障恢复
  12. imprinted weights
  13. 计算机常用的颜色模式有,ps的颜色模式有哪些
  14. JS实现全屏和退出全屏
  15. 九宫格图片怎么操作?这里有你想要的方法
  16. NAV导航网格寻路(4) -- 生成nav网格
  17. 热乎乎的宇宙头条校招前端面经
  18. 基于matlab的神经网络设计,神经网络模型matlab例子
  19. R in Action 学习笔记 - 第九章-Analysis of Variance
  20. PTA 数组 7-2 逆序存放数组中的数据,并输出指定元素

热门文章

  1. 港澳台、大陆身份证正则表达式
  2. APP安全性检查报告整改
  3. 艾司博讯:拼多多推广投放时间设置步骤
  4. 推荐一个不错的国外html5模板网站
  5. 太阳诱电 | 汽车用金属功率电感器MCOIL™ LCEN 系列实现商品化
  6. 基于NIOS II的1553B总线开发板
  7. 苹果app退款_苹果app退款流程:App Store应用如何申请iOS退款教程
  8. 粗糙集(Rough Sets)
  9. 在python中输入圆的半_python半圆
  10. openlayers动态添加自定义div图层 具有筛选功能 和浮窗