如何在winRT中设置webview透明背景

本文关键字:webview 透明 背景 设置 winRT | 更新日期: 2023-09-27 18:06:10

我有一个网页视图加载html内容在一个页面。它的背景如何设置为透明。我将html背景设置为透明

如何在winRT中设置webview透明背景

试试这个:

<WebView DefaultBackgroundColor="Transparent"/>

据我所知,这是不可能的,因为这是一个实际的HTML页面,你是在Webview内部呈现。webview不是从Control派生出来的,正因为如此,它不像你使用从Control派生出来的控件那样支持相同的模板功能。另外,由于浏览器不能有透明的网站,所以默认情况下网站将显示为白色。

这可能与你的问题没有直接关系,但我认为知道何时使用Webview仍然很重要。MSDN上关于UI和渲染的文档中有一些重要的注释:

WebView的特性是其他UI区域(如控件)不能呈现在WebView的顶部。这是因为窗口区域的内部处理方式,特别是输入事件的处理方式和屏幕绘制方式。如果你想要渲染HTML内容,并在HTML内容之上放置其他UI元素,你应该使用WebViewBrush作为渲染区域。WebView仍然提供HTML源信息,您可以通过SourceName属性引用该WebView。WebViewBrush没有这种覆盖限制。如果你想显示一个交互的WebView,只是偶尔有重叠的内容(比如下拉列表或应用程序栏),你可以在必要的时候临时隐藏WebView控件,用WebViewBrush填充的元素代替它。然后,当重叠的内容不再存在时,您可以再次显示原始的WebView。要了解更多信息,请参阅WebView控件示例。

更多信息请参见完整文档

他们已经在Windows通用应用程序中修复了它。如果你设置DefaultBackgroundColor为Transparent和

body, html { background:transparent; }

你会得到你想要的