刚刚接触asp。net不久,在没有引入样式表的情况下,怎么会出现样式表的效果那,在网上查了一下,原来是App_Themes的使用。
1、创建的方式如下:
项目->右键->添加->添加asp.net文件夹->主题
2、使用Thems和SKins方法如下:
App_Themes\SPFThems\SPF.skin
<asp:Label Font-Bold="true" ForeColor="Red" runat="server" />
default.aspx:文件代码:
<%@ Page Language="C#" Theme="SPFThems" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title>Page with Example Theme Applied</title>
</head>
<body>
<form id="form1" runat="server">
<asp:Label ID="Label1" runat="server" Text="Hello 1" /><br />
<asp:Label ID="Label2" runat="server" Text="Hello 2" /><br />
</form>
</body>
</html>
可以看到我们在default.aspx并没有写如何的控制style的代码,但运行取发现label上的字都变成了粗体红色了,这就是1个最基本的theme例子。
3、在所有的页面中应用的方法如下:
如果要在所有页面上使用相同的Theme,在web.config中的<system.web>节点下加上句<pages theme="..."/>
注意:如果你的thems中包含了一些css,他们也会被自动引入到你的页面中,这也就是为什么我的页面在没有引入css的情况下,却包含的多个样式表的原因所在。
样式表的优先级顺序是:
a、StyleSheetTheme引用的风格
b、代码设定的控件属性(覆盖StyleSheetTheme)
c、Theme引用的风格(覆盖前面2个)