asp.net – 如何摆脱丑陋的asp:菜单闪烁?
|
我在ASP.NET 4.0 Webforms页面上使用asp:菜单控件,无需桌面渲染模式: <asp:Menu ID="MenuBase" runat="server" DataSourceID="SiteMapDataSourceMenu"
Orientation="Horizontal" CssClass="contentmenu" RenderingMode="List"
IncludeStyleBlock="false">
</asp:Menu>
该菜单有一个水平主排,有5或6个菜单项,当用户悬停在菜单上时,其中一些打开垂直弹出菜单。 通常当任何回发发生并且页面再次呈现时,菜单“闪烁”一会儿(例如半秒),这意味着:所有菜单项 – 包括弹出菜单中的项目 – 一个或多个行后显示在他们恢复到正常的预期状态之前,彼此之间。 在所有菜单项的“展开”显示的这个短暂的时刻,菜单看起来像是在浏览器中禁用Javascript。 (似乎构建弹出式菜单是通过在asp:菜单控件中使用一些Javascript实现的。) 这个行为是非常丑陋的,特别是使用一个大菜单(渲染时间超过2或3行),整个页面的内容在跳转到正常显示之前被向下移动。 你知道这个问题的任何解决方案吗? 先谢谢你! (注意:我应该提到,在升级到ASP.NET 4.0之前,我使用了来自CodePlex的着名的CSS友好的菜单控件,我认为我不需要CSS友好的控件,因为asp:菜单在版本4提供了一个内置的列表渲染模式,据我所知,我没有这个闪烁的CSS友好的控件,我认为这个控件没有使用Javascript,也许这是一个坏的一步,我是现在寻找一个解决方案,而不用回到CSS友好的菜单控制,如果可能的话) 编辑: 这个闪烁与浏览器无关,尽管在IE 8和7中最为引人注目。在IE 7(或IE 8中的兼容模式)下,由于菜单项以5或6行为单位显示在疯狂的对角线图形中,这是非常难看的。 解决方法如果有人仍然需要一个解决方案;闪烁在那里,因为您应该在css中为菜单设置正确的显示风格。尝试举个例子 #menu ul li ul
{
display: none;
}
和 #menu ul li
{
position: relative;
float: left;
list-style: none;
}
闪烁是因为ASP.NET 4菜单使用javascript来设置一些内联样式。 (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net – 在将其上传到服务器之前,在客户端进行跨浏览器检
- asp-classic – 经典asp中的串联字符串
- asp.net-mvc – ASP.Net 5中缺少FormCollections
- asp.net – 什么是.MSPX文件扩展名?
- asp.net-mvc – Asp.Net MVC 2 – 更改PropertyValueRequir
- asp.net-mvc – ASP.NET MVC Action被调用两次
- asp.net – 网络应用程序项目v.s.网站项目
- asp.net-mvc – 如何GetBytes()在C#与UTF8编码与BOM?
- asp-classic – 如何使用AES在VBScript中进行加密?
- asp.net-mvc – ASP.NET MVC编辑集合最佳实践 – 您的意见
- 在视图中确定ASP.NET Core环境名称
- asp.net 使用驻留在页面中的Cache缓存常用可定时
- asp.net-mvc – MVC 4 SimpleMembership – 登录
- 如何在ASP.NET MVC中实现Disqus?
- asp.net-mvc – 如何将应用程序用户放在与其余对
- asp.net – 如何配置IIS以便在连接到SQL Server时
- asp.net – HTML divs可以在浏览器窗口之外?
- asp.net-mvc – 获取当前用户的角色
- asp.net-mvc – 如何在多个Asp.net MVC应用程序中
- asp.net – ClientScriptManager.GetPostBackEve
