Bootstrap下拉列表在IE8中无效

时间:2013-04-13 11:45:09

标签: twitter-bootstrap drop-down-menu internet-explorer-8

我正在使用Bootstrap框架来设计我的网站。我在导航中有下拉工作,但是从IE8中的一些未知原因下拉列表不起作用。单击“关于我们”链接时,下拉列表未完全显示。这只发生在IE8中。

它在其他浏览器中运行良好。

您可以在此处查看:

https://dl.dropboxusercontent.com/u/52725754/fightback-responsive/index.html

任何人都可以帮忙解决这个问题吗?

5 个答案:

答案 0 :(得分:7)

以下是Bootstrap GitHub论坛中此问题的解决方案:https://github.com/twitter/bootstrap/issues/6548。似乎本机IE8有时会由于filter:参数而破坏,该参数在整个Bootstrap css中用于渐变等。解决方案是添加filter:none!important;到像.navbar或.navbar-inner这样的元素。前者为我解决了。

答案 1 :(得分:1)

我使用bootstrap 3.3.4在IE8下拉菜单时出现问题。我设法通过使用jquery版本1.11.2而不是jquery版本2 +来解决问题。

答案 2 :(得分:0)

bootstrap-theme存在问题(在IE8和IE9中),请参阅this thread

确认这是您的问题,

  • 检查下拉列表是否适用于Bootstrap's navbar example
  • 评论包含bootstrap-theme.min.css。然后应该出现下拉列表。

我使用了以下解决方法(在第一个链接中建议):

  • 使用bootstrap-theme.css而不是.min版本
  • 注释掉filter: progid:DXImageTransform.Microsoft.gradient(...)

Mark Otto还建议将导航栏的内容包装在另一个div中,并在那里添加样式调整。

希望这有帮助

答案 3 :(得分:0)

我遇到了使用bootstrap版本2.3.2在IE8中没有显示的下拉列表的问题。

阅读了几个Feed我得到了这个答案,将它添加到IE8&的条件样式表中7。

/ **修复了IE8兼容模式下拉下拉的问题** /

.navbar-inner{filter:none;}

希望这会有所帮助:)

答案 4 :(得分:0)

IE8 fix for twitter bootstrap responsive menu:

For me the **menu-toggle** button appeared in IE8 so to make it appear as normal menu I used

<!--[if lt IE 9]>
<script src="http://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
<script src="http://oss.maxcdn.com/libs/respond.js/1.4.2/respond.min.js"></script>
<![endif]-->

And a seprate CSS for IE8 containing the below classes 
<!--[if lt IE 9]>
    <link rel="stylesheet" type="text/css" href="css/ie8.css" media="screen" />
  <![endif]-->

Include the below classes inside the ie8.css file

.navbar-header, .navbar-collapse, .collapse{display:none;}
.collapseie8 ul li{ float:left; }
.navbar-nav, .collapse{ display:block; }
    .navbar-inverse.nav li.dropdown.open > .dropdown-toggle,
    .navbar-inverse.nav li.dropdown.active > .dropdown-toggle,
    .navbar-inverse.nav li.dropdown.open.active > .dropdown-toggle, .nav, .navbar, .navbar-inverse.navbar-inner { 

        filter: none!important;
        background-image: none;
    }

 <div id="defaultmenu" class="navbar-collapse collapse collapseie8">
                <ul class="nav navbar-nav ">