深色主题下Webview窗口的背景为黑

使用问题 · 41 次浏览
FaniX 创建于 1天15小时前

深色主题下网页底色也会变成黑色

<!DOCTYPE html>
<html>

<body>
    <input id="input1"></body>
    <p>123</p>
</html>

效果为

但是html元素的默认样式依然是普通的,导致如果不设置html元素的背景颜色,对象文字会无法看清,控件的样式也比较突兀


回复内容
CL 1天12小时前
#1

背景色跟随windows有一定的合理性,不然可能太晃眼了。 

这个直接在网页css里对body设置一下背景色就可以了。 

<!DOCTYPE html>
<html>

<body style='background-color:#FFF'>
    <input id="input1">
    <p>123</p>
    </body>
</html>

FaniX 回复 CL 1天9小时前 :

如果是这样设计的话能不能让把 默认背景色 这个参数用作背景色呢?

CL 回复 FaniX 1天5小时前 :

已,竟然有这个参数,这个参数就是用来设置背景色的额

试了一下也是可以的。

CL 最后更新于 1天5小时前
FaniX 回复 CL 1天4小时前 :

我试了一下好像并不是,这个参数实际设置的是页面加载之前窗口的背景颜色。目前页面加载之后背景色始终是跟随windows(甚至不是跟随Quicker主题色)。

而且只有传入HTML内容的时候页面的背景色是如此,如果是file:// URL打开HTML文件背景色又始终是白色的。

我记得更早的版本里不是现在这个表现,传入HTML内容之后窗口背景也始终是白色的。

FaniX 最后更新于 1天4小时前
CL 回复 FaniX 1天4小时前 :

我这里测试是正常的,这个参数设置的是WebView的默认背景色属性。

https://learn.microsoft.com/en-us/dotnet/api/microsoft.web.webview2.wpf.webview2.defaultbackgroundcolor?view=webview2-dotnet-1.0.3595.46 


CL 最后更新于 1天4小时前
FaniX 回复 CL 1天3小时前 :
我又试了一下,好像只有在Windows深色模式下背景会变黑,浅色模式下是跟随步骤设置的背景色的,和Quicker主题颜色没有关系。
CL 回复 FaniX 1天3小时前 :

确实,深色模式下会变,我研究下。

FaniX 回复 CL 1天3小时前 :

好像是Webview2的bug https://github.com/MicrosoftEdge/WebView2Feedback/issues/5392

可以设置webView.CoreWebView2.Profile.PreferredColorScheme = CoreWebView2PreferredColorScheme.Light;解决

FaniX 最后更新于 1天3小时前
CL 回复 FaniX 1天3小时前 :

嗯,就是这个问题了,等微软修复

回复主贴