全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
移动端页面适配四大方式前端在制作移动端页面时,会碰到适配各种手机屏幕的问题,而且还包括平板电脑,这么多种分辨率的屏幕,如何做到适配呢?本文总结了四种方式。1、 流体布局所谓的流体布局,就是用百分比来定义宽度,最外层容器的宽度设置为100%,就可以适配不同的屏幕,子元素按照比例来设置百分比,子元素整体的百分比之和就是100%,但是如果有子元素设置了边框,或者padding,那么整体的宽度就会大于100%,这时,我们可以将盒子的尺寸计算方式设置为从边框计算,通过设置:box-sizing:border-box,此时,盒子设置的宽度就是盒子的实际宽度,就没有这个问题了。宽度解决了,高度如何设置呢?一般的元素,高度可以固定不变,所以在屏幕变化时,我们可以看到元素的宽度变了,高度不变,但是对于图片,如果高度不同,图片就会被拉扁,此时我们可以将图片的宽度设为100%;它的宽度就由它的父级的宽度决定,图片的高度不设置,图片就会按照宽度变化等比例放大或缩小,这是图片的特性,这样就可以做到图片的适配了。流体布局的伪代码如下:* box-sizing:border-box .wrap overflow:hidden .banneroverflow:hidden.banner img width:100% .l_conwidth:33.333333%; height:50px;float:left;.c_conwidth:33.333333%; height:50px;float:left;.r_conwidth:33.333333%; height:50px;float:left;2、 响应式布局响应式布局,就是使用媒体查询的方式,针对不同的屏幕,对应不同的样式,但是移动端的屏幕很多种,如果要对应这么多套不同的样式,这样做也不现实,所以针对移动端,可以划分出三个屏幕宽度范围,在范围之内的,就使用同一套样式,这样定义三套样式就可以了,宽度的区间可以参照苹果手机的分辨率:374px以下为第一个区间,375px到413px为第二个区间,414px以上为第三个区间,按照这个三个区间定义三套样式,在苹果手机上可以做到很好的适配,但对于一些其他分辨率的手机,可能会有一些不太适配的细节,但是这三套,应该基本上是适用了。响应式布局的伪代码如下:/ 最小尺寸样式/ 大于等于375px尺寸样式media screen and (min-width: 375px) / 大于等于414px尺寸样式media screen and (min-width: 414px) 3、 弹性盒子布局模型弹性盒子布局模型是一个新增的CSS 布局模块,它带有流体布局和响应式布局的一些特性,而且它用少量的属性可以实现了多个元素的对齐方式,分布以及顺序等问题,用它能快捷高效的实现适配多终端的布局,这种模块简称为 flexbox,flexbox布局模块的先后有三个版本,前两个版本的一些属性在最新的浏览器上已经得不到支持了,第三个版本在最新的浏览器上已得到广泛的支持。Flexbox布局模块是CSS3新增的一些属性,这些属性分为容器属性和条目属性,容器和条目是这种模块里面的概念,指的其实就是父元素和子元素。父元素通过设置display:flex来声明flexbox模块、通过flex-flow来设置子元素排列方式、通过justify-content来设置元素的分布方式等等。而子元素通过flex属性来设置伸长或缩小比例、通过order来设置它在容器中的顺序等等。 .menumax-width:800px;height:40px;margin:0 auto;display:flex;justify-content:flex-start;align-items:center;.menu liflex:1;弹性盒子布局模型特征伪代码如下:四、基于rem的布局rem是CSS3新增的一个单位,相对于em单位,rem的单位设置更加简单,它是相对于根元素的的字体大小,其他的元素如果用rem来设置单位,它们对应的基准就是一样的,这样,在移动端适配中,除了html元素,其他元素的宽、高、行高、背景定位等等都用rem来设置,我们设定一个宽度作为基准,比如320px,然后按照这个基准,按比例来调节不同屏幕上对应的html元素的字体大小,就可以同步改变其他所有元素的用rem设置的尺寸的大小,这样就可以做到真正的按比例适配,不像流体布局,只能改变宽度,这种方式直接,高效,目前广泛应用在移动端布局中。动态改变html标签文字大小的JavaScript如下: (function()var calc = function()var docElement = document.documentElement;var clientWidthValue = docElement.clientWidth 640 ? 640 : docElement.clientWidth;docElement.style.fontSize = 20*(clientWidthValue/320) + px;calc();window.addEventListener(resize,calc);)();CSS样式设置伪代码如下:.searchposition:absolute;right:0.725rem;top: 0.625rem;width:1.35rem;height:1.35rem;background:url(./images/icons.png)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 企业间合作框架协议签订通知(3篇)范文
- 传承文化精髓弘扬民族精神-小学主题班会课件
- 人与自然:和谐共生小知识小学主题班会课件
- 做好自我保护小学主题班会课件
- 关于市场推广活动合作协议的确认函8篇范文
- 建筑行业建筑设计与施工协同管理方案
- 2026年泸州市龙马潭区事业单位人员招聘笔试参考试题及答案详解
- 2026年临沧地区事业单位人员招聘笔试参考试题及答案详解
- 2026年眉山市东坡区事业单位人员招聘考试备考题库及答案详解
- 2026年上海市普陀区事业单位人员招聘考试参考题库及答案详解
- 2026年八年级数学下册期末考试试卷及答案
- 2026年高考全国乙卷理科综合考试真题
- 2026年宠物新品趋势白皮书-抖音电商-202605
- 2026广东广州市越秀区建设街招聘辅助人员1人备考题库含答案详解(模拟题)
- 输液门诊奖惩制度
- 2025-2030高端物业服务创新模式与客户满意度提升策略分析报告
- (2025年)注册安全工程师考试建筑施工(初级)安全生产实务试卷与参考答案
- 广州物业管理中信广场业户手册
- 2025年10月自考00504《艺术概论》试题及答案(含评分参考 )
- 2026年毛概期末考试试题库100道含答案【基础题】
- 2025广东深圳市公安局第招聘警务辅助人员2356人(十三批)(公共基础知识)综合能力测试题附答案解析
评论
0/150
提交评论