asp.net 菜单控件在 Safari 中无法正确呈现

2023-11-22

我正在开发的网站正在使用 Databound asp:Menu 控件。当发送 1 个菜单项时,它会呈现在 Firefox(和 IE)中绝对正确的 HTML,但在 Safari 和 Chrome 中确实搞乱了代码。以下是发送到每个浏览器的代码。我已经测试了几个浏览器,它们的渲染效果都非常相似,所以我只发布渲染源的两个变体。

我的问题是:如何让 ASP.NET 向 Chrome 和 Safari 发送与 Firefox 和 IE 相同的 html 和 javascript?

<!-- 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&amp;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&amp;t=633590571537099818" 
                alt="Expand My Order" style="border-style:none;vertical-align:middle;" />
       </td>
     </tr>
  </table>
 </td>
</tr>
</table>

更新:我的解决方案帖子是正确的..但我无法将自己的解决方案标记为正确...所以如果有人想复制它,那么我可以关闭它。 :)


我从评论中找到了这个解决方案博客网。 这可能是一个黑客行为,但它确实有效。

这种跨浏览器兼容性的斗争正在变得令人不安。

 if (Request.UserAgent.IndexOf("AppleWebKit") > 0)
    {

        Request.Browser.Adapters.Clear();

    }

如果有人有更好的解决方案,而不是黑客,如果您发布它,我将不胜感激。从我广泛的网络搜索来看,似乎我并不是唯一一个遇到菜单控件问题的人,因此一些好的参考资料可以帮助其他处于相同情况的人。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

