html适配手机 响应式,移动端适配(响应式)
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适配手机 响应式,移动端适配(响应式)相关推荐
- pageResponse - 让H5适配移动设备全家(移动端适配)1
pageResponse - 让H5适配移动设备全家(移动端适配)1 转载于:https://www.cnblogs.com/lichaoqing/p/5994131.html
- pageResponse - 让H5适配移动设备全家(移动端适配)
pageResponse - 让H5适配移动设备全家(移动端适配) 转载于:https://www.cnblogs.com/lichaoqing/p/5994114.html
- 移动端适配( 使用 vw 完成移动端适配 )
移动端适配( 使用 vw 完成移动端适配 ) 文档 postcss-px-to-viewport 是一款 PostCSS 插件,用于将 px 单位转化为 vw/vh 单位. 具体用法 1.安装 npm ...
- element 手机适配_解决vue移动端适配问题
1,先看看网上关于移动端适配讲解 再聊移动端页面适配,rem和vw适配方案! 基础点:rem相对根节点字体的大小.所以不用px; 根字体:字体的大小px; px:你就当成cm(厘米)这样的东西吧: 基 ...
- layui移动端适配_实战:移动端适配的最佳实践
移动端适配我们需要做哪些事情? 一个最佳实践除了设置 viewport 和 rem 基准值,随着iPhone手机的不断升级,我们不得不正视以下2个问题: 安全区域适配 识别刘海屏 关于viewpoin ...
- android适配手机与平板,关于平板适配问题
1.如果用了这个框架,什么都不做的话,在平板上会放大很多 2.有些应用也不必专门为平板做一套UI,取消autoSize适配,默认的效果也不错. 3.实现onAdaptListener,在onAdapt ...
- 【移动端适配二】H5移动端适配屏幕安全区(ios和android)
全面屏手机把整个webview(包括状态栏)给H5的话,不对状态栏进行控制往往会有以下如图问题出现,这样头部的返回按钮置于页面的安全区外,无法进行操作. 有问题的: 想要的效果: 具体的实现: 针对i ...
- 关于移动端适配,你必须要知道的
关于移动端适配,你必须要知道的 关于移动端适配,你必须要知道的 分享一款前端实用的面试题小程序 建议收藏,微信搜索 MST题宝库 移动端适配,是我们在开发中经常会遇到的,这里面可能会遇 ...
- 前端CSS移动端适配
导读 移动端适配,是我们在开发中经常会遇到的,这里面可能会遇到非常多的问题: 1px问题 UI图完美适配方案 iPhoneX适配方案 横屏适配 高清屏图片模糊问题 ... 上面这些问题可能我们在开发中 ...
- pc端 移动端适配rem插件方式
vue-屏幕适配方案 一,PC端适配 开发PC端项目,通常会要求适应各种的屏幕尺寸,并且要求浏览器缩小页面等比例变化,因此就要求写出来的前端页面是能够自适应的. 利用webpack配置px2rem-l ...
最新文章
- Openstack_通用模块_Oslo_vmware 创建/删除 vCenter 虚拟机
- 进入编辑模式、vim命令模式、vim实践
- Redis(5种数据类型)
- ssl1776-游乐场【图论,深搜】
- es6 Class 不存在变量提升
- Thinkphp3.2版本Controller和Action的访问方法
- php和mssql连接好吗,php如何与mssql数据库连接与配置_PHP教程
- 案例-三角形(CSS3)
- 基于stm32单片机智能温控风扇控制系统Proteus仿真(源码+仿真+全套资料)
- 18款表白源码,搭建网站必备,总有一款适合你
- MongoDB集群节点RECOVERING故障恢复
- imprinted weights
- 计算机常用的颜色模式有,ps的颜色模式有哪些
- JS实现全屏和退出全屏
- 九宫格图片怎么操作?这里有你想要的方法
- NAV导航网格寻路(4) -- 生成nav网格
- 热乎乎的宇宙头条校招前端面经
- 基于matlab的神经网络设计,神经网络模型matlab例子
- R in Action 学习笔记 - 第九章-Analysis of Variance
- PTA 数组 7-2 逆序存放数组中的数据,并输出指定元素