为什么html标签中的类样式属性是用Class,而Asp.Net元素的类样式就使用CssClass属性呢?经过在网上搜索和对Asp.Net服务器控件的CssClass属性解释的查看,我得到了答案。我将它们的区别记录如下:
首先,我在Asp.Net页面上定义一个简单的CSS类样式。
1 <style type="text/css">
2 .txt
3 {
4 200px;
5 height: 30px;
6 border-color: #6BDEFC;
7 }
8 </style>
其次,我在页面上添加两个文本框,一个是html标签形式的,一个是Asp.Net控件形式的。
1 <form id="form1" runat="server">
2 <div>
3 <input type="text" id="txtHtml" class="txt" value="我是Html标签中的文本框" />
4 <br />
5 <br />
6 <asp:TextBox ID="txtServerControl" runat="server" CssClass="txt" Text="我是Server控件的文本框"></asp:TextBox>
7 </div>
8 </form>
它们的区别是应用CSS样式的时候的属性不同,html标签的文本框是用Class属性,而Asp.Net控件的文本框是用CssClass属性。它们的效果是一样的,如下图所示:
它们的区别是:html标签中是没有CssClass这个属性的而Asp.Net中的一些Asp.Net控件签封装了html的一些属性,为了更好的区别一些相同名字的属性,Asp.Net标签将html标签的class属性改名为CssClass所以本质是一样,只不过名字不一样而已。
以下是Asp.Net对CssClass属性的解释:
1 // 摘要:
2 // 获取或设置由 Web 服务器控件在客户端呈现的级联样式表 (CSS) 类。
3 //
4 // 返回结果:
5 // 由 Web 服务器控件在客户端呈现的 CSS 类。默认值为 System.String.Empty。
6 [WebCategory("Appearance")]
7 [DefaultValue("")]
8 [WebSysDescription("WebControl_CSSClassName")]
9 [CssClassProperty]
10 public virtual string CssClass { get; set; }
奔跑!狮子赶不上最慢的羚羊就会饿死;羚羊跑不过最快的狮子就会被吃掉!