Trang web tôi đang thực hiện đang sử dụng điều khiển Menu theo trình đơn. Khi gửi 1 mục trình đơn, nó sẽ hiển thị HTML hoàn toàn chính xác trong Firefox (và IE), nhưng thực sự làm sai lệch mã trong Safari và Chrome. Dưới đây là mã được gửi tới từng trình duyệt. Tôi đã thử nghiệm nó một vài trình duyệt và tất cả chúng đều được hiển thị khá giống nhau, vì vậy tôi chỉ đăng hai biến thể trên nguồn hiển thị.Điều khiển menu asp.net không được chỉnh sửa chính xác trong safari
Câu hỏi của tôi là: Làm cách nào để có ASP.NET gửi cùng một tệp html và javascript tới Chrome và Safari giống như Firefox và IE?
<!-- This is how the menu control is defined -->
<asp:Menu ID="menu" runat="server" BackColor="#cccccc"
DynamicHorizontalOffset="2" Font-Names="Verdana" StaticSubMenuIndent="10px" StaticDisplayLevels="1"
CssClass="left_menuTxt1" Font-Bold="true" ForeColor="#0066CC">
<DataBindings>
<asp:MenuItemBinding DataMember="MenuItem" NavigateUrlField="NavigateUrl" TextField="Text"
ToolTipField="ToolTip" />
</DataBindings>
<StaticSelectedStyle BackColor="#0066CC" HorizontalPadding="5px" VerticalPadding="2px"
Font-Names="Verdama" CssClass="left_menuTxt1" Font-Bold="true" />
<StaticMenuItemStyle HorizontalPadding="5px" VerticalPadding="8px" />
<DynamicMenuStyle BackColor="#fbfbfb" BorderColor="#989595" BorderStyle="Inset" BorderWidth="1"
Width="80px" VerticalPadding="1" />
<DynamicMenuItemStyle HorizontalPadding="5px" VerticalPadding="2px" Font-Name="Verdama"
ForeColor="#c6c4c4" CssClass="left_menuTxt1" Font-Bold="true" />
<DynamicSelectedStyle BackColor="#cccccc" HorizontalPadding="5px" VerticalPadding="2px"
Font-Names="Verdama" CssClass="left_menuTxt1" Font-Bold="true" />
</asp:Menu>
<!-- From Safari View Page Source (Chrome source very similar) -->
<span title="Order" class="ctl00_leftNav_menu_4">
<a class="ctl00_leftNav_menu_1 ctl00_leftNav_menu_3"
href="javascript:__doPostBack('ctl00$leftNav$menu','oMy Order')">
My Order
<img src="/WWW/WebResource.axd?d=glUTEfEv7p9OrdeaMxkMzhqz2JugrMr8aE43O2XGHAA1&t=633590571537099818"
alt="Expand My Order"
align="absmiddle"
style="border-width:0px;" /></a></span><br />
<!-- From Firefox View Page Source (IE View page similar) -->
<table>
<tr onmouseover="Menu_HoverStatic(this)"
onmouseout="Menu_Unhover(this)"
onkeyup="Menu_Key(event)"
title="Order"
id="ctl00_leftNav_menun0">
<td>
<table class="ctl00_leftNav_menu_4" cellpadding="0" cellspacing="0" border="0" width="100%">
<tr>
<td style="white-space:nowrap;width:100%;">
<a class="ctl00_leftNav_menu_1 ctl00_leftNav_menu_3"
href="../Order/OrderList.aspx">
My Order
</a>
</td>
<td style="width:0;">
<img src="/WWW/WebResource.axd?d=glUTEfEv7p9OrdeaMxkMzhqz2JugrMr8aE43O2XGHAA1&t=633590571537099818"
alt="Expand My Order" style="border-style:none;vertical-align:middle;" />
</td>
</tr>
</table>
</td>
</tr>
</table>
Cập nhật: giải pháp bài của tôi là đúng .. nhưng tôi không thể đánh dấu riêng của tôi như là đúng ... vì vậy nếu có ai muốn sao chép nó để tôi có thể đóng này. :)
Mã của tôi trong nhận xét của tôi hoạt động và là giải pháp .. nhưng tôi không thể đánh dấu của chính mình là chính xác ... vì vậy nếu có ai muốn sao chép nó để tôi có thể đóng. :) – stephenbayer
Tôi thích giải pháp này là tốt nhất. Bạn cũng nên lưu ý các vấn đề trong IE8, các giải pháp có thể được tìm thấy tại đây: http://weblogs.asp.net/mhildreth/archive/2009/01/26/testing.aspx (giải pháp CSS) http: // weblogs.asp.net/bleroy/archive/2009/03/23/asp-menu-fix-for-ie8-problem-available.aspx (Patch) –
Vấn đề tương tự cũng tồn tại trong Chrome, và đoán xem, giải pháp tương tự sẽ áp dụng như thế nào !! Thanh danh! +1 –