【问题标题】:ASP.NET MVC does not catch styles when publishedASP.NET MVC 在发布时不捕获样式
【发布时间】:2012-01-03 23:52:26
【问题描述】:

我有一个 ASP.NET MVC 应用程序,当我在 Visual Studio 上运行它时运行良好。但是当我发布它时,所有样式似乎都不起作用。是否有任何关于为什么样式在发布时不适用于 MVC 应用程序的一般准则,因为现在我不知道发生了什么??

感谢任何想法和建议!

【问题讨论】:

  • 样式是指你的css中的样式都没有被使用吗?
  • 在浏览器中查看源代码,链接的 CSS 样式表是否显示?
  • @Maess 实际上有些人会这样做,而其他人则不会。这就是为什么我说是否有任何关于使样式起作用的一般准则!
  • 您是否使用了多个 .css 文件?
  • 我右键单击该项目并发布到同一个盒子上的文件系统上。然后,我将一个应用程序添加到 IIS,它使用默认的应用程序池......我能够在已发布的位置看到包含所有 css 文件的 CSS 文件夹。我错过了什么?

标签: css asp.net-mvc styles stylesheet publishing


【解决方案1】:

您的 css 样式可能不显示的原因有很多。

  • 缓存:也许您的浏览器使用了您的 css 文件的缓存版本。检查提琴手或清除浏览器缓存
  • css 文件的相对路径错误:在视图中包含 css 文件时应指定相对路径(使用 Url.Content("~/...") 获取正确的 url)。当您在 IIS 和 IDE 上使用不同的路径时,就会出现此问题。

但任何 cas 中的第一个检查是运行fiddler 并查看

  1. 浏览器是否请求正确的 css 文件
  2. 是服务器返回文件还是 404、304、...状态码

【讨论】:

  • 好的,我已经使用 Fiddler 进行了检查,我的 css 文件和 javascript 的状态为 200。
  • 那么您必须提供更多详细信息。显示 应该 应用于 html 元素的 css 内容并显示结果。正如其他人建议的那样,您可以使用 FireBug 或 Chrome 来查看哪些样式应用于元素。
【解决方案2】:

您可能已经在新文件中定义了样式,但没有在项目中包含新的 css 文件(在 Visual Studio .net 中)。

VS.Net 不会发布那些不属于项目的文件。

【讨论】:

  • 我实际上已经检查了元素,这就是我所看到的: 背景:无重复滚动 0 0 透明;但即使它说透明,浏览器也不会捕捉到这种风格。它只是显示一个白色背景。
  • @Muthu 好建议,不止一次发生在我身上。 @DotNetUser 如果您尝试添加像 body { color: red; background-color: green; padding 300px; } 这样的样式会发生什么,这有什么作用吗?
【解决方案3】:

获取Firebug,检查应该应用样式的元素并查看实际存在的 CSS。

查看CSS Panel 并查看正在链接的 CSS 文件(单击 master.css 中的向下箭头,如下图所示)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多