我使用angular 构建应用。它应该在平板电脑和支持触摸的设备上运行。
我想让用户能够缩放/放大应用,适合那些视力不好和手指笨拙的人。要做到这一点,我正在使用这个脚本,当用户点击缩放按钮时执行: 这是代码
<!--code start -->
$scope.zoomLevel+= 0.1;
$('body').css({
zoom: $scope.zoomLevel
});
这完全适用于chrome,但在IE11中完全没有任何作用。
我正在使用twitter bootstrap,angular和jquery 。
在 jsFiddle 中进行测试时,我完全可以使用放大IE ,所以我猜我,或者某些第三方库正在设置属性这会影响IE中的缩放属性。
答案 0 :(得分:4)
zoom
属性是一个较旧的功能,今天真的不应该使用。它具有较差的跨浏览器支持,不属于正式标准,因此我(IE团队的工程师)会鼓励您找到更符合标准的方法来继续前进。
从版本9开始,Internet Explorer支持CSS Transforms和scale功能。此特定功能具有更好的跨浏览器支持,并且足以满足您的需求。我创建了一个小小提琴,同时显示缩放和缩放,以确认体验中的相似性。
小提琴:http://jsfiddle.net/jonathansampson/hy5vup49/2/
在评论中进行了一些讨论后,您指出了zoom
与转换比例之间的有效布局差异。如果您希望实现zoom
跨浏览器的效果,我建议您考虑在项目中使用em
或rem
单位,并利用字体大小继承作为缩放机构。