ASP.NET页面未加载CSS样式
这是一个使用VS 2010的C#中的一个简单网站。我有这个项目的以下目录结构:
起始页面是Default.aspx
,它可以完美加载。 但是当我从Default页面打开页面Interface/SystemAdminLogin.aspx
,它加载时没有CSS样式。 我在Master Page中导入了CSS样式表。 以下是我在两个.aspx文件中引用MasterPage文件的方法:
Default.aspx
:
SystemAdminLogin.aspx
:
我没有看到我的代码有任何错误,但为什么Page in Interface文件夹中没有加载CSS样式? 请帮忙。
这是我导入css文件的母版页代码:
Facial Recognition Bank System
这是CSS文件代码的一部分:
body { margin: 0; padding: 0; background: #fff url(../images/img01.jpg) repeat-x left top; font-family: Arial, Helvetica, sans-serif; font-size: 12px; color: #000; }
主页面中包含的样式表使用相对路径。
使用runat=server
指定样式表链接,并使用虚拟Web根路径( ~
)作为前缀:
要么:
但请记住,建议使用第一个选项。 当您在虚拟目录中发布站点时,第二个将不起作用。
在最后评论之后……
CSS中的图像URL也应该更新,以便不使用相对路径或进行任何路径遍历 (../)。
背景:#fff url(images / img01.jpg)repeat-x left top;
对于此选项,您需要移动Styles文件夹中的images文件夹(这是一个很好的做法)。
最后更新:
看起来head
元素也需要runat=server
,以便ASP.NET相对路径(〜)在runat=server
link
元素中工作。
这在我的母版页中对我有用:
'
这在我的母版页中对我有用:
将runat =“server”添加到head属性,并确保链接以root为目标(“〜/ path to css”)
Page Title Here
试试(〜在你的路径中):
<%@ Master Language="C#" AutoEventWireup="true" CodeFile="Site.master.cs" Inherits="SiteMaster" %> Facial Recognition Bank System