asp.net 菜单控件在 Safari 中无法正确呈现 的相关文章

  • GridView 模板列有条件设置为只读

    有没有办法将 GridView 上的模板列从代码隐藏设置为只读 就像如果测试Admin true make readonly false else readonly true 我发现穆罕默德 阿赫塔尔的答案几乎是正确的 只是我需要在我的案例
  • 收到“路径‘OPTIONS’被禁止”。 ASP.NET网站异常

    我收到错误System Web HttpException Path OPTIONS is forbidden 自从我们将网站转移到新的服务器设置以来 我无法重新创建该错误 但我每天至少会收到几次有关此异常的电子邮件 有什么想法可能导致此问
  • ASP.NET 更新面板停止 jquery 工作

    我已经为 mouseenter mouseleave 以及 jquery Draggable 绑定了 jquery 事件集 div 被放置在更新面板中 当单击按钮时 信息将发送到数据库并更新更新面板 但是 当面板更新时 jquery 事件不
  • 基于 Microsoft Word 模板生成 PDF 文档 [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我需要一个 Word 文档 它是某种模板 收集用户输入以填充该模板中的特定字段 然后生成一个 PDF
  • 从 javascript 调用 HttpHandler

    我有一个简单的页面 带有通过 JavaScript 调用 HttpHandler 的按钮 HttpHandler 获取大量文件并将它们添加到 zip 文件中 完成工作后 zip 文件将添加到 Response 中 此操作可能需要几分钟时间
  • 从asp.net ListBox中获取所有选定的项目

    任何人都知道一个顺利的方法来获得所有selected使用扩展方法在列表框控件中的项目 并且 请不要让我争论与如何获取这样一个列表无关 因为最终一切都使用循环来迭代项目并找到选定的项目 var selected yourListBox Ite
  • 将 .MDF SQL Server 数据库与 ASP.NET 结合使用与使用 SQL Server

    我目前正在 ASP NET MVC 中编写一个网站 我的数据库 其中还没有任何数据 只有正确的表 使用 SQL Server 2008 我已将其安装在我的开发计算机上 我使用服务器资源管理器从应用程序连接到数据库 然后使用 LINQ to
  • 是否可以在 ASP.NET Web API 和 SPA 中使用基于 cookie 的身份验证?

    我想创建基于 angularjs 前端和 ASP NET Web API 的 Web 应用程序 我需要创建安全 api 但我无法在将实施此 Web 应用程序的公司服务器上使用基于令牌的身份验证 是否可以对 SPA 和 ASP NET Web
  • 混合 ASP.NET WebForms 和 MVC 授权

    我正在尝试将一些 MVC3 功能混合到现有的 WebForms 应用程序中 我遵循了一些指南 除了授权部分之外 一切都已设置完毕并正常工作 现有的应用程序有
  • 如何让浏览器后退按钮通过 AJAX 调用带您返回?

    我有一个页面 上面有很多动态生成的复选框 当用户单击这些复选框时 页面上的许多内容会通过 ajax 动态更改 最终用户抱怨 在点击提交然后点击后退按钮更改某些内容后 他们的选择被破坏了 他们必须重新做一遍 我见过一些网站 gmail fac
  • 即使通过 ssl,在 ViewState 中存储信用卡和定价信息是否安全?

    我有一个带有私有属性的页面 该页面在视图状态中存储信用卡对象和购物车对象 以便我可以在回发期间维护对它们的引用 顺便说一句 涉及的页面将使用 SSL 这安全吗 我不会在视图状态中存储敏感信息 ever 通过这样做 您将安全性委托给浏览器的实
  • 导出到 CSV 时 Gridview 出现空行

    这个问题是由进一步讨论引发的这个问题 https stackoverflow com questions 6674555 export gridview data into csv file 6674589 noredirect 1 com
  • 在多个网页(.cshtml 文件)中使用 Razor @functions

    我有以下功能 我希望可用于我的 asp net 网页 2 应用程序中的多个 cshtml 视图 如何使该功能可用于应用程序中的任何视图 而不是仅一个视图 functions public bool DisplayButton String
  • 我应该对 ObjectContext 使用 using 关键字吗?

    我在这个网站或 CodeProject 的某个地方读到 好的规则是 如果某个类已经实现了 IDisposable 接口 那么您应该使用 using 关键字 因为使用翻译成 MSIL 的关键字会尝试 最终阻止如下内容 try some log
  • 设置asp.net验证器的顺序

    我使用 3 个验证器来验证文本框 但当在文本框中输入无效值时 所有验证器都会被触发 但我希望这些验证器按照特定的顺序工作 以便用户可以一一解决这些错误
  • 确定最接近的已知颜色

    我允许我的应用程序的用户选择自定义颜色 并希望有一种方法来显示每种颜色的友好名称 而不是显示十六进制代码的文本表示形式 我如何找到最近的System Drawing Color对于给定的十六进制代码 希望这对某人有帮助 Public Fun
  • 如何从asp net core中的AuthorizationFilter重定向到登录页面?

    当我回来时ForbidResult 它重定向到AccessDenied启动时指定的页面 我想做同样的事情UnauthorizedResult 但重定向到Login page P S 我没有使用标准Authorize控制器中的属性我有自己的
  • 同时从2个表中删除?

    我正在使用 asp net 和 sql 服务器 我有 2 个表 类别和产品 在产品表中 我的categoryId 为FK 我想要做的是 当我从类别表中删除类别时 我希望该类别中的所有产品都将在产品表中删除 如何才能做到这一点 我更喜欢使用存
  • DbContext 和 ObjectContext 有什么区别

    From MSDN 表示工作单元和存储库模式的组合 使您能够查询数据库并将更改分组在一起 然后将这些更改作为一个单元写回存储 DbContext在概念上类似于ObjectContext 我虽然DbContext只处理与数据库的连接以及针对数
  • 导致回发到与弹出窗口不同的页面

    我有一个主页和一个详细信息页面 详细信息页面是从主页调用的 JavaScript 弹出窗口 当单击详细信息页面上的 保存 按钮时 我希望主页 刷新 是否有一种方法可以调用主页的回发 同时还可以从详细信息页面维护保存回发 Edit 使用win

随机推荐

  • 如何使用 Jacoco 和多个模块在 Jenkins 中实现代码覆盖率?

    我的代码结构如下 events消息其他代码功能测试 在 jacoco 的构建脚本中 首先它必须复制所有类并使用该类目录来运行该工具 您能否在此处描述目标目录的步骤 我的意思是如何提及运行代码覆盖率的目录 构建后 每个文件夹都有自己的目标文件
  • 从 NSArray 获取 NSIndexSet

    NSArray 有一些有用的方法来查找指定索引的对象 To find objects by indexes id objectAtIndex NSUInteger index NSArray objectsAtIndexes NSIndex
  • UITextInputMode.activeInputModes() 在 Swift 2 中崩溃

    我想在 Swift 2 中获得 UITextInputMode 但是UITextInputMode activeInputModes 崩溃 let x UITextInputMode activeInputModes crash here
  • OpenERP fields.function() 解释[重复]

    这个问题在这里已经有答案了 我从 stock py 文件和行号 163 中获取了此代码 complete name fields function complete name type char size 256 string Locati
  • 如果每个列表视图有多个文本视图,如何设置适配器?

    我有多个TextViewmy 中的每个列表项ListView 我学会了写一个正确的getView我相信的方法 但我不知道如何使用setAdapter调用该方法 private static String project proj1 proj
  • 单击时删除 html 图像上的蓝色突出显示

    我正在 Android 中制作一个自定义应用程序 我正在显示一个 html 页面 div 内有一个 img 标签 div class press img src but png width 150 height 62 border 0 di
  • 数组删除重复元素

    我有一个未排序的数组 删除元素 如果存在 的所有重复项的最佳方法是什么 e g a 1 5 2 6 8 9 1 1 10 3 2 4 1 3 11 3 所以在该操作之后数组应该看起来像 a 1 5 2 6 8 9 10 3 4 11 检查每
  • 从 PackageID 获取显示名称

    查看 Wix Standard Bootstrapper 应用程序的源代码 似乎每个包都有一个显示名称财产 pPackage gt sczDisplayName 但是 WiX 安装项目中使用的 BootstrapperCore dll 没有
  • 如何将深度特征合成应用于单个表

    处理后 我的数据是一张表 其中几列是特征 一列是标签 我想用featuretools dfs帮助我预测标签 是否可以直接执行 或者我需要将单个表拆分为多个 可以在单个表上运行 DFS 举个例子 如果你有一个 pandas 数据框df带索引
  • Elmah 无法在 IIS7 服务器上工作

    我在我的 MVC 3 站点上运行 Elmah 并且一切都在我的本地开发计算机上运行 但是 现在我已将站点移至生产服务器 Elmah 无法正常工作 我在实时服务器上使用与在本地计算机上使用的相同的 SQL 帐户 和连接字符串 EF4 连接 与
  • 如何在 SWIFT 中使用附加参数 - 颜色创建自定义 MKPolyline

    任何人都可以帮我定制吗MKPolyline带有附加参数 Color 自定义多段线 swift import Foundation import MapKit class CustomPolyline MKPolyline let coord
  • 通过 http 跟踪日志文件

    出于安全原因 我是开发人员 我无法通过命令行访问写入日志文件的生产服务器 我can 但是通过 HTTP 访问这些日志文件 是否有一个 tail f 方式的实用程序可以仅使用 HTTP 跟踪 纯文本文件 如果 HTTP 服务器接受返回部分资源
  • k8s/python:如何使用 Kubernetes Python 客户端读取机密?

    我想做这个问题的反面 如何使用 Kubernetes Python 客户端创建机密 i e 如何通过 kubernetes python API 从 kubernetes 集群读取现有密钥 用例是 我想从 jupyter 笔记本 也在我的集
  • UWP 中的模板化控件与自定义控件。网上没有找到明确答案

    在我的 UWP 应用程序中 我的控制选项是用户控制和模板化控制 到目前为止 我对用户控件的理解已经很清楚了 有人告诉我 自定义控件的样式 模板仅在内存中实例化一次 并且这只在首次使用控件时发生 这就是我想要的 因为我知道我正在创建的控件将在
  • Java 中数组是按值传递还是按引用传递? [复制]

    这个问题在这里已经有答案了 数组不是一个原始类型在Java中 但是他们也不是对象 那么它们是按值传递还是按引用传递 它是否取决于数组包含的内容 例如引用或原始类型 Java 中的一切都是按值传递的 对于数组 只不过是一个对象 数组引用按值传
  • #2002 - 服务器没有响应(或者本地 MySQL 服务器的套接字配置不正确)

    我无法访问 PHPMyAdmin 当我想去那里时 我收到此错误 2002 服务器没有响应 或者本地 MySQL 服务器的套接字配置不正确 我用谷歌搜索了这个错误 但不清楚 我尝试知道此代码打开了哪个端口 pgrep mysql mysql运
  • Eclipse / Android:“在项目上运行构建器‘Android 预编译器’时出错...”

    尝试在 Android 项目上做一些工作 我已经几个月没有工作了 但每次我尝试构建该项目时 Eclipse 都会弹出一个对话框 Building workspace has encountered a problem Errors occu
  • 通过 API 列出所有 JIRA 转换

    我希望在 JIRA 中设置智能提交 但我的开发人员想了解其转换的所有选项 为了帮助他们 我想打印一份所有转换名称的备忘单 我相信他们足够聪明 能够弄清楚从那里做什么 但是当我翻阅REST API文档时 我只能找到一种方法来获取特定问题的转换
  • 有没有办法让 UserControl 无法聚焦?

    有没有办法让 UserControl 无法聚焦 编辑 所以SetStyle ControlStyles Selectable false 是要走的路 但还是有区别Control 如果你继承表单Control初始控制不会失去焦点 但是点击派生
  • asp.net 菜单控件在 Safari 中无法正确呈现

    我正在开发的网站正在使用 Databound asp Menu 控件 当发送 1 个菜单项时 它会呈现在 Firefox 和 IE 中绝对正确的 HTML 但在 Safari 和 Chrome 中确实搞乱了代码 以下是发送到每个浏览器的代码