我有一个网页,由Android应用程序通过Webview组件显示。
它决定改变字体大小,所以16px的文本有font-size = 14px(当我用weinre检查元素时,我可以看到它。它有16px,但在计算机样式中有14px)。
我不希望Webview决定什么是更好的。那么我该如何解决这个问题?
备注:在此特定情况下,更改会导致文本不垂直对齐,因为更改后的行高不会调整字体大小。这只是其中一个案例,我想阻止Webview更改css值。
答案 0 :(得分: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");
}
}
答案 1 :(得分:0)
此问题似乎是由于WebView遵循系统字体大小设置(可在以下位置更改:设置>显示>字体大小)。
已在不同地方(for example)
提交了多个错误报告要重现此问题,您必须将系统字体大小缩小到最小或最小。
...
好的,如果我更改设置>我可以重新登录显示>字体大小。它不会在Chrome中重现,但Chrome首先似乎不尊重“字体大小”。我现在很忙,所以可能需要一段时间才能进一步调查。
尝试将系统字体大小设置为“小”或“中”并测试您的应用。