2013-05-22 80 views
2

我有一个网页,通过Webview组件显示Android应用程序。阻止Android Webview改变字体大小(计算风格)

它决定改变字体大小,所以16px的文本的font-size = 14px(我可以看到它,当我检查与weinre的元素。它有16px,但在计算风格,它有14px)。

我不喜欢Webview来决定什么是更好的。那么我该如何解决这个问题呢?

备注:在这种特定情况下,更改会导致文本不垂直对齐,因为更改后行高不会调整字体大小。这只是其中的一种情况,我想停止Webview改变css值。

+0

webview使用什么元标签?例如用于视口? – hexblot

+0

你的意思是html meta标签吗?该网页具有' – Alexander

回答

0

此问题仅影响在webview中查看的页面,而不影响android浏览器。它可能只影响一部分设备。有没有其他人看到这个问题?

我看到我的设备变换字体如下:

16px的 - > 14px的
14px的 - > 12px的
12px的 - > 10px的

我试图迫使我页面在所有设备上呈现12px的字体。这里是(使用jQuery)一个潜在的解决方案:

$(document).ready(function() 
{ 
    //set font-size to 12px 
    $('html').css('font-size', "12px") 

    //See what font-size is computed by the webview 
    var fs = parseFloat($('html').css('font-size')); 

    //If the webview is being naughty, compensate for it 
    if (fs == 10) 
    { 
     $('html').css('font-size', "14px"); 
    } 
} 
0

这个问题似乎是由于的WebView尊重系统字体大小设置(可在改变:设置>显示>字体大小)。

Android Font size setting

几个bug报告已经在不同的地方(for example

提交为了再现您必须将系统字体大小缩小到较小或最小的问题。

...

好吧,我可以,如果我更改设置>显示>字体大小摄制。它不会在Chrome中重现,但是Chrome首先不会考虑“字体大小”。我现在很忙,所以可能需要一段时间才能进一步调查。

尝试将您的系统字体大小设置为“小”或“中”并测试您的应用程序。