blazor 出现 "::deep"不是有效伪元素的警告

  • blazor 出现 "::deep"不是有效伪元素的警告已关闭评论
  • 181 次浏览
  • A+
所属分类:.NET技术
摘要

在研究blazor项目时发现会有”::deep”不是有效的伪元素的警告,这还是项目模板里的代码,作为强迫症就十分难受。。。。。


问题:

在研究blazor项目时发现会有"::deep"不是有效的伪元素的警告,这还是项目模板里的代码,作为强迫症就十分难受。。。。。

解决:

百度搜了一圈无果,而后掏出谷歌在Stack Overflow找到的解决方案,但也仅仅是解决方案,并没有说明任何的原因(囧)。
解决办法是在

C:Program FilesMicrosoft Visual Studio2022EnterpriseCommon7IDEExtensionsMicrosoftWeb ToolsLanguagesSchemasCSS2052css-vendor-ms.xml 

文件的CssPseudo部分添加这么一行

<CssPseudo name="::deep" _locID="ms-browse-pseudo-element" _locAttrData="description" version="3.0" browsers="IE11" description="Blazor child component support." standard-reference="https://docs.microsoft.com/en-us/aspnet/core/blazor/components/css-isolation"/> 

然后重启VS就没有警告提示了,VS2019的文件夹应该要换成1033css-vendor-ms.xml

Stack Overflow原文:Suppress Blazor css ::deep warning

猜测是微软为blazor添加了额外的css伪元素但是又没在VS的识别配置里添加导致的