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

移动端浏览器中CSS无法控制文本大小问题求助

问题根源与解决方案

这是Chrome移动端的**文本自动缩放(Text Autosizing)**特性导致的问题。Chrome会根据容器宽度、内容长度自动调整字体大小以优化移动端可读性,但在你的布局中,表格元素被触发了自动缩放,导致字体和body不一致。

解决方法

方法1:全局禁用文本自动缩放

在HTML的<head>中添加viewport元标签,明确控制缩放行为:

<meta name="viewport" content="width=device-width, initial-scale=1.0, text-size-adjust=100%">

或者针对元素单独设置兼容多浏览器的CSS:

body, td {
  font-size: 34px;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

方法2:强制表格文本继承字体大小

给表格单元格添加明确的字体继承规则,同时禁用自动缩放:

td {
  font-size: inherit;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
}

为什么缩短h2或移除最后一行会恢复正常?

Chrome的文本自动缩放算法会根据页面整体内容的长度、容器宽度判断是否需要调整字体。当你缩短h2或移除最后一行文本时,页面内容长度变化,算法判定无需缩放,因此字体恢复和body一致。代码片段查看器中正常,是因为它的iframe环境默认可能禁用了该特性或有不同的viewport配置。

修改后的完整代码示例:

<!DOCTYPE html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0, text-size-adjust=100%">
<style>
body {font-size:34px;}
td {
  font-size: inherit;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}
</style>
</head>

<body>
<h2>Camera - If this line is shortened to 3 words the problem goes away</h2>

<table border=1>
  <tr>
    <td>
      Camera - this text in table data is different size (length doesn't matter)
    </td>
  </tr>
</table>

Camera FOV: <br/>
Camera if this line is removed, issue is gone<br/>

</body>

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.14 18:42:08