「移动端」Web页面适配(1)

移动端 Web 页面,就是常说的手机 h5页面、webview页面、公众号开发的网页等。

由于手机机型较多,各个手机的屏幕尺寸不一样,所以做移动端页面,需要考虑在安卓和ios的各种尺寸设备的兼容问题,我们要做的 web 页面适配,就是为了在不同设备上,页面能够保持统一展示效果,或等比缩放。

二、移动适配方案


常见的移动适配方案有以下几种:

  • viewport

  • 盒模型

  • flex

  • rem

2.1、viewport - 可视区

最初手机端需要照顾 PC 端,如果不设置 viewport,直接访问网页的时候,我们发现网页内容看着很小,这是因为页面按照PC端最小宽度980展示的,也就是我们的网页宽度就是980,而手机屏幕宽度通常375、411、320、414等,没有980那么大,所以页面被缩小了很多。

设置viewport

<meta name=“viewport”

content="width=device-width,

initial-scale=1.0,

user-scalable=no,

minimum-scale=1.0

maximum-scale=1.0"

/>

分别对 meta 的各个属性介绍如下:

  • width - 设置viewport的宽度,为一个正整数,或字符串‘device-width’

  • initial-scale - 设置页面的初始缩放值,是一个数字,可以是小数

  • maximum-sacle - 设置页面最大缩放值,是一个数字,可以是小数

  • user-scalable - 是否允许用户进行缩放,值为’yes’或者’no’,yes表示可缩放,no表示禁止缩放

  • minimum-scale - 允许用户缩放的最小值,是一个数字,可以是小数

  • height - 设置layout viewport的高度,这个属性很少使用

一般情况下禁止用户缩放网页,设置的时候只需要:

<meta name=“viewport”

content=“width=device-width, initial-scale=1.0 , user-scalable=no” >

就可以了,但是由于某些浏览器不能识别 initial-scale,所以添加了最大和最小缩放限制。

viewport 设置可视区之后,就会把网页的宽度设置为移动设备的屏幕宽度。

如想深入学习,可查阅《viewport深入理解和使用 - 前端人 - 博客园》。

2.2、盒模型

CSS3 中新增 box-sizing 属性,可以设置盒模型类型。属性值分别为:

content-box - 标准模型

border-box - IE模型

两者最大区别就是盒子的宽度不同:

标准模型宽 = 内容宽 + padding + border

IE模型宽 = 内容宽(包含padding、border)

这样做的优点就是可以任意设置它的 padding 和 border,不会挤压盒子的排列,但是如果设置一个 margin,会立马改变盒子的排列。

如想深入了解,可查阅《前端面试题中的“盒模型”是什么?》

2.3、flex - 弹性布局

Flex 是 Flex Box 的简写,意为弹性布局,为盒子提供最大的灵活性。任何一个元素都可以指定为弹性布局。

使用语法:

.box{

display:-webkit-flex;

display:flex;

}

css

1,盒模型
2,如何实现一个最大的正方形
3,一行水平居中,多行居左
4,水平垂直居中
5,两栏布局,左边固定,右边自适应,左右不重叠
6,如何实现左右等高布局
7,画三角形
8,link @import导入css
9,BFC理解

js

1,判断 js 类型的方式
2,ES5 和 ES6 分别几种方式声明变量
3,闭包的概念?优缺点?
4,浅拷贝和深拷贝
5,数组去重的方法
6,DOM 事件有哪些阶段?谈谈对事件代理的理解
7,js 执行机制、事件循环
8,介绍下 promise.all
9,async 和 await,
10,ES6 的 class 和构造函数的区别
11,transform、translate、transition 分别是什么属性?CSS 中常用的实现动画方式,
12,介绍一下rAF(requestAnimationFrame)
13,javascript 的垃圾回收机制讲一下,
14,对前端性能优化有什么了解?一般都通过那几个方面去优化的?

区别
11,transform、translate、transition 分别是什么属性?CSS 中常用的实现动画方式,
12,介绍一下rAF(requestAnimationFrame)
13,javascript 的垃圾回收机制讲一下,
14,对前端性能优化有什么了解?一般都通过那几个方面去优化的?

[外链图片转存中…(img-SnWltAx0-1714494903116)]

开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

  • 17
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值