html5移动端自适应布局的实现


Posted in HTML / CSS onApril 15, 2020

场景:为适应各种大小的屏幕

自适应布局我知道的两种方式

1.使用媒体查询,下面制定了几种适应方式,例如第一个表示屏幕宽度在320px-360px之间的,html字体大小适配为13.65px

<style>
   @media only screen and (max-width: 360px) and (min-width: 320px){
    html{
     font-size:13.65px;
    }
   }
   @media only screen and (max-width: 375px) and (min-width: 360px){
    html{
     font-size:23.4375px;
    }
   }
   @media only screen and (max-width: 390px) and (min-width: 375px){
    html{
     font-size:23.4375px;
    }
   }
   @media only screen and (max-width: 414px) and (min-width: 390px){
    html{
     font-size:17.64px;
    }
   }
   @media only screen and (max-width: 640px) and (min-width: 414px){
    html{
     font-size:17.664px;
    }
   }
   @media screen and (min-width: 640px){
    html{
     font-size:27.31px;
    }
   }
  </style>

2.响应式,获取到屏幕的宽度,计算出一定的比例大小,使用rem代替px,在使用的时候如 font-size:1rem,在不同屏幕大小的手机上展示的大小效果是不一样的,和手机屏幕的大小比例自适应

<script>
   (function(doc, win) {
    var docEl = doc.documentElement, //根元素html
     //判断窗口有没有orientationchange这个方法,有就赋值给一个变量,没有就返回resize方法。
     resizeEvt = 'orientationchange' in window ? 'orientationchange' : 'resize',
     recalc = function() {
      var clientWidth = docEl.clientWidth;
      if(!clientWidth) return;
      //把document的fontSize大小设置成跟窗口成一定比例的大小,从而实现响应式效果。
      if(clientWidth >= 640) {
       clientWidth = 640;
      }
      docEl.style.fontSize = 20 * (clientWidth / 320) + 'px';
      console.log(clientWidth);
      console.log(docEl.style.fontSize);
     };
     recalc();
    if(!doc.addEventListener) return;
    win.addEventListener(resizeEvt, recalc, false); //addEventListener事件方法接受三个参数:第一个是事件名称比如点击事件onclick,第二个是要执行的函数,第三个是布尔值
    doc.addEventListener('DOMContentLoaded', recalc, false) //绑定浏览器缩放与加载时间
   })(document, window);
  </script>
<div id="div2" class="text" style="border: 0.04rem solid #ccc;
            height: 14rem;font-size: 0.5rem;">

到此这篇关于html5移动端自适应布局的实现的文章就介绍到这了,更多相关html5移动端自适应 内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章,希望大家以后多多支持三水点靠木!

HTML / CSS 相关文章推荐
7款设计巧妙的css3飘带状3D立体效果的导航菜单和表单窗口
Feb 04 HTML / CSS
纯CSS3发光分享按钮的实现教程
Sep 06 HTML / CSS
css3中单位px,em,rem,vh,vw,vmin,vmax的区别及浏览器支持情况
Dec 06 HTML / CSS
html5指南-2.如何操作document metadata
Jan 07 HTML / CSS
html5 Canvas画图教程(8)—canvas里画曲线之bezierCurveTo方法
Jan 09 HTML / CSS
html5如何及时更新缓存文件(js、css或图片)
Jun 24 HTML / CSS
Html5无刷新修改browser Url的方法
Jan 15 HTML / CSS
简单html5代码获取地理位置
Mar 31 HTML / CSS
HTML5 video标签(播放器)学习笔记(一):使用入门
Apr 24 HTML / CSS
canvas绘制视频封面的方法
Feb 05 HTML / CSS
处理textarea中的换行和空格
Dec 12 HTML / CSS
微信小程序纯CSS实现无限弹幕滚动效果
Sep 23 HTML / CSS
HTML里显示pdf、word、xls、ppt的方法示例
Apr 14 #HTML / CSS
HTML5 直播疯狂点赞动画实现代码 附源码
Apr 14 #HTML / CSS
HTML5手指下滑弹出负一屏阻止移动端浏览器内置下拉刷新功能的实现代码
Apr 10 #HTML / CSS
canvas 基础之图像处理的使用
Apr 10 #HTML / CSS
用canvas显示验证码的实现
Apr 10 #HTML / CSS
HTML5给汉字加拼音收起展开组件的实现代码
Apr 08 #HTML / CSS
iPhoneX安全区域(Safe Area)底部小黑条在微信小程序和H5的屏幕适配
Apr 08 #HTML / CSS
You might like
关于js和php对url编码的处理方法
2014/03/04 PHP
PHP实现生成数据字典功能示例
2018/05/24 PHP
jQuery 对象中的类数组操作
2009/04/27 Javascript
jQuery 白痴级入门教程
2009/11/11 Javascript
Javascript的getYear、getFullYear、getUTCFullYear异同分享
2011/11/30 Javascript
JS定时检测任务任务完成后执行下一步的解决办法
2016/12/22 Javascript
Angular 2父子组件数据传递之@Input和@Output详解(下)
2017/07/05 Javascript
Express使用html模板的详细代码
2017/09/18 Javascript
微信小程序之GET请求的实例详解
2017/09/29 Javascript
Vue中使用matomo进行访问流量统计的实现
2019/11/05 Javascript
Java Varargs 可变参数用法详解
2020/01/28 Javascript
小程序点餐界面添加购物车左右摆动动画
2020/09/23 Javascript
代码块高亮可复制显示js插件highlight.js+clipboard.js整合
2021/02/15 Javascript
python实现杨辉三角思路
2017/07/14 Python
python实现超市扫码仪计费
2018/05/30 Python
使用python Fabric动态修改远程机器hosts的方法
2018/10/26 Python
Python 中使用 PyMySQL模块操作数据库的方法
2019/11/10 Python
Django admin禁用编辑链接和添加删除操作详解
2019/11/15 Python
tensorflow 获取所有variable或tensor的name示例
2020/01/04 Python
Pytorch框架实现mnist手写库识别(与tensorflow对比)
2020/07/20 Python
Python分类测试代码实例汇总
2020/07/23 Python
Css3+Js制作漂亮时钟(附源码)
2013/04/24 HTML / CSS
韩国现代百货官网:Hmall
2018/03/21 全球购物
俄罗斯厨房产品购物网站:COOK HOUSE
2021/03/15 全球购物
自我评价格式
2014/01/06 职场文书
生日宴会答谢词
2014/01/09 职场文书
网络工程师职业规划
2014/02/10 职场文书
公司年会主持词
2014/03/22 职场文书
合作协议书范本
2014/04/17 职场文书
小学教师评语大全
2014/04/23 职场文书
我的中国梦演讲稿高中篇
2014/08/19 职场文书
担保书范文
2019/07/09 职场文书
利用Nginx代理如何解决前端跨域问题详析
2021/04/02 Servers
pytorch 如何使用batch训练lstm网络
2021/05/28 Python
Python 中的 copy()和deepcopy()
2021/11/07 Python
Python pyecharts案例超市4年数据可视化分析
2022/08/14 Python