为什么css属性在android webview中会发生变化

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为什么css属性在android webview中会发生变化相关的知识,希望对你有一定的参考价值。

在使用css属性处理时,我发现android的Web视图行为很奇怪:

显示包含以下css属性的网页时:font-sizeline-heightset:

font-size: 20px;
line-height: 35px;

Android的webview将属性更改为:

font-size: 17.4px;
line-height: 30.45px;

为什么?

答案

我找到了答案:

只需webView必须在android中将文本大小设置为“NORMAL”。像这样:

webView.getSettings().setTextSize(WebSettings.TextSize.NORMAL);
另一答案

您是否检查了不同分辨率的页面行为? CSS中可能有定义的@media规则,它们会改变不同分辨率的样式,例如:

@media screen and (min-width: 1024px) {
    p {
        font-size:20px;
        line-height:35px
    }
}

@media screen and (max-width: 1023px) {
    p {
        font-size:17.4px;
        line-height:30.45px
    }
}

阅读更多here

以上是关于为什么css属性在android webview中会发生变化的主要内容,如果未能解决你的问题,请参考以下文章

android中webview加载html,用本地的css渲染页面如何做

在android中将CSS注入带有webview的站点

关于Android中WebView在加载网页的时候,怎样应用本地的CSS效果

android webview控件,当控件宽度较小时,自适应问题

CSS Id 选择器阻止所有内容在 Android 10 上的 Xamarin.Forms WebView 中显示

WebView:根据 Android API 版本不同的 css 解释