【问题标题】:Drop Down IE 8 and Below Not Working下拉 IE 8 及以下不工作
【发布时间】:2013-05-21 10:19:30
【问题描述】:

您好,我刚刚重新设计了我的网站以包含下拉菜单,但我今天了解到 IE 8 及更低版本无法正确显示它们。据我所知,它在所有其他浏览器上都显示得很好。 不知道哪里出错了,一​​直在调试,一直没搞清楚。

任何帮助将不胜感激!

这是一个带有我的 html 和 css 的 jsfiddle:http://jsfiddle.net/scTqy/

这是直播网站的链接:http://www.hearditfrom.com


(这是在 js fiddle)

这是我的 html/php:

        <nav id="hb2_nav">
       <ul>
    <li><a class="hb2_nav" href="category.php">Categories <span class="arrow-down"></span></a>
    <ul class="drop-shadow">
    <span class="category_column">
    <li><a href="category.php?category=1">U.S.</a></li>
    <li><a href="category.php?category=2">World</a></li>
    <li><a href="category.php?category=3">Business</a></li>
    <li><a href="category.php?category=4">Economy</a></li>
    <li><a href="category.php?category=5">Entertainment</a></li>
    </span>
    <span class="category_column">
    <li><a href="category.php?category=6">Health</a></li>
    <li><a href="category.php?category=7">History</a></li>
    <li><a href="category.php?category=8">Odd News</a></li>
    <li><a href="category.php?category=9">Politics</a></li>
    <li><a href="category.php?category=10">Science</a></li>
    </span>
    <span class="category_column_last">
    <li><a href="category.php?category=11">Special Reports</a></li>
    <li><a href="category.php?category=12">Sports</a></li>
    <li><a href="category.php?category=13">Technology</a></li>
    </span>

    </ul></li>
    <li><a class="hb2_nav" href="">Add </a></li>
    <li><a class="hb2_nav" href="">Edit </a></li>
    </ul>
    </nav>

这是我的 CSS:

   #hb2_nav
   {
     font-size:18px;
     line-height: 55px;
     float:right;
     height:55px;
     margin:0px;
     margin-top:0px;
     padding:0px;
     display:inline;
    }

        #hb2_nav ul ul {
        display: none;
        color: #333;
    }

    #hb2_nav ul li:hover ul {
        display: block;
    }

    #hb2_nav ul {
        list-style: none;
        position: relative;
        display: inline-table;
    }

    #hb2_nav ul:after {
        content: ""; clear: both; display: block;
    }

    #hb2_nav ul li {
        float: left;
    }
    #hb2_nav ul li:hover {
        background: none;
    }
    #hb2_nav ul li:hover a {
        text-decoration:none;
        padding-left: 10px;
        padding-right:10px;
    }

    #hb2_nav ul li a {
        text-decoration:none;
        display: block; /*padding: 25px 40px;
        color: #757575; text-decoration: none;*/
    }

    #hb2_nav ul ul {
        background: #ffffff; /*#FFF8F0;*/ 
        border-radius: 0px; 
        padding: 0;
        position: absolute; 
        top: 100%;
        width:100%;
        min-width:250px;
        max-width: 400px;
        z-index:10000;
        border: 2px solid #999;
    }

    #hb2_nav ul ul:before {
        content:"";
        display:block;
        width:0;
        border:15px solid #999;
        border-color:transparent transparent #999 transparent;
        position:absolute;
        bottom:100%;
        left:20px;
        margin-left:-10px;
    }



    #hb2_nav ul ul li {
        float: none; 
        background: #ffffff;
        width: 100%;
        position: relative;
        text-align:left;
        font-size: 14px;
        line-height: 24px;
    }

    #hb2_nav ul ul li a {
        color: #333;
        padding: 10px 20px;
    }
    #hb2_nav ul ul li:hover a {
        background: #e8e8e8;
    }

【问题讨论】:

  • 只是说...你进入php只是为了回显html?不得不对那个说NOOOOOOOOO...只是说。
  • 我刚刚将 nav 标签更改为 div 标签,这使它可以在 IE 8 上运行,但在 IE 7 上,下拉菜单仍然奇怪地显示。我还拿出了一些我需要 php 的东西,对此感到抱歉
  • 在旧版浏览器中添加 html5 标签见这篇文章:stackoverflow.com/questions/12996413/html5-for-ie8-or-less
  • 知道为什么它可能无法在 IE 7 上使用 div 标签吗?
  • 除了 ie7 是一个火爆的 POS 之外,它可能不喜欢 li 嵌套在 span 标签中,除非这些 span 标签被设置为显示块。但是,我严重怀疑这应该归咎于我在检查您的网站时遇到的行为。也许问题在于您如何定义菜单相对于其父项的位置。微妙的旁注,当您将鼠标悬停在类别菜单的底部项目上时,您会遇到一些古怪的行为。它将内容直接从屏幕上推出

标签: html internet-explorer css drop-down-menu


【解决方案1】:

您使用了&lt;nav&gt;,这是一个 HTML5 元素,IE8 及以下版本不支持。

仅使用 HTML4.01 标记和 JavaScript 以更好地支持旧版浏览器。

参考:https://developer.mozilla.org/en-US/docs/Web/HTML/Element/nav

【讨论】:

  • 知道为什么它不能在 IE 7 及更低版本上使用 div 标签而不是 nav 标签
  • 只有 CSS 和 HTML ,你没有下拉逻辑。使用 JavaScript。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-07-13
  • 2013-07-02
  • 1970-01-01
  • 1970-01-01
  • 2013-06-24
相关资源
最近更新 更多