当我的 ASP.NET 页面在 IE7 中进行回发时,所有的 CSS 都会丢失。我没有使用主题,而是将母版页中的 CSS 包含在后面的代码中。
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
AddStylesheetInclude("/static/css/global.css");
AddStylesheetInclude("/static/css/sifr.css");
}
我的代码实际上是添加:
public virtual void AddStylesheetInclude(String url)
{
HtmlLink link = new HtmlLink();
link.Attributes["type"] = "text/css";
link.Attributes["href"] = url;
link.Attributes["rel"] = "stylesheet";
Page.Header.Controls.Add(link);
}
它在 Firefox 中运行良好,只是在 IE 中。为了添加更多上下文,在包含的 CSS 文件中,它用于@import
包含其余部分。
编辑
如果我采用所有@import
规则并将其包含在实际的 HTML 中,它就会起作用。