我有一个网页,由 Android 应用程序通过 Webview 组件显示。
它决定更改字体大小,因此 16px 的文本具有 font-size=14px(当我使用 weinre 检查元素时我可以看到它。它有 16px,但在计算样式中它有 14px)。
我不希望 Webview 决定什么更好。那么我该如何解决这个问题呢?
备注:在这种特定情况下,更改会导致文本不垂直对齐,因为更改后行高不会调整字体大小。这只是其中一种情况,我想阻止 Webview 更改 css 值。
此问题仅影响在 Web 视图中查看的页面,而不影响 Android 浏览器。它可能只影响一部分设备。还有其他人看到这个问题吗?
我看到我的设备转换字体如下:
16 像素 -> 14 像素
14 像素 -> 12
像素 12 像素 -> 10 像素
我试图强制我的页面在所有设备上以 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");
}
}
Run Code Online (Sandbox Code Playgroud)