菁英数字科技(猩码)-猩码学苑-专注软件开发人才菁英教育
标题:
前端第14天-樊享禹-20230425
[打印本页]
作者:
546437
时间:
2023-4-25 23:34
标题:
前端第14天-樊享禹-20230425
一、今日知识点
1 移动端的基础
浏览器现状
PC常见浏览器:QQ、UC、edge、谷歌、火狐、苹果浏览器等等。
移动端常见浏览器:QQ浏览器、UC浏览器、百度手机浏览器、夸克浏览器、搜狗浏览器等等
国内的浏览器的内核都是基于webkit内核修改过来的,所以如果有需要处理的兼容性问题,就主要处理webkit内核的兼容性即可。
手机屏幕现状
安卓手机的主要的分辨率:
480×800、480×854、720×1280、1080×1920、2700x1220像素等等。
苹果手机的主要分辨率
640×960、640×1136、750×1334、1242×2208、2556 x 1179等等。
作为开发来说,我们不需要太多的关注分辨率的问题,因为正常去开发网页的时候都是用px尺寸单位。
移动端的调试方法
1、使用谷歌开发者工具 Chrome DevTools的模拟手机调试
2、搭建本地服务器,手机和服务器在一个局域网内
3、使用外网服务器,直接用IP来进行访问
2 移动端的视口问题
视口(viewport)
就是浏览器显示页面内容的屏幕区域,视口可以分为布局视口、视觉视口和理想视口。
布局视口
一般移动设备的浏览器都默认设置了一个布局视口,用于解决早起PC端页面在手机上的显示问题,IOS 和 Android都是980px,所以PC端的页面在手机上显示元素看起来都比较小,一般情况下可以通过手动来缩放网页。
视觉视口
指的是用户正在看到的网站的区域,注意:是正在看到的网站区域,不一定是网站的全部区域,我们是可以通过缩放来控制视觉视口的,但是不会影响布局视口,布局视口仍然是原来的尺寸。
理想视口
为了使网站在移动端有最理想的浏览和阅读宽度而设定的视口,需要手动添加meta标签来控制视口的设置
meta视口标签的主要目的:布局视口和视觉视口的宽度保持一致,简单来说就是设备有多宽,移动端页面的布局页面就有多宽。
meta视口标签的使用
常用属性
width
宽度设置的是viewport宽度,可以设置成device-width的特殊值
initial-scale
初始的缩放比例 设置为大于0的数字,一般是1
maximum-scale
最大的缩放比例,设置为大于0的数字,一般是1
minimum-scale
最小的缩放比例,设置为大于0的数字,一般是1
user-scalable
是否允许用户缩放,yes/1 或者 no/0
标准的视口标签
物理像素和物理像素比
物理像素点指的是屏幕显示的最小颗粒,是真实存在的,在设备出厂的时候就设置好的,比如iphone14 pro 的是2556 x 1179
实际开发过程中一个px单位不一定是等于一个物理像素点的
因为有物理像素比的存在,将一张100px×100px的图片放到手机里会按照物理像素比进行放大。
如果出现了图片模糊的情况,我们一般会按照如下方式解决
如果要将一个100×100的图片放到移动端,假设物理像素比是2
就可以将这个图片先缩小为50px×50px的图片,然后再进行插入即可。
多倍图
当物理像素比是2的时候,那么可以将图片进行缩小2倍,然后进行使用的方式来让图片更加清晰
如果物理像素比3的时候,那么可以将图片缩小3倍,然后进行使用
所以倍图的使用是根据物理像素比的变化而变化的。
3 移动端开发的选择及技术解决方案
移动端的主流方案
1、单独制作移动端
通常情况下,单独制作移动端的页面域名前会加一个m(moblie)
比如
https://m.jd.com/
服务器会根据浏览器的类型来返回相应的页面,PC端会返回PC端页面,移动端会返回移动端页面
2、响应式网站
就是PC端和移动端共用一套页面,只不顾在不同的屏幕下会有不同的样式展示。
华为官网就是响应式布局
https://www.huawei.com/cn/
移动端的技术解决方案
1、移动端的兼容性问题
移动端的浏览器基本都是以webkit内核为主,所以遇到兼容性问题主要解决webkit的问题即可
我们在移动端部分可以放心的使用HTML5和CSS3的样式,不用担心兼容性问题。
2、移动端的公共样式文件
移动端的CSS初始化推荐使用normalize.css
优点
设置一些有价值的默认值
帮助我们修复了一些浏览器的常见bug
拥有详细的文档
网站地址
http://necolas.github.io/normalize.css/
4 移动端常见布局方案
1、单独来制作移动端(主流)
流式布局
flex弹性布局
less+rem+媒体查询
混合布局
2、响应式布局(次要)
媒体查询
Bootstrap
5 CSS的动画
动画序列
1、从0%开始到100%结束,这样的规则我们叫做动画序列
2、在@keyframes 中规定动画的CSS样式,可以创建任意多的样式 (@keyframes 是关键帧的意思)
3、可以使用0~100% 也可以使用from和to来规定动画的开始和结束
动画制作的步骤
1、定义动画
2、调用动画
定义多个阶段的动画
动画常用属性
@keyframes 定义动画
animation 复合属性,所有的动画属性都可以写在该属性中 除了 animation-play-state属性
animation-name 规定动画的名称
animation-duration 规定动画的持续时间
animation-timing-function 规定动画的运动曲线 默认是ease
animation-delay 规定动画何时开始
animation-iteration-count 规定动画的播放次数,默认是1 如果无限循环使用infinite
animation-direction 规定动画在下一周期是否逆向播放 默认是normal 如果要逆向播放,使用alternate
animation-play-state 规定动画是否正在运行,运行时running,暂停是paused
animation-fill-mode 规定动画结束后的状态,保持结束后的状态是forwards 如果是 回到初始状态使用backwards
欢迎光临 菁英数字科技(猩码)-猩码学苑-专注软件开发人才菁英教育 (http://www.xingmaxueyuan.com/)
Powered by Discuz! X3.4