static public class AddStyle{
static public void AddStyleSheet(Page page, string cssPath)
{
HtmlLink link = new HtmlLink()
link.Href = cssPath
link.Attributes["rel"] = "stylesheet"
link.Attributes["type"] = "text/css"
page.Header.Controls.Add(link)
}
}
然后在页面中调用该类的静态方法:
在page_load方法中:
protected void Page_Load(object sender, EventArgs e)
{
AddStyle.AddStyleSheet(this.Page, "css/test.css")
//CSS文件放在这里.
}
1、用ASP生成CSS可以实现一些动态效果,甚至可以实现每次打开页面都是不同的CSS(如果用静态CSS就要准备无数个CSS文件再结合js代码才能实现了);2、用ASP动态生成CSS的话,就可以把CSS代码放入数据库中,服务器空间就不放任何CSS文件了,整个系统就显得非常整洁、紧凑了。这点适合一些有特殊洁癖的程序员。难道我会告诉你有人把所有网站文件(asp、htm、js、css、图片、动画等)都放到数据库中,外面只留一个index.asp进行调用就构成一个网站吗?而且规模还不小!
3、貌似你说的这种网站并不多吧?毕竟这种做法违背了代码与样式分离的设计原则。
这个不是说asp中如何设置,而是看你要对某个div层进行什么样式设置,就是纯粹的css样式写法而已,然后通过css外部引入<link href="other.css" rel="stylesheet" type="text/css" />
例如,下面我要写个面包屑,对外框div层写入总体样式,12号字体,#333的颜色,行高24px当前页的样式cur颜色为蓝色等等,
about.asp
<div class="crumbs">
<a href="/">Home</a>>
<h1 class="cur">About</h1>
</div>
other.css写入
.crumbs{ height:24pxline-height:24pxcolor:#333font-size:12px}
.crumbs h1.cur{ color:blue}