我可以在 blazor CSS 隔离之外制作外部样式吗?

Can I make external styles outside of blazor CSS isolation?

我有一个网站,其页眉、主页、页脚样式分为块等,看起来像这样:

在 Style 中,我将所有这些和 link 导入到 html(并且我使用预处理器)

@import "Core.css"
@import "Header/Header.css"
@import "Main/Main.css"
@import "Footer/Footer.css"
@import "etc and so on"

所以我决定将我的网站移动到 Blazor 并在其上使用样式分离成块,结果是这样的:

原来所有的样式都在一个static文件夹里,导入是隔离的MainLayout.style。

如果在静态索引中连接样式,则不需要单独导入。

现在我的问题是:

  1. 是否可以这样做,是否符合 Blazor 风格指南?
  2. 如果我做不到,那么怎么做更好?
  3. 如果我能做到这一点,那么如何更好地做到这一点?
  4. 如果我将 MainLayout 做成预处理器输出 css,它会比上面的选项更好吗?

好吧,没有人回答,所以我会写下我的问题的答案。

我将 MainLayout 分成两部分 - HeaderLayout 和 FooterLayout,进行 CSS 隔离并在 MainLayout 中将它们放在一起。

并使用伪class ::deep 支持子组件(来源:https://docs.microsoft.com/en-us/aspnet/core/blazor/components/css-isolation?view=aspnetcore-5.0#child-component-support)。

我认为我的解决方案符合 Blazor Style Guide,总的来说它非常有效。