列表视图模板不适用于 Firefox
Listview template doesn't work on Firefox
我用 Listview 制作了一个网络表单页面。它在 Chrome 中工作正常,但在 Firefox 中不工作。我确定这不是 CSS 的错。
知道为什么会这样吗?
我的索引页代码:
<asp:ListView ID="ListView1" runat="server" DataSourceID="SqlDataSource1" GroupItemCount="2" DataKeyNames="ID" OnItemDataBound="ListView1_ItemDataBound">
<AlternatingItemTemplate>
<td runat="server" style="background-color: rgba(255, 255, 255, 0.75); width: 405px; height: 200px; text-align: left; vertical-align: top; padding: 10px 10px; display: inline-block; margin: 5px 0px 5px 5px;">
<asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%# Eval("ID", "~/news.aspx?id={0}") %>' Text='<%# Eval("tytul", "{0}") %>'></asp:HyperLink>
<br />
<asp:Label ID="dataLabel" runat="server" Text='<%# Eval("data") %>' />
<br />
<br />
<asp:Image ID="Image3" runat="server" ImageUrl='<%# Eval("image", "{0}") %>' Height="100px" Width="100px" Visible='<%# Eval("image")!=DBNull.Value %>' style="float:left; margin-left:0px; margin-right: 5px;"/>
<asp:Label ID="trescLabel" runat="server" Text='<%# Eval("tresc") %>' CssClass="contenttext"/>
<br />
</td>
</AlternatingItemTemplate>
<EditItemTemplate>
<td runat="server" style="">ID:
<asp:Label ID="IDLabel1" runat="server" Text='<%# Eval("ID") %>' />
<br />
tytul:
<asp:TextBox ID="tytulTextBox" runat="server" Text='<%# Bind("tytul") %>' />
<br />tresc:
<asp:TextBox ID="trescTextBox" runat="server" Text='<%# Bind("tresc") %>' />
<br />data:
<asp:TextBox ID="dataTextBox" runat="server" Text='<%# Bind("data") %>' />
<br />image:
<asp:TextBox ID="imageTextBox" runat="server" Text='<%# Bind("image") %>' />
<br />
<asp:Button ID="UpdateButton" runat="server" CommandName="Update" Text="Update" />
<br />
<asp:Button ID="CancelButton" runat="server" CommandName="Cancel" Text="Cancel" />
<br /></td>
</EditItemTemplate>
<EmptyDataTemplate>
<table runat="server" style="">
<tr>
<td>No data was returned.</td>
</tr>
</table>
</EmptyDataTemplate>
<EmptyItemTemplate>
<td runat="server" />
</EmptyItemTemplate>
<GroupTemplate>
<tr id="itemPlaceholderContainer" runat="server">
<td id="itemPlaceholder" runat="server"></td>
</tr>
</GroupTemplate>
<InsertItemTemplate>
<td runat="server" style="">tytul:
<asp:TextBox ID="tytulTextBox" runat="server" Text='<%# Bind("tytul") %>' />
<br />tresc:
<asp:TextBox ID="trescTextBox" runat="server" Text='<%# Bind("tresc") %>' />
<br />data:
<asp:TextBox ID="dataTextBox" runat="server" Text='<%# Bind("data") %>' />
<br />image:
<asp:TextBox ID="imageTextBox" runat="server" Text='<%# Bind("image") %>' />
<br />
<asp:Button ID="InsertButton" runat="server" CommandName="Insert" Text="Insert" />
<br />
<asp:Button ID="CancelButton" runat="server" CommandName="Cancel" Text="Clear" />
<br /></td>
</InsertItemTemplate>
<ItemTemplate>
<td runat="server" style="background-color: rgba(255, 255, 255, 0.75); width: 405px; height: 200px; text-align: left; vertical-align: top; padding: 10px 10px; display: inline-block; margin: 5px 5px 5px 5px;">
<asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%# Eval("ID", "~/news.aspx?id={0}") %>' Text='<%# Eval("tytul", "{0}") %>'></asp:HyperLink>
<br />
<asp:Label ID="dataLabel" runat="server" Text='<%# Eval("data") %>'></asp:Label>
<br />
<br />
<asp:Image ID="Image3" runat="server" ImageUrl='<%# Eval("image", "{0}") %>' Width="100px" Height="100px" Visible='<%# Eval("image")!=DBNull.Value %>' style="float:left; margin-left:0px; margin-right: 5px;"/>
<asp:Label ID="trescLabel" runat="server" Text='<%# Eval("tresc") %>' CssClass="contenttext" />
</td>
</ItemTemplate>
<LayoutTemplate>
<table runat="server">
<tr runat="server">
<td runat="server">
<table id="groupPlaceholderContainer" runat="server" border="0" style="">
<tr id="groupPlaceholder" runat="server">
</tr>
</table>
</td>
</tr>
<tr runat="server">
<td runat="server" style="background-color: rgba(255, 255, 255, 0.75); width: 860px; height: 25px; display: block; margin: 0px 8px 0px 8px; text-align: center; padding-top: 10px;">
<asp:DataPager ID="DataPager1" runat="server" PageSize="4">
<Fields>
<asp:NumericPagerField />
</Fields>
</asp:DataPager>
</td>
</tr>
</table>
</LayoutTemplate>
<SelectedItemTemplate>
<td runat="server" style="">ID:
<asp:Label ID="IDLabel" runat="server" Text='<%# Eval("ID") %>' />
<br />tytul:
<asp:Label ID="tytulLabel" runat="server" Text='<%# Eval("tytul") %>' />
<br />tresc:
<asp:Label ID="trescLabel" runat="server" Text='<%# Eval("tresc") %>' />
<br />data:
<asp:Label ID="dataLabel" runat="server" Text='<%# Eval("data") %>' />
<br />image:
<asp:Label ID="imageLabel" runat="server" Text='<%# Eval("image") %>' />
<br />
</td>
</SelectedItemTemplate>
</asp:ListView>
在Chrome中查看(正确):
在 Firefox 中查看:
Asp.Net 服务器呈现并因此发送到任何浏览器的最终 HTML 将是相同的。
这里 layout/display 的不同可能是因为不同的浏览器解释相同 HTML 的方式不同。
在您的 <LayoutTemplate>
中使用 Table,Firefox 会出现一些奇怪的行为,尤其是 Padding。
检查此 post:Table Differences: Chrome vs Firefox
最后一点,避免使用表格进行布局。除了降低可访问性和许多其他因素之外,它们不再适用于 SEO 目的。检查这个 Link
.
我用 Listview 制作了一个网络表单页面。它在 Chrome 中工作正常,但在 Firefox 中不工作。我确定这不是 CSS 的错。 知道为什么会这样吗?
我的索引页代码:
<asp:ListView ID="ListView1" runat="server" DataSourceID="SqlDataSource1" GroupItemCount="2" DataKeyNames="ID" OnItemDataBound="ListView1_ItemDataBound">
<AlternatingItemTemplate>
<td runat="server" style="background-color: rgba(255, 255, 255, 0.75); width: 405px; height: 200px; text-align: left; vertical-align: top; padding: 10px 10px; display: inline-block; margin: 5px 0px 5px 5px;">
<asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%# Eval("ID", "~/news.aspx?id={0}") %>' Text='<%# Eval("tytul", "{0}") %>'></asp:HyperLink>
<br />
<asp:Label ID="dataLabel" runat="server" Text='<%# Eval("data") %>' />
<br />
<br />
<asp:Image ID="Image3" runat="server" ImageUrl='<%# Eval("image", "{0}") %>' Height="100px" Width="100px" Visible='<%# Eval("image")!=DBNull.Value %>' style="float:left; margin-left:0px; margin-right: 5px;"/>
<asp:Label ID="trescLabel" runat="server" Text='<%# Eval("tresc") %>' CssClass="contenttext"/>
<br />
</td>
</AlternatingItemTemplate>
<EditItemTemplate>
<td runat="server" style="">ID:
<asp:Label ID="IDLabel1" runat="server" Text='<%# Eval("ID") %>' />
<br />
tytul:
<asp:TextBox ID="tytulTextBox" runat="server" Text='<%# Bind("tytul") %>' />
<br />tresc:
<asp:TextBox ID="trescTextBox" runat="server" Text='<%# Bind("tresc") %>' />
<br />data:
<asp:TextBox ID="dataTextBox" runat="server" Text='<%# Bind("data") %>' />
<br />image:
<asp:TextBox ID="imageTextBox" runat="server" Text='<%# Bind("image") %>' />
<br />
<asp:Button ID="UpdateButton" runat="server" CommandName="Update" Text="Update" />
<br />
<asp:Button ID="CancelButton" runat="server" CommandName="Cancel" Text="Cancel" />
<br /></td>
</EditItemTemplate>
<EmptyDataTemplate>
<table runat="server" style="">
<tr>
<td>No data was returned.</td>
</tr>
</table>
</EmptyDataTemplate>
<EmptyItemTemplate>
<td runat="server" />
</EmptyItemTemplate>
<GroupTemplate>
<tr id="itemPlaceholderContainer" runat="server">
<td id="itemPlaceholder" runat="server"></td>
</tr>
</GroupTemplate>
<InsertItemTemplate>
<td runat="server" style="">tytul:
<asp:TextBox ID="tytulTextBox" runat="server" Text='<%# Bind("tytul") %>' />
<br />tresc:
<asp:TextBox ID="trescTextBox" runat="server" Text='<%# Bind("tresc") %>' />
<br />data:
<asp:TextBox ID="dataTextBox" runat="server" Text='<%# Bind("data") %>' />
<br />image:
<asp:TextBox ID="imageTextBox" runat="server" Text='<%# Bind("image") %>' />
<br />
<asp:Button ID="InsertButton" runat="server" CommandName="Insert" Text="Insert" />
<br />
<asp:Button ID="CancelButton" runat="server" CommandName="Cancel" Text="Clear" />
<br /></td>
</InsertItemTemplate>
<ItemTemplate>
<td runat="server" style="background-color: rgba(255, 255, 255, 0.75); width: 405px; height: 200px; text-align: left; vertical-align: top; padding: 10px 10px; display: inline-block; margin: 5px 5px 5px 5px;">
<asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%# Eval("ID", "~/news.aspx?id={0}") %>' Text='<%# Eval("tytul", "{0}") %>'></asp:HyperLink>
<br />
<asp:Label ID="dataLabel" runat="server" Text='<%# Eval("data") %>'></asp:Label>
<br />
<br />
<asp:Image ID="Image3" runat="server" ImageUrl='<%# Eval("image", "{0}") %>' Width="100px" Height="100px" Visible='<%# Eval("image")!=DBNull.Value %>' style="float:left; margin-left:0px; margin-right: 5px;"/>
<asp:Label ID="trescLabel" runat="server" Text='<%# Eval("tresc") %>' CssClass="contenttext" />
</td>
</ItemTemplate>
<LayoutTemplate>
<table runat="server">
<tr runat="server">
<td runat="server">
<table id="groupPlaceholderContainer" runat="server" border="0" style="">
<tr id="groupPlaceholder" runat="server">
</tr>
</table>
</td>
</tr>
<tr runat="server">
<td runat="server" style="background-color: rgba(255, 255, 255, 0.75); width: 860px; height: 25px; display: block; margin: 0px 8px 0px 8px; text-align: center; padding-top: 10px;">
<asp:DataPager ID="DataPager1" runat="server" PageSize="4">
<Fields>
<asp:NumericPagerField />
</Fields>
</asp:DataPager>
</td>
</tr>
</table>
</LayoutTemplate>
<SelectedItemTemplate>
<td runat="server" style="">ID:
<asp:Label ID="IDLabel" runat="server" Text='<%# Eval("ID") %>' />
<br />tytul:
<asp:Label ID="tytulLabel" runat="server" Text='<%# Eval("tytul") %>' />
<br />tresc:
<asp:Label ID="trescLabel" runat="server" Text='<%# Eval("tresc") %>' />
<br />data:
<asp:Label ID="dataLabel" runat="server" Text='<%# Eval("data") %>' />
<br />image:
<asp:Label ID="imageLabel" runat="server" Text='<%# Eval("image") %>' />
<br />
</td>
</SelectedItemTemplate>
</asp:ListView>
在Chrome中查看(正确):
在 Firefox 中查看:
Asp.Net 服务器呈现并因此发送到任何浏览器的最终 HTML 将是相同的。
这里 layout/display 的不同可能是因为不同的浏览器解释相同 HTML 的方式不同。
在您的 <LayoutTemplate>
中使用 Table,Firefox 会出现一些奇怪的行为,尤其是 Padding。
检查此 post:Table Differences: Chrome vs Firefox
最后一点,避免使用表格进行布局。除了降低可访问性和许多其他因素之外,它们不再适用于 SEO 目的。检查这个 Link
.