ASP.NET Core MVC - 未应用内联 css 样式

dev*_*r82 5 css asp.net-mvc asp.net-core-mvc

当我将内联样式应用于 html 元素时,我在我的 ASP.NET MVC 项目中有一个奇怪的行为 - 它们没有显示在浏览器中。但是,如果我使用 css 类将相同的样式放在外部 css 文件中,它将起作用(即使将 css 类<style>放在同一页面上的标记中也不起作用。

例子:

不工作

<div style="height: 100px; width: 100px; background: red;">
    ABC
</div>
Run Code Online (Sandbox Code Playgroud)

不工作

<!DOCTYPE html>
<html>
<head>
    <style>
        .myClass {
            height: 100px;
            width: 100px;
            background: red;
        }
    </style>
</head>
<body>
    <div class="myClass">
        ABC
    </div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

在职的

mystyle.css

.myClass {
    height: 100px;
    width: 100px;
    background: red;
}
Run Code Online (Sandbox Code Playgroud)

索引.cshtml

<div class="myClass">
    ABC
</div>
Run Code Online (Sandbox Code Playgroud)

如果我不使用cshtml文件而只加载静态html文件,则所有变体都有效。

这是为什么?我们如何修复它?

Ron*_*n C 1

归根结底,在这种情况下真正重要的是发送到浏览器的代码,而不是用于将代码发送到浏览器的后端装置。如果通过页面发送它时它有效html,但通过页面发送它时它不起作用,cshtml那么在这两种情况下,会向浏览器发送不同的内容。

因此,理解问题的关键是找出不同之处。使用开发者工具在页面发送的页面上查看源码html,在页面发送的页面上查看源码cshtml。比较两种情况下发送的 html。鉴于示例代码非常小,应该很容易发现差异。一旦发现差异,您就会对发生的情况有一个很好的线索。