2012-07-02 93 views
71

显然,一段文本达到一定长度后,android上的chrome会决定调整文本大小并使其变大(导致各种各样的乐趣)。现在我有一个网站,其中大约一半的p-tag符合我设定的尺寸,另一半则随意改变 - 显然取决于段落的长度。Android上的Chrome调整字体大小

我究竟如何解决这个问题?

+1

你有一个例子吗?另外,哪款Android和Chrome版本? – Junuxx

回答

2

这被称为“字体提升”,在WebKit bug中有详细描述。目前无法禁用它。

2

我找到了我的页面的解决方案:给父元素一个宽度和高度!字体不会超出这些边界,所以它会保持很小(呃)。

82

max-height: 999999px;添加到要防止字体提升的元素或其父项。

+2

它的作品...怎么回事! – Laurent

+12

Android Chrome仅将字体提升应用于具有动态高度的元素。只要您指定高度或最大高度,则不会应用字体提升。将最大高度设置为大数很简单,应该没有副作用。 – moeffju

+1

只是一个警告。这解决了我在Android上使用Chrome字体时遇到的问题,并不是很好。 **然而**它打破了特定版本的iOS网站的ipad视图。 –

54

包括文档<head>在以下<meta>标签:

<meta name="viewport" content="width=device-width, initial-scale=1">

这将正确地建立视图帧,并且因此消除了对“FontBoosting”的需要。

+6

这绝对是首选的解决方案。如果您关心移动设备的外观,那么请考虑您的视口的所有权! –

+9

虽然这不会禁用字体提升。 –

+1

它肯定会纠正不必要的缩放,我将来会使用它。 – Dizzley

5

经过一些测试后,这个规则帮了我一个忙。必须添加到包含提升文本的元素或其父项,具体取决于div/table结构。

element or parent element { 
    /* prevent font boosting on mobile devices */ 
    width: 100%; 
    height: auto; 
    min-height: 1px; 
    max-height: 999999px; 
} 

也许宽度和heigth值必须进行修正,根据您的需求。

14

将其置于您的重置状态。 html * {max-height:1000000px;}

+0

对我造成粘滞页脚的问题,不得不做html身体*而不是 –