Asp:菜单在ie6中不能正常工作.但在IE 7及以上运行良好
本文关键字:IE 但在 运行 工作 ie6 菜单 不能 常工作 Asp | 更新日期: 2023-09-27 18:10:56
下面我的菜单控件代码在我的aspx页面
<table width="100%" cellpadding="0" cellspacing="0" style="background-color: Black; height: 30px; ">
<tr style="background-color: Black; height: 30px;">
<td style="background-color: Black; width: 100%; height: 30px;">
<div style="height:30px">
<asp:Menu ID="NavigationMenu" runat="server" EnableViewState="false" RenderingMode="Default" CssClass="menu" ForeColor="White"
IncludeStyleBlock="false" Orientation="Horizontal" Height="30px" OnMenuItemClick="NavigationMenu_MenuItemClick" >
<StaticMenuItemStyle CssClass="menuitem" />
<DynamicMenuItemStyle CssClass="menuitem" />
<Items>
<asp:MenuItem NavigateUrl="~/Home.aspx" Text="Home" ToolTip="Home page" />
<asp:MenuItem NavigateUrl="~/CommonUser.aspx" Text="Create / Edit User Access" ToolTip="Provide access to users" />
<asp:MenuItem NavigateUrl="~/BulkUpload.aspx" Text="Bulk Upload" ToolTip="To bulk upload users " />
<asp:MenuItem NavigateUrl="~/SearchUser.aspx" Text="View / Revoke User Access" ToolTip="View existing users access" />
<asp:MenuItem Text="Admin" NavigateUrl="javascript:void(0);">
<asp:MenuItem NavigateUrl="javascript:void(0);" Text="User" ToolTip="Create / Edit User for the application">
<asp:MenuItem Text="Create User" NavigateUrl="~/AdminUser.aspx" />
<asp:MenuItem Text="Edit User" NavigateUrl="~/EditAdminUser.aspx" />
</asp:MenuItem>
<asp:MenuItem Text="Template" NavigateUrl="javascript:void(0);">
<asp:MenuItem Text="Create Template" />
<asp:MenuItem Text="Edit Template" />
</asp:MenuItem>
<asp:MenuItem NavigateUrl="javascript:void(0);" Text="Server" ToolTip="Add / Edit server Details">
<asp:MenuItem Text="Add Server" NavigateUrl="~/AddServers.aspx" />
<asp:MenuItem Text="Edit Server" NavigateUrl="~/EditServer.aspx" />
</asp:MenuItem>
<asp:MenuItem NavigateUrl="~/CreateConString.aspx" Text="Environment Password" ToolTip="Change password for connection string" />
</asp:MenuItem>
</Items>
</asp:Menu>
</div>
</td>
</tr>
</table>
我有两个问题
- 我无法选择子菜单。他们被显示,但不能选择它。一旦我把鼠标移到子菜单上,子菜单就消失了
- 菜单移动到屏幕的左边最大化窗口。当鼠标在事件上时,菜单正确对齐
下面是如果在IE视图中查看它的代码
<table width="100%" cellpadding="0" cellspacing="0" style="background-color: Black; height: 30px; ">
<tr style="background-color: Black; height: 30px;">
<td style="background-color: Black; width: 100%; height: 30px;">
<div style="height:30px">
<a href="#NavigationMenu_SkipLink"><img alt="Skip Navigation Links" src="/FacetsUserSetupApp/WebResource.axd?d=E02KDPXufVQc2nUrHjGfkA2&t=634836496018543211" width="0" height="0" style="border-width:0px;" /></a><div class="menu" id="NavigationMenu">
<ul class="level1">
<li><a title="Home page" class="level1 menuitem" href="Home.aspx">Home</a></li><li><a title="Provide access to users" class="level1 menuitem" href="CommonUser.aspx">Create / Edit User Access</a></li><li><a title="To bulk upload users " class="level1 menuitem" href="BulkUpload.aspx">Bulk Upload</a></li><li><a title="View existing users access" class="level1 menuitem" href="SearchUser.aspx">View / Revoke User Access</a></li><li><a class="popout level1 menuitem" href="javascript:void(0);">Admin</a><ul class="level2">
<li><a title="Create / Edit User for the application" class="popout level2 menuitem" href="javascript:void(0);">User</a><ul class="level3">
<li><a class="level3 menuitem" href="AdminUser.aspx">Create User</a></li><li><a class="level3 menuitem" href="EditAdminUser.aspx">Edit User</a></li>
</ul></li><li><a class="popout level2 menuitem" href="javascript:void(0);">Template</a><ul class="level3">
<li><a class="level3 menuitem" href="#" onclick="__doPostBack('ctl00$NavigationMenu','Admin''Template''Create Template')">Create Template</a></li><li><a class="level3 menuitem" href="#" onclick="__doPostBack('ctl00$NavigationMenu','Admin''Template''Edit Template')">Edit Template</a></li>
</ul></li><li><a title="Add / Edit server Details" class="popout level2 menuitem" href="javascript:void(0);">Server</a><ul class="level3">
<li><a class="level3 menuitem" href="AddServers.aspx">Add Server</a></li><li><a class="level3 menuitem" href="EditServer.aspx">Edit Server</a></li>
</ul></li><li><a title="Change password for connection string" class="level2 menuitem" href="CreateConString.aspx">Environment Password</a></li>
</ul></li>
</ul>
</div><a id="NavigationMenu_SkipLink"></a>
</div>
</td>
</tr>
</table>
我不确定如何使用renderingcompatibility属性的控件。请帮助我声明相同的菜单控件
每一个版本的ASP。. NET时,控件可能输出不同的HTML。通常,这不是一个太大的问题,并且所有ASP。. NET版本似乎可以与IE6一起工作。IE6是当时占主导地位的浏览器。. NET 1和1.1发布了,甚至可能在ASP。. NET 2发布
但是现在,有了ASP。. NET 4中,微软对HTML进行了现代化改造,使其更符合当前的标准(更少的表格,更多的div、ul、li等)。这是有道理的,因为现在所有流行的浏览器都支持这些标签来实现漂亮的布局。即使是ie浏览器,也已经脱离了IE6。
如果你的网站仍然需要支持IE6,但你需要或想要使用ASP,这会造成向后兼容性问题。NET 4特性(就像公司内部网上的许多特性一样)。所以微软为你的web引入了ControlRenderingCompatibilityVersion属性。
我想说试一试。将菜单的RenderingCompatibility
属性设置为3.5版本,看看有什么不同。
然而,有一种情况是要放弃对IE6的支持。即使您的客户目前仍在使用IE6,它能持续多久?考虑到安全性、速度、支持和其他方面的影响,有令人信服的理由升级浏览器。