You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

竖屏转横屏字体大小异常问题及解决方案-webkit-text-size-adjust:100%

iPhone横屏时字体异常放大的问题与解决方案

问题场景

我之前碰到过一模一样的iOS Safari字体适配坑:在Safari响应式调试模式下测试时,所有字体大小都显示正常,但在iPhone 5s真机上,竖屏模式下字体完全符合body里设置的px值,切换到横屏后字体却莫名变大;另外导航栏初始字体正常,但展开后也会出现字体放大的情况。

最让人困惑的是,我所有字体大小都是在body标签里用px单位统一设置的,既没有单独给元素指定字体大小,也没用到em、rem这类相对单位,一开始完全摸不着问题根源。

解决方案

后来才搞清楚,这是iOS Safari的默认行为——它会在横屏模式下自动放大字体以“提升可读性”,我们只需要添加一行CSS就能彻底解决:

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

这行代码的核心作用是禁止浏览器自动缩放字体,同时还保留了用户手动缩放页面的权限,不会影响页面的可访问性。

完整CSS代码示例

把这行属性加到body样式里即可,以下是整合后的完整代码:

* { 
  margin: 0; 
  padding: 0; 
}
body { 
  font-family: helvetica, arial, sans-serif; 
  font-size: 23px; 
  font-weight: normal; 
  text-align: left; 
  line-height: 1.2; 
  color: black;
  -webkit-text-size-adjust: 100%; /* 解决横屏字体放大问题 */
}
h1, h2 { 
  font-size: inherit; 
  font-weight: inherit; 
  text-decoration: none; 
  -webkit-hyphens: auto; 
  hyphens: auto; 
}
@media screen and (max-width: 1112px) { 
  /* 断点后字体改为20px */
  body { font-size: 20px; } 
}
@media screen and (max-width: 1024px) { 
  /* 断点后字体改为18px */
  body { font-size: 18px; } 
}

内容的提问来源于stack exchange,提问作者KP83

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 04:17:46