我有一个在页面中加载 html 内容的 web 视图。它的背景如何设置为透明。我将 html 背景设置为透明。
3 回答
试试这个:
<WebView DefaultBackgroundColor="Transparent"/>
据我所知,这是不可能的,因为这是您在 Web 视图中呈现的实际 HTML 页面。webview 不是从Control派生的,因此,它不支持与我们使用从Control派生的控件相同的模板可能性。此外,由于浏览器不能拥有透明的网站,因此该网站默认显示为白色。
这可能与您的问题没有直接关系,但是我认为了解何时使用 Webview 仍然很重要。MSDN 上的文档中有一些关于 UI 和渲染的重要说明:
WebView 具有不能在 WebView 之上渲染其他 UI 区域(例如控件)的特点。这是因为窗口区域是如何在内部处理的,特别是如何处理输入事件以及如何绘制屏幕。如果你想渲染 HTML 内容并且在 HTML 内容之上放置其他 UI 元素,你应该使用 WebViewBrush 作为渲染区域。WebView 仍然提供 HTML 源信息,您可以通过 SourceName 属性引用该 WebView。WebViewBrush 没有此覆盖限制。如果要显示一个仅偶尔有重叠内容的交互式 WebView(例如下拉列表或应用栏),可以在必要时暂时隐藏 WebView 控件,将其替换为使用 WebViewBrush 填充的元素。然后,当重叠内容不再存在时,您可以再次显示原始 WebView。有关详细信息,请参阅 WebView 控件示例。
有关详细信息,请参阅完整文档。
他们已在 Windows 通用应用程序中修复它。如果将 DefaultBackgroundColor 设置为透明并且
body, html {
background:transparent;
}
你会得到你想要的