当前位置:  开发笔记 > 编程语言 > 正文

当iPhone方向从纵向更改为横向时,保留HTML字体大小

如何解决《当iPhone方向从纵向更改为横向时,保留HTML字体大小》经验,为你挑选了6个好方法。

我有一个移动的Web应用程序,其中包含多个列表项的无序列表,每个列表中都有一个超链接:

...我的问题是如何格式化超链接,以便在iPhone上查看时不会改变大小,并且accellerometer从纵向切换 - >横向?现在,我的超链接字体大小规格为14px,但是当切换到横向时,它会爆炸到20px.我希望font-size保持不变.这是代码:

ul li a
{
  font-size:14px;
  text-decoration: none;
  color: #cc9999;
}



1> Matt Stevens..:

您可以通过-webkit-text-size-adjustCSS属性禁用此行为:

html {
    -webkit-text-size-adjust: 100%; /* Prevent font scaling in landscape while allowing user zoom */
}

Safari Web内容指南中进一步描述了此属性的使用.


不要使用`none`,而是使用`100%`,****这是你想要的行为:http://blog.55minutes.com/2012/04/iphone-text-resizing/
正如snobojohan所说,您可以将其包装在特定于横向的媒体查询中,以保留在桌面浏览器上增加字体大小的能力.在iOS目标页面上,这不是必需的,其中缩放缩放将起作用.
@ bfred.it +1,我认为用这个改变编辑这个答案是值得的.

2> 小智..:

注意:如果您使用

html {
    -webkit-text-size-adjust: none;
}

然后这将禁用默认浏览器中的缩放行为.更好的解决方案是:

html {
    -webkit-text-size-adjust: 100%;
}

这可以纠正iPhone/iPad的行为,而不会改变桌面行为.


如果可以的话,我会再多投几次这个.完善!

3> snobojohan..:

使用-webkit-text-size-adjust:none; 直接在html上打破了在所有webkit浏览器中缩放文本的能力.您应该将其与特定于iOS的som媒体查询结合使用.例如:

@media only screen and (min-device-width : 320px) and (max-device-width : 1024px) {
     html {
        -webkit-text-size-adjust: none;
     }
}



4> Dan..:

如前所述,CSS规则

 -webkit-text-size-adjust: none

不再适用于现代设备.

幸运的是,iOS5和iOS6有了新的解决方案(todo:iOS7怎么样?):

`它才能生效. 

5> 小智..:

您可以在HTML标头中添加元数据:

/** * 2. Prevent iOS text size adjust after orientation change, without disabling * user zoom. */ html { -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; }

如您所见,它还包括IE Phone的供应商特定规则.

有关不同浏览器中实现的最新信息,请参阅MDN参考页面.

推荐阅读
yzh148448
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有