您的位置:首页 > 编程语言 > ASP

使用MasterPage(母版页)的ASP.NET Content(内容)页面添加CSS样式

2012-02-16 10:40 716 查看
为使用Master的ASP.NET Content页面添加CSS样式使用了Master的ASP.NET
Content页面无法直接引用外部样式或内嵌样式,因为CSS样式必须出现在HTML的head标签内,而Content页面自身是不能包含head
的。不过通过编程,很容易做到这一点,以下就是解决方案(也可以用相同的手段来添加其他HTML元素)。

先定义以下两个方法:

内嵌样式支持
protected
void AddInlineStyle(string style)
{

HtmlGenericControl node =
new HtmlGenericControl("style");

node.Attributes.Add("type",
"text/css");

node.InnerText = style;

Page.Header.Controls.Add(node);
}
外部样式支持
protected
void AddLinkedStyle(string url)
{

HtmlLink link =
new HtmlLink();

link.Attributes.Add("type",
"text/css");

link.Attributes.Add("rel",
"stylesheet");

link.Attributes.Add("href", url);

Page.Header.Controls.Add(link);
}
在 Page_Load
方法中,使用上面两个方法来添加样式:
添加内嵌样式

AddInlineStyle("body { padding:10px; margin:5px 0; }");
引用外部样式
AddLinkedStyle("/styles/layout.css");
简单而实用。HtmlGenericControl
是相当有用的类,在ASP.NET中可以用来定制很多输出行为,实在是应该多加利用的好东东。

来至http://westlife063.blog.163.com/blog/static/129942096201042514651713/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