0

我的 IE 有问题。该页面在所有浏览器中都可以正常工作,如下所示。

在此处输入图像描述

但在 IE 中,即使它在那里,数据也不会显示出来。

在此处输入图像描述

问题是由我在 ListView 的项目模板上使用的溢出:隐藏属性引起的。当我将其更改为任何其他值时,数据会显示在 IE 中,但当然布局在所有浏览器中都会变得混乱。

这是源代码和 CSS http://jsfiddle.net/V5aCa/8/

这是我的代码:

<asp:ListView ID="BookListView" runat="server" DataSourceID="SqlDataSource1" 
    onselectedindexchanged="BookListView_SelectedIndexChanged">
    <LayoutTemplate>
        <table runat="server" cellpadding="1" id="tblBooks" style="">
          <tr runat="server">
              <td runat="server">
                  <table ID="itemPlaceholderContainer" runat="server" border="0" style="">
                      <tr ID="itemPlaceholder" runat="server">
                      </tr>
                  </table>
              </td>
          </tr>
        </table>
    </LayoutTemplate>

    <ItemTemplate>
         <div style="overflow:hidden">
            <div class="itemTemplateleftColumn">
                <asp:Image ID="Image1" runat="server" ImageUrl='<%# String.Format("~\\Static\\Images\\BookCovers\\{0}", Eval("CoverImageSmall")) %>' Height="120px" Width="90px" BorderColor="Gray" BorderWidth="1px"/>
            </div>
            <div class="itemTemplaterightColumn">
                <div class="titleRow">
                    <asp:Label runat="server" ID="BookTitleLabel" Text='<%# Eval("Title") %>' />
                </div>
                <div class="nameRow">
                    <asp:Label runat="server" ID="FirstNameLabel" Text='<%# Eval("FirstName") %>' />
                    <asp:Label runat="server" ID="LastNameLabel" Text='<%# Eval("LastName") %>' />
                </div>
                <div class="values">
                     <div>
                        value1
                     </div>
                     <div>
                        value2
                     </div>
                </div>    
                <div class="values">
                    <div>
                        value3
                    </div>
                    <div>
                        <asp:Label runat="server" ID="PriceLabel" Text='<%# Eval("Price") %>' />&#8364
                    </div>
                </div>    
            </div>
        </div>
    </ItemTemplate>

</asp:ListView>

</asp:Content>

对于解决此问题,我将不胜感激。提前致谢。

4

2 回答 2

0

[更新] 首先,应用 css 类或 id 以避免内联样式。

然后,尝试编写overflow:hidden !important以防止 IE 应用该规则,这应该可以解决问题!

.your-div-class{
  overflow:visible; /* This is default value, but reset it anyway */
  overflow:hidden !important;
}
于 2013-02-19T13:38:58.603 回答
0

在 Gridview 中为该 div 应用最小高度和宽度,然后应用溢出 min-height: 110px;min-width: 150px;

试试这个希望它会有所帮助!

于 2013-02-19T13:43:55.890 回答