页面缩放兼容性处理方法(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 相关文章推荐
jQuery学习笔记 操作jQuery对象 CSS处理
Sep 19 Javascript
JS获取并操作iframe中元素的方法
Mar 21 Javascript
跟我学习javascript的函数调用和构造函数调用
Nov 16 Javascript
基于jQuery实现仿微博发布框字数提示
Jul 27 Javascript
利用jquery获取select下拉框的值
Nov 23 Javascript
js中new一个对象的过程
Feb 20 Javascript
Js利用Canvas实现图片压缩功能
Sep 13 Javascript
Vue项目组件化工程开发实践方案
Jan 09 Javascript
Vue底层实现原理总结
Feb 17 Javascript
JS秒杀倒计时功能完整实例【使用jQuery3.1.1】
Sep 03 jQuery
从0搭建vue-cli4脚手架
Jun 17 Javascript
JavaScript 闭包的使用场景
Sep 17 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远程连接MYSQL数据库非常慢的解决方法
2008/07/05 PHP
php学习之数据类型之间的转换介绍
2011/06/09 PHP
Zend Framework动作助手(Zend_Controller_Action_Helper)用法详解
2016/03/05 PHP
PHP输出Excel PHPExcel的方法
2018/07/26 PHP
JavaScript中“+=”的应用
2007/02/02 Javascript
javascript 图片上传预览-兼容标准
2009/06/01 Javascript
修改好的jquery滚动字幕效果实现代码
2011/06/22 Javascript
自己实现ajax封装示例分享
2014/04/01 Javascript
浅谈javascript的call()、apply()、bind()的用法
2016/02/21 Javascript
jQuery改变form表单的action,并进行提交的实现代码
2016/05/25 Javascript
AngularJS下对数组的对比分析
2016/08/24 Javascript
AngularJS 中的Promise --- $q服务详解
2016/09/14 Javascript
AngularJS中如何使用echart插件示例详解
2016/10/26 Javascript
node.js基于mongodb的搜索分页示例
2017/01/22 Javascript
Spring shiro + bootstrap + jquery.validate 实现登录、注册功能
2017/06/02 jQuery
vue如何获取点击事件源的方法
2017/08/10 Javascript
Vue.js实现网格列表布局转换方法
2017/08/25 Javascript
[41:13]完美世界DOTA2联赛PWL S2 Forest vs Rebirth 第一场 11.20
2020/11/20 DOTA
Python中的作用域规则详解
2015/01/30 Python
Python实现国外赌场热门游戏Craps(双骰子)
2015/03/31 Python
Python Sql数据库增删改查操作简单封装
2016/04/18 Python
Python各类图像库的图片读写方式总结(推荐)
2018/02/23 Python
如何使用python爬虫爬取要登陆的网站
2019/07/12 Python
centos7之Python3.74安装教程
2019/08/15 Python
Python内置函数locals和globals对比
2020/04/28 Python
用Python实现职工信息管理系统
2020/12/30 Python
用CSS3的box-reflect来制作倒影效果
2016/11/15 HTML / CSS
如何强制垃圾回收
2015/10/06 面试题
食品销售计划书
2014/04/26 职场文书
图书馆志愿者活动总结
2014/06/27 职场文书
2015年春节标语口号
2014/12/09 职场文书
教师求职自荐信
2015/03/26 职场文书
学生通报表扬范文
2015/05/04 职场文书
请病假条范文
2015/08/17 职场文书
解决MySQL存储时间出现不一致的问题
2021/04/28 MySQL
openEuler 搭建java开发环境的详细过程
2022/06/10 Servers