ASP.NET Core Razor页面HTML元素出现陌生属性求助
问题解决:Razor页面自动生成
b-*属性 问题说明
你在ASP.NET Core的Razor页面中发现HTML元素被自动添加了类似b-t4arfvlwgt的属性,VS 2022打开页面时出现这个情况,旧项目无此问题。
这个b-前缀的属性是Blazor CSS隔离的自动生成标记,用于实现样式的作用域隔离。你的新项目大概率是启用了Razor Pages的CSS隔离特性,而旧项目未开启。
解决方案
1. 关闭全局CSS隔离
编辑你的项目文件(.csproj),找到以下配置项:
<EnableScopedCss>true</EnableScopedCss>
将其修改为:
<EnableScopedCss>false</EnableScopedCss>
如果没有这一行,直接忽略此步骤。保存后重新生成项目,b-*属性就会消失。
2. 删除单个页面的隔离样式文件
如果只是某个页面出现这个问题,检查该Razor页面(比如Index.cshtml)是否存在对应的同名.css文件(Index.cshtml.css)。这类文件是CSS隔离的载体,删除它之后,该页面的元素就不会再生成作用域属性。
3. 排查项目配置混淆
如果你的项目混合了Blazor和Razor Pages,确认是否在启动配置中误将CSS隔离应用到了Razor Pages。确保Program.cs中没有针对Razor Pages额外启用Blazor相关的CSS隔离中间件。
内容的提问来源于stack exchange,提问作者Alexander
相关产品推荐
相关产品推荐

