Gridview标题左对齐,在IE9上不起作用,但它适用于chrome

Lui*_*cia 2 html css asp.net gridview

我有一个gridview,我想要对齐左边的标题.它适用于chrome,但在IE 9中它们没有对齐左边.

(我粘贴整个代码,以防一些包围的div负责此行为.)

截图

        <div style="height: 300px; overflow: auto">
            <asp:GridView ID="myGrid" 
                AutoGenerateColumns="true"
                runat="server" CellPadding="4" ForeColor="#333333" GridLines="None" Width="100%">
                <AlternatingRowStyle BackColor="White" ForeColor="#284775" />
                <EditRowStyle BackColor="#999999" />
                <FooterStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
                <HeaderStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" HorizontalAlign="Left" />
                <PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" />
                <RowStyle BackColor="#F7F6F3" ForeColor="#333333" HorizontalAlign="Left"/>
                <SelectedRowStyle BackColor="#E2DED6" Font-Bold="True" ForeColor="#333333" />
                <SortedAscendingCellStyle BackColor="#E9E7E2" />
                <So![enter image description here][1]rtedAscendingHeaderStyle BackColor="#506C8C" />
                <SortedDescendingCellStyle BackColor="#FFFDF8" />
                <SortedDescendingHeaderStyle BackColor="#6F8DAE" />
            </asp:GridView>
        </div>
        <div style="margin-top: 20px; margin-left: 550px">
            <asp:Button ID="btnClose" runat="server" Text="Close" />
        </div>
        <div>
            <asp:Label ID="lblError" runat="server" Text=""></asp:Label>
        </div>
    </div>
Run Code Online (Sandbox Code Playgroud)

Update1:​​CSS

#DeltaPlaceHolderMain #ctl00_PlaceHolderMain_myGrid tr:first-child{
    background-color:#eb8c00 !important;
    color:#FFF !important;
    }
#DeltaPlaceHolderMain #ctl00_PlaceHolderMain_myGrid tr:first-child td{
    text-align:left;
    }

#DeltaPlaceHolderMain #ctl00_PlaceHolderMain_myGrid tr{
    color:#404041 !important;
    }
Run Code Online (Sandbox Code Playgroud)

p e*_*e p 8

这有效.在你的HeaderStyle中添加一个'CssClass':

<HeaderStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" HorizontalAlign="Left" CssClass="headerClass" />
Run Code Online (Sandbox Code Playgroud)

然后声明以下样式:

/*Give a text-align left only to the gridview header th's*/
.headerClass > th 
{
    text-align:left;
}
Run Code Online (Sandbox Code Playgroud)

为了进一步解释,将会发生HeaderStyle.CssClass一个<tr>包含标题的类.然后,CSS选择器.headerClass > th将其样式应用于<th>标题的所有子项,因此将左侧文本对齐应用于每个标题单元格.