由于某些原因,当我在IE或Chrome中打开网格视图时,我的网格线无法显示。我已经将gridLines属性设置为Both。
<asp:GridView ID="GridView1" runat="server" OnSelectedIndexChanged="GridView1_SelectedIndexChanged" BorderColor="Black" AutoGenerateColumns="True" Height="350px" ShowFooter="True" AllowSorting="True" BackColor="Black" BorderStyle="Ridge" BorderWidth="2px" CellPadding="3" CellSpacing="3" GridLines ="Both">
<FooterStyle BackColor="#C6C3C6" ForeColor="Black" />
<HeaderStyle Font-Size="7pt" Width="400px" BackColor="#4A3C8C" Font-Bold="True" ForeColor="#E7E7FF" >
</HeaderStyle>
<PagerStyle BackColor="#C6C3C6" ForeColor="Black" HorizontalAlign="Right" />
<RowStyle BackColor="#DEDFDE" ForeColor="Black" />
<SelectedRowStyle BackColor="#9471DE" Font-Bold="True" ForeColor="White" />
<SortedAscendingCellStyle BackColor="#F1F1F1" />
<SortedAscendingHeaderStyle BackColor="#594B9C" />
<SortedDescendingCellStyle BackColor="#CAC9C9" />
<SortedDescendingHeaderStyle BackColor="#33276A" />
</asp:GridView>发布于 2014-06-18 03:58:47
设置GridLines将使用rules属性呈现表,这是一种旧的操作方式,不再受支持。现在,您希望使用css来设置样式。这相当于您的示例:
<style type="text/css">
.GridView1 { border-spacing: 3px; border-collapse: separate; }
.GridView1 > tbody > tr > th,
.GridView1 > tbody > tr > td { border: 2px ridge black; padding: 3px; }
</style>
<asp:GridView ID="GridView1" runat="server" OnSelectedIndexChanged="GridView1_SelectedIndexChanged" ShowFooter="True" AllowSorting="True" AutoGenerateColumns="True"
Height="350px" BackColor="Black"
CssClass="GridView1" GridLines="none" CellPadding="-1" CellSpacing="-1">
<FooterStyle BackColor="#C6C3C6" ForeColor="Black" />
<HeaderStyle Font-Size="7pt" Width="400px" BackColor="#4A3C8C" Font-Bold="True" ForeColor="#E7E7FF"></HeaderStyle>
<PagerStyle BackColor="#C6C3C6" ForeColor="Black" HorizontalAlign="Right" />
<RowStyle BackColor="#DEDFDE" ForeColor="Black" />
<SelectedRowStyle BackColor="#9471DE" Font-Bold="True" ForeColor="White" />
<SortedAscendingCellStyle BackColor="#F1F1F1" />
<SortedAscendingHeaderStyle BackColor="#594B9C" />
<SortedDescendingCellStyle BackColor="#CAC9C9" />
<SortedDescendingHeaderStyle BackColor="#33276A" />
</asp:GridView>GridLines="none"消除了rules属性。设置css border属性定义边框的外观。
将cellpadding和cellspacing设置为-1可消除旧式表属性。
填充是使用标准padding属性在th和td元素上定义的。
间距是通过表格上的组合border-spacing和border-collapse: separate属性完成的。这是一种不同寻常的顺便说一句-大多数人使用border-collapse: collapse,没有边界间距。
ridge边框样式似乎没有得到很好的支持。IE和FF做的是不同的。Chome只是把它画成实心的。
还可以通过为RowStyle之类的内容定义css类并设置适当的属性来将其他一些属性移动到样式表中。
发布于 2014-06-18 03:25:38
这很奇怪,但您可以尝试像这样为您的网格设置CssClass
说
CssClass="grid“
并向其添加样式
<style type="text/css">
table.grid{
border-collapse:collapse;
border:solid 2px black;
}
table.grid td, th{
border:solid 2px black;
}
</style>https://stackoverflow.com/questions/24271016
复制相似问题