页面缩放兼容性处理方法(zoom,Firefox火狐浏览器)


Posted in Javascript onAugust 29, 2017

1、页面缩放用到的技术点

(1)zoom

zoom:normal | <number> | <percentage>
默认值:normal
适用于:所有元素
继承性:有

可以使用用浮点数和百分比来定义缩放比例。

zoom的浏览器兼容性:http://caniuse.com/#search=zoom

页面缩放兼容性处理方法(zoom,Firefox火狐浏览器)

zoom的兼容性:firefox 全系列不支持

(2)transform

transform:scale(1.1,1.1);

scale(x,y) 定义 2D 缩放转换

兼容性:http://caniuse.com/#search=transform

页面缩放兼容性处理方法(zoom,Firefox火狐浏览器)

transform 属于CSS3属于,其兼容性:IE6-8不支持

2、页面缩放示例代码

<!DOCTYPE html>
<html>

 <head>
  <meta charset="utf-8" />
  <title>页面缩放兼容性处理(zoom,Firefox火狐浏览器)</title>
  <style>
   * {
    margin: 0;
    padding: 0;
    font-size: 14px;
    font-family: "microsoft yahei";
    box-sizing: border-box;
   }
   
   p {
    text-indent: 2em;
    line-height: 25px;
   }
   
   .btn {
    display: inline-block;
    padding: 6px 12px;
    margin-bottom: 0;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.42857143;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background-image: none;
    border: 1px solid transparent;
    border-radius: 4px;
   }
  </style>
 </head>

 <body>
  <button type="button" id="pageBig" class="btn">页面放大</button>
  <button type="button" id="pageSmall" class="btn">页面缩小</button>
  <p>
   前端对于网站来说,通常是指,网站的前台部分包括网站的表现层和结构层。因此前端技术一般分为前端设计和前端开发,前端设计一般可以理解为网站的视觉设计,前端开发则是网站的前台代码实现,包括基本的HTML和CSS以及JavaScript/ajax,现在最新的高级版本HTML5、CSS3,以及SVG等。
  </p>
  <script src="https://cdn.bootcss.com/jquery/1.12.4/jquery.min.js"></script>

  <script type="text/javascript">
   $(function() {
    //初始化默认缩放级别
    var zoomNum = 1;
    var $body = $('body');
    //页面放大函数
    function PageBig() {
     zoomNum += 0.1;
     //兼容firefox浏览器代码
     //需要transform-origin:center top设置,否则页面顶部看不到了
     $body.css({
      '-moz-transform': 'scale(' + zoomNum + ')',
      'transform-origin': 'center top'
     });
     $body.css('zoom', zoomNum)
    }
    //页面缩小函数
    function PageSmall() {
     zoomNum -= 0.1;
     //兼容firefox浏览器代码
     //需要transform-origin:center top设置,否则页面顶部看不到了
     $body.css({
      '-moz-transform': 'scale(' + zoomNum + ')',
      'transform-origin': 'center top'
     });
     $body.css('zoom', zoomNum);
    }
    $('#pageBig').click(function() {
     PageBig();
    });
    $('#pageSmall').click(function() {
     PageSmall();
    });
   })
  </script>
 </body>

</html>

效果:

页面缩放兼容性处理方法(zoom,Firefox火狐浏览器)

注意:

transform转换的基准位置属性为transform-origin,transform-origin属性默认值为上下左右中间位置,即:

transform-origin:50% 50% 0

防止页面顶部看不到,可以对transform-origin进行重新设置:

transform-origin: center top;

以上这篇页面缩放兼容性处理方法(zoom,Firefox火狐浏览器)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Javascript中的delete操作符详细介绍
Jun 06 Javascript
浅析jQuery 3.0中的Data
Jun 14 Javascript
JS实现css hover操作的方法示例
Apr 07 Javascript
Vuex之理解Getters的用法实例
Apr 19 Javascript
vue2.0安装style/css loader的方法
Mar 14 Javascript
Node.js 使用axios读写influxDB的方法示例
Oct 26 Javascript
vue代码分割的实现(codesplit)
Nov 13 Javascript
JS原型与继承操作示例
May 09 Javascript
微信小程序获取位置展示地图并标注信息的实例代码
Sep 01 Javascript
JavaScript实现电灯开关小案例
Mar 30 Javascript
Vue切换div显示隐藏,多选,单选代码解析
Jul 14 Javascript
vue 扩展现有组件的操作
Aug 14 Javascript
详谈Node.js之操作文件系统
Aug 29 #Javascript
js链表操作(实例讲解)
Aug 29 #Javascript
在页面中引入js的两种方法(推荐)
Aug 29 #Javascript
[js高手之路]设计模式系列课程-发布者,订阅者重构购物车的实例
Aug 29 #Javascript
使用canvas进行图像编辑的实例
Aug 29 #Javascript
jQuery实现锚点向下平滑滚动特效示例
Aug 29 #jQuery
js使用html2canvas实现屏幕截取的示例代码
Aug 28 #Javascript
You might like
作为PHP程序员应该了解MongoDB的五件事
2013/06/03 PHP
解析file_get_contents模仿浏览器头(user_agent)获取数据
2013/06/27 PHP
Zend Framework连接Mysql数据库实例分析
2016/03/19 PHP
Adnroid 微信内置浏览器清除缓存
2016/07/11 PHP
yii2.0实现创建简单widgets示例
2016/07/18 PHP
laravel学习笔记之模型事件的几种用法示例
2017/08/15 PHP
PHP大文件切割上传并带进度条功能示例
2019/07/01 PHP
jQuery解决iframe高度自适应代码
2009/12/20 Javascript
jquery remove方法应用详解
2012/11/22 Javascript
JS打开新窗口的2种方式
2013/04/18 Javascript
15个jquery常用方法、小技巧分享
2015/01/13 Javascript
javascript批量修改文件编码格式的方法
2015/01/27 Javascript
利用jQuery实现WordPress中@的ID悬浮显示评论内容
2015/12/11 Javascript
JavaScript中ES6字符串扩展方法
2016/08/26 Javascript
jQuery tagsinput在h5邮件客户端中应用详解
2016/09/26 Javascript
JS 实现可停顿的垂直滚动实例代码
2016/11/23 Javascript
es6学习笔记之Async函数的使用示例
2017/05/11 Javascript
nuxt.js 缓存实践
2018/06/25 Javascript
详解React中合并单元格的正确写法
2019/01/08 Javascript
vue 防止页面加载时看到花括号的解决操作
2020/11/09 Javascript
tornado框架blog模块分析与使用
2013/11/21 Python
python 写入csv乱码问题解决方法
2016/10/23 Python
Python爬虫实战:分析《战狼2》豆瓣影评
2018/03/26 Python
使用Python的Django和layim实现即时通讯的方法
2018/05/25 Python
Python二维码生成识别实例详解
2019/07/16 Python
python 函数嵌套及多函数共同运行知识点讲解
2020/03/03 Python
解决jupyter notebook import error但是命令提示符import正常的问题
2020/04/15 Python
python接入支付宝的实例操作
2020/07/20 Python
Django模型验证器介绍与源码分析
2020/09/08 Python
CSS3实现彩色进度条动画的示例
2020/10/29 HTML / CSS
Clarks鞋法国官方网站:英国其乐鞋品牌
2018/02/11 全球购物
华美博弈C/VC工程师笔试试题
2012/07/16 面试题
顶碗少年教学反思
2014/02/21 职场文书
大学副班长竞选稿
2015/11/21 职场文书
2016中学教师读书心得体会
2016/01/13 职场文书
2016年学校安全教育月活动总结
2016/04/06 职场文书