我正在开发一个相当大的aspx web项目,广泛使用asp:GridViews
我想默认使用CSS在一个地方定义所有网格视图的外观.
据我了解,这样做的一种方法是通过Visual Studio中的“Skins”….但我记得有一段时间做了一些研究,发现很多人鄙视皮肤并且总是在asp.net中使用普通的CSS项目(虽然我不能完全记住他们的坏事).
所以我的问题是:
1)是否可以使用纯CSS执行此全局默认asp:GridView样式
2)使用VS Skins是否有任何优势,或者只是简单的CSS与使用皮肤一样强大且易于维护?
更新:我还要提到GridView有很多独特的样式,比如SelectedRowStyle-BackColor;这对我原来的问题有什么影响吗?如果有人可以发布或链接到任何这样的例子,这将是非常有帮助的.
解决方法
定义样式表并在某处设置这些样式:
/** * GRIDVIEW STYLES **/ .gridview { font-family:"arial"; background-color:#FFFFFF; width: 100%; font-size: small; } .gridview th { background: #7AC142; padding: 5px; font-size:small; } .gridview th a{ color: #003300; text-decoration: none; } .gridview th a:hover{ color: #003300; text-decoration: underline; } .gridview td { background: #D9EDC9; color: #333333; font: small "arial"; padding: 4px; } .gridview tr.even td { background: #FFFFFF; } .gridview td a{ color: #003300; font: bold small "arial"; padding: 2px; text-decoration: none; } .gridview td a:hover { color: red; font-weight: bold; text-decoration:underline; }
然后需要设置gridview以利用CssClass和AlternatingRowStyle-CssClass来利用这些:
<asp:GridView ID="GridView1" runat="server" CssClass="gridview" AlternatingRowStyle-CssClass="even">