我有一个特定的主题CSS,只有在弹出窗口启动时才需要使用,其他地方都没有使用该CSS。简单地在网站启动时加载是浪费的。
是否有一种方式只在需要时加载CSS,例如打开弹出窗口时可以加载样式表?
我有一个特定的主题CSS,只有在弹出窗口启动时才需要使用,其他地方都没有使用该CSS。简单地在网站启动时加载是浪费的。
是否有一种方式只在需要时加载CSS,例如打开弹出窗口时可以加载样式表?
像这样创建一个新元素
var lnk=document.createElement('link');
lnk.href='path/sheet.css';
lnk.rel='stylesheet';
lnk.type='text/css';
(document.head||document.documentElement).appendChild(lnk);
希望这有所帮助。var $ = document; // shortcut
var cssId = 'myCss'; // you could encode the css path itself to generate id..
if (!$.getElementById(cssId))
{
var head = $.getElementsByTagName('head')[0];
var link = $.createElement('link');
link.id = cssId;
link.rel = 'stylesheet';
link.type = 'text/css';
link.href = 'http://website.com/css/stylesheet.css';
link.media = 'all';
head.appendChild(link);
}
在您的代码后端中添加以下内容,使用GetWebResourceUrl:
HtmlLink css= new HtmlLink();
css.Href = Page.ClientScript.GetWebResourceUrl(this.GetType(), "yourstyle.css");
css.Attributes["type"] = "text/css";
css.Attributes["rel"] = "stylesheet";
Page.Header.Controls.Add(css);
或者
Literal cssFile = new Literal()
{Text = @"<link href=""" + page.ResolveUrl("~yourstyle.css") + @"""
type=""text/css"" rel=""stylesheet"" />" };
page.Header.Controls.Add(cssFile);
GetWebResourceUrl()
函数将会查找提供的文件名对应的URL。 - Murali Murugesan$('head').append("<link rel='stylesheet' href='/href' type='text/css' anythingelse='value' />");
style
标签内。 - Laurent S.