ASP.NET未应用我的CSS文件

4

我的网站位于文件夹/website

在浏览器中,它通过URLhttp://localhost:52912/website/打开

我的默认页面和母版页都位于根目录中

在Default.aspx中,我包含了我的母版页:

<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default"  MasterPageFile="WTF.master" %>

在我的WTF.mater文件中,我包含了CSS文件:
<link href="~/css/reset.css" runat="server" rel="stylesheet" type="text/css" media="screen" />

当我运行网站并在Mozilla中查看其源代码时,我看到CSS文件链接如下:
<link href="css/reset.css" rel="stylesheet" type="text/css" media="screen" />

所以,完整的URL将是http://localhost:52912/website/css/reset.css,这是正确的

-css文件存在

-在Firebug中没有错误,如“404未找到-reset.css”

-调试项目时没有错误

我甚至无法通过浏览器中的直接链接(http://localhost:52912/website/css/reset.css)或Mozilla源代码查看器中的链接打开此文件

它返回http://localhost:52912/website/default.aspx?ReturnUrl=%2fcss%2freset.css并保持在同一页上

我尝试了各种组合和谷歌建议 - 没有任何帮助

什么鬼???

已解决:通过添加

<location path="css">
        <system.web>
            <authorization>
                <allow users="*" />
            </authorization>
        </system.web>
    </location>

在web.config文件中

3个回答

10

这是因为您已经开启了表单身份验证并且您还没有允许 css 文件夹的公共访问。请尝试在 web.config 文件中添加以下内容:

<location path="css">
    <system.web>
        <authorization>
            <allow users="*" />
        </authorization>
    </system.web>
</location>

谢谢,伙计,我的怀疑是正确的! - johnode
@sbxmal 没问题 :) 很高兴能帮到你! - Mathew Thompson

2
似乎您正在遇到身份验证问题。 能否检查或发布您的web.config文件?

0
从链接href中删除波浪号(~)。它应该只是


<link href="/css/reset.css" runat="server" rel="stylesheet" type="text/css" media="screen" />

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接