为啥 Bootstrap 3 导航栏下拉菜单在 IE8 中不起作用?
Posted
技术标签:
【中文标题】为啥 Bootstrap 3 导航栏下拉菜单在 IE8 中不起作用?【英文标题】:Why Bootstrap 3 navbar dropdown doesn't work in IE8?为什么 Bootstrap 3 导航栏下拉菜单在 IE8 中不起作用? 【发布时间】:2013-08-31 10:10:39 【问题描述】:bootstrap 3 下拉菜单在 IE8 中不起作用,我不知道为什么,对此有任何帮助。有人说是因为 BS 添加了 CSS 过滤属性
【问题讨论】:
Bootstrap dropdown not working in IE8的可能重复 Twitter bootstrap 3 RC2 - Navigation in IE8 not working的可能重复 我遇到了这个问题,但如果没有您的 html,我无法假设我的解决方案会奏效。对我来说,我的 IE 菜单下拉菜单失败了,因为我使用的是 标签。 bootstrap 3 导航栏示例清楚地显示 正在使用的标签。 【参考方案1】:要在托管站点兼容性文件(html5shiv 和 Respond)的同一台服务器上解决问题,并且将再次托管引导文件而不使用 CDN。否则无法兼容 IE 8。
【讨论】:
【参考方案2】:在另一个线程上找到了这个,但将您的 jquery 恢复到版本 1.11.2 而不是 2+。
【讨论】:
【参考方案3】:包括这两个脚本:
<script type='text/javascript' src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<script type='text/javascript' src="//cdnjs.cloudflare.com/ajax/libs/respond.js/1.4.2/respond.js"></script>
然后使用 jQuery 版本 LESS than 2(jQuery 2++ 不再支持 IE8)
最后,使用网络服务器(本地或其他)来查看您的网站,因为 respond.js 不能很好地与 file:// 协议配合使用
【讨论】:
【参考方案4】:我已经在 localhost 中测试了很多次。它永远不会在 localhost 中工作,只需将相同的文件夹上传到您的服务器上,然后检查它会 100% 工作。
【讨论】:
【参考方案5】:bootstrap3 可以在 ie 8 上正常工作,只有你必须确保添加 respond.js 、 html5shiv 和最新版本的 jQuery
像这样:
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link href="css/bootstrap.min.css" rel="stylesheet" media="screen">
<!--[if lt IE 9]>
<script src="js/html5shiv.js"></script>
<script src="js/respond.min.js"></script>
<![endif]-->
【讨论】:
+1 将 shiv 和响应脚本添加到 head 元素对我有用。 此外,respond.js 仅在您自己托管引导 css 文件时才有效,而不是从 CDN 加载。以上是关于为啥 Bootstrap 3 导航栏下拉菜单在 IE8 中不起作用?的主要内容,如果未能解决你的问题,请参考以下文章
如何在折叠的导航栏中默认打开 Bootstrap 3 下拉菜单
Bootstrap 3:如何在导航栏中使下拉链接的头部可点击