a)據我所知,GridView’s RowStyle-HorizontalAlign
屬性應該覆蓋CSS的text-align
屬性,因此GridView單元格內的文本應該位於單元格的左側,而是移動到右側。這是爲什麼?不應該GridView的RowStyle-HorizontalAlign屬性覆蓋CSS的文本對齊屬性?
b)類似地,RowStyle-Font-Bold
應覆蓋CSS的font-weight
屬性,因此字體不應以粗體顯示。但是,CSS的財產再次覆蓋RowStyle’s Font-Bold
財產。爲什麼?
<div id="someClass">
<asp:GridView ID="gvwShowUsers" runat="server" >
<RowStyle BackColor="#FFFBD6" ForeColor="#333333" Font-Bold="false"
HorizontalAlign="Left" />
<Columns>
<asp:BoundField DataField="UserName" HeaderText="UserName" />
</Columns>
</asp:GridView>
</div>
CSS文件:
#someClass td
{
font-weight:bolder;
text-align:right;
}
感謝名單
編輯:
一種解決方法是將樣式應用到各個領域,而不是(如ItemStyle -HorizontalAlign)
我申請ItemStyle
到GridView’s
領域的嘗試:
<div id="someClass">
<asp:GridView ID="gvwShowUsers" runat="server" >
<RowStyle Font-Bold="false" HorizontalAlign="Left" />
<Columns>
<asp:BoundField DataField="UserName" HeaderText="UserName">
<ItemStyle HorizontalAlign="Left" Font-Bold="false" />
</asp:BoundField>
</Columns>
</asp:GridView>
</div>
但由於即使在應用ItemStyle
後的頁面仍然顯示在單元格的右側的文字,我已經決定要檢查源代碼的HTML頁面發送給用戶,並且事實證明這兩個<tr>
和<td>
元素都有Align
屬性設置爲left
,所以......完全混淆!
這裏是一個HTML頁面的源代碼:
<table id="GridView1" style="font-weight:normal;">
<tr align="center" style=" font-weight:bold;">
<th scope="col">UserName</th>
</tr>
<tr align="right" valign="bottom" style="font-weight:normal;">
<td align="right" style="font-weight:normal;"> Nancy</td>
</tr>
</table>
這適用於我 - 創建一個風格,例如td.left {text-align:left;}並在綁定字段的itemstyle中引用它,例如 –
Vas