在iOS 8 Mobile Safari中,CSS缩放不适用于in

前端之家收集整理的这篇文章主要介绍了在iOS 8 Mobile Safari中,CSS缩放不适用于in前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
使用缩放:0.5;,当不在< a>内时,图像以0.5x大小呈现.标签,但在内部的1x大小< a>标签.

这发生在iOS 8 GM(Xcode 6 GM的iPhone 5模拟器和iPad mini)上.

iOS 7.1.2(iPhone 5)和iOS 7.0(Xcode 6 GM的iPhone 5模拟器)不会出现这种情况.

这是一个例子:https://dl.dropboxusercontent.com/u/379843/ios8csszoom/test.html

  1. <!DOCTYPE html>
  2. <html>
  3. <body>
  4. <img src="star-on@2x.png" style="border: 1px solid blue; zoom: 0.5;"/>
  5.  
  6. <a href="#">
  7. <img src="star-on@2x.png" style="border: 1px solid blue; zoom: 0.5;"/>
  8. </a>
  9.  
  10. <hr>
  11.  
  12. <img src="star-on@2x.png" style="border: 1px solid blue; -webkit-transform: scale(0.5);"/>
  13.  
  14. <a href="#">
  15. <img src="star-on@2x.png" style="border: 1px solid blue; -webkit-transform: scale(0.5);"/>
  16. </a>
  17. </body>
  18. </html>

-webkit-transform在iOS 8上运行,但我不想使用它,因为即使图像以0.5x大小呈现,< img>所占用的空间也是如此.标签是1x大小.

任何解决方法

解决方法

虽然不理想,但这就是我应对这个问题的方法

>用另一个元素替换锚点(div或span取决于块/内联)
>为每个元素指定一个共享的类名
>保留href,或者使用href添加data-href属性
>在较高的层次上,让事件监听器绑定到具有您的类名的所有元素
>事件侦听器读取href,然后触发适合您的框架的路由/控制器逻辑

示例:http://jsfiddle.net/z5crh05a/

  1. $(".fauxLink").on("click",function(e) {
  2.  
  3. var href = $(e.currentTarget).attr("href");
  4.  
  5. e.preventDefault();
  6. e.stopPropagation();
  7.  
  8. // navigation logic here
  9. alert("Navigate to: "+href);
  10.  
  11. });
  12.  
  13. });

希望Safari的问题在未来的iOS更新中得到修复.

猜你在找的iOS相关文章