【问题标题】:CSS not found when keep in subfolder保存在子文件夹中时找不到 CSS
【发布时间】:2013-07-21 06:24:07
【问题描述】:

这里有两种情况。场景 1 一切正常。但是,场景 2 仍然存在问题。请检查场景:

Scenario 1: 
MasterPages: Main\MasterPages.master
Css        : Main\Theme\CSS\
Javascript : Main\Theme\Javascript\

JQuery Menu is loaded successfully

Scenario 2:
MasterPages: Main\MasterPages.master
Css        : Main\Theme\CSS\
Javascript : Main\Theme\Javascript\
Pages      : Main\Pages\Test.aspx(MasterPage is MasterPages.master)

JQuery menu is not loading in Test.aspx page

Please help....

【问题讨论】:

  • 你能添加你如何引用样式表的代码

标签: jquery asp.net css master-pages


【解决方案1】:

这取决于您的 CSS/JS 文件在代码中的链接位置,以及指定的路径。

如果链接在test.aspx 中,那么您将使用以下内容:

<link rel="stylesheet" type="text/css" href="../../Theme/CSS/filename.css" />
<script type="text/javascript" src="../../Theme/Javascript/filename.js"></script>

但是,如果链接在母版页中,它们将是:

<link rel="stylesheet" type="text/css" href="Theme/CSS/filename.css" />
<script type="text/javascript" src="Theme/Javascript/filename.js"></script>

这是因为母版页与Theme 文件夹位于同一目录中,因此不需要使用../ 向上导航层次结构。

另外,由于您使用的是 ASP.NET,因此您可以绝对引用路径:

<link rel="stylesheet" type="text/css" href="~/Main/Theme/CSS/filename.css" />
<script type="text/javascript" src="~/Main/Theme/Javascript/filename.js"></script>

这假定所有内容都包含在位于站点根目录的名为 Main 的文件夹中。

更新:

您似乎正确链接到它。接下来要做的是在 Chrome 中运行该站点,然后检查源代码以查看发生了什么:您可以确定外部文件(如 JS 脚本和 CSS 文件)是否实际被提供并加载到浏览器中等等在。我相信 Firefox 也是如此,但我不使用它,所以无法发表评论。否则,请将您的网站托管在我们可以看到的地方,我会查看并报告。

【讨论】:

  • 感谢您的宝贵回复。该链接在母版页中。当母版页加载时,菜单加载成功。但是当我浏览母版页菜单中的页面时,页面已加载但菜单未加载。
  • 您能否编辑您的答案,并添加您在母版页中使用的 CSS 链接文本/Javascript 文本,以及您尝试链接到的 CSS/javascript 文件的文件名?谢谢
  • 当我像这样添加 href="~/Main/Theme/CSS/filename.css" 然后即使在起始页也找不到菜单
  • javascript 端可能有问题
【解决方案2】:

解决这个问题的简单方法是在代码视图中查看呈现的页面(chrome 中的“Ctrl+U”)并查看 java 和 css 文件的 url。可能你错过了一个'../'。

【讨论】:

  • 感谢您的回复。没有发现问题出在哪里,而是以不同的方式管理..
猜你喜欢
  • 2015-12-18
  • 2021-12-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-01-13
  • 2017-11-19
相关资源
最近更新 更多