不确定是否应该在Blazor或Visual Studio中修复这个问题,但我有一个Razor页面,其中包含基于某些逻辑生成的样式的内联CSS部分,因此它必须是动态的和内联的。这使得Visual Studio显示关于Unexpected character sequence in property value
的警告CSS039
。
@{ var styles = new List<string>(); }
<div class="some-element"></div>
<style type="text/css">
.some-element {
background-image: @(string.Join(",", styles)); /* Warning is here */
}
</style>
- 问题**
- Blazor:有没有可能在一个单独的文件中包含动态CSS?
1.可视化工作室:尝试在.editorconfig
文件中抑制此警告,为什么它没有消失?
root = true
[*]
indent_style = space
[*.cs]
dotnet_diagnostic.CSS039.severity = none
[*.razor]
dotnet_diagnostic.CSS039.severity = none
[*.css]
dotnet_diagnostic.CSS039.severity = none
2条答案
按热度按时间x6h2sr281#
这似乎摆脱了警告。
如果出于某种原因,您有一个需要@()的更复杂的代码块,您也可以在上面的代码块中将字符串作为局部变量计算,然后直接在样式中引用它。
例如
flvlnr442#
我不推荐这样做,用类名定义样式的原因是为了可读性、可重用性等等--如果动态生成样式属性,这些就不适用了。
因此,只要在使用类的任何地方使用内联样式属性就可以了: