ASP .NET - asp:基于站点地图的菜单在IE7中不起作用?

时间:2009-11-26 15:53:54

标签: asp.net menu

我的主页页面上的 asp:菜单绑定到站点地图

<asp:Menu ID="Menu1" runat="server" 
     DataSourceID="SiteMapDataSource2" 
     Orientation="Horizontal" 
     StaticDisplayLevels="2" 
     CssSelectorClass="PrettyMenu">
</asp:Menu>

使用Firefox 3.5,我的开发盒上的菜单效果非常好。当我尝试在IE7中运行该网站时,菜单根本没有响应。

是否有与菜单代码相关的内容会导致此问题?

UPDATE2:

该问题似乎与CSS友好控制适配器有关。 Firefox是响应式的,但IE7只显示菜单的顶层,根本没有响应。

3 个答案:

答案 0 :(得分:0)

我在IIS 6.0和IE8上遇到了类似的问题。以下Microsoft KB文章讨论了它。不知道它适用于你的情况:

http://support.microsoft.com/?scid=kb%3Ben-us%3B969612&x=5&y=10

答案 1 :(得分:0)

如果其他人遇到类似的事情:

我不得不从项目中删除CSS Friendly(浏览器)文件,所有菜单问题都消失了。

答案 2 :(得分:0)

我有类似的问题,编辑CSSFriendlyAdapters.Browser(位于App_Browsers文件夹中)解决了我的问题。就像这样,你应该删除一些元素:

<browsers>
  <browser refID="Default">
    <controlAdapters>
      <adapter controlType="System.Web.UI.WebControls.Menu"
               adapterType="CSSFriendly.MenuAdapter" />
    </controlAdapters>
  </browser>

  <browser id="W3C_Validator" parentID="default">
    <identification>
      <userAgent match="^W3C_Validator" />
    </identification>
    <capabilities>
      <capability name="browser"              value="W3C Validator" />
      <capability name="ecmaScriptVersion"    value="1.2" />
      <capability name="javascript"           value="true" />
      <capability name="supportsCss"          value="true" />
      <capability name="supportsCallback"     value="true" />
      <capability name="tables"               value="true" />
      <capability name="tagWriter"            value="System.Web.UI.HtmlTextWriter" />
      <capability name="w3cdomversion"        value="1.0" />
    </capabilities>
  </browser>
</browsers>