如何解决在IE浏览器的twitter-bootstrap?

导航栏在IE中​​似乎不能正常工作。 这是在IE中的一个截图。

截图

我一直在通过stackoverflow.com上的许多bootstrap主题,但他们给人的“帮助”不适合我。

正文标签后:

<div class="container"> <div class="navbar navbar-fixed-top"> <div class="navbar-inner"> <div class="container"> <a class="brand" href="?id=home">OnniServer.tk</a> <div class="nav-collapse"> <ul class="nav"> <li <?php if ((isset($_GET['id'])) && ($_GET['id'] == home)) { echo "class='active'"; } ?>><a href="?id=home">Home</a></li> <li <?php if ((isset($_GET['id'])) && ($_GET['id'] == donate)) { echo "class='active'"; } ?>><a href="?id=donate">Donate</a></li> <li <?php if ((isset($_GET['id'])) && ($_GET['id'] == about)) { echo "class='active'"; } ?>><a href="?id=about">About</a></li> <li <?php if ((isset($_GET['id'])) && ($_GET['id'] == staff)) { echo "class='active'"; } ?>><a href="?id=staff">Staff</a></li> <li <?php if ((isset($_GET['id'])) && ($_GET['id'] == vote)) { echo "class='active'"; } ?>><a href="?id=vote">Vote</a></li> <li class="dropdown"> <a href="" class="dropdown-toggle" data-toggle="dropdown">Play now: <b class="caret"></b></a> <ul class="dropdown-menu"> <li><a href="minecraft">In browser</a></li> <li><a href="http://minecraft.net">Buy it now</a></li> <li><a href="#">No link for crack</a></li> </ul> </li> <li class="dropdown"> <a href="" class="dropdown-toggle" data-toggle="dropdown">Perms for: <b class="caret"></b></a> <ul class="dropdown-menu"> <li><a href="?id=citizen">Citizen(s)</a></li> <li><a href="?id=vip">VIP(s)</a></li> <li><a href="?id=vipplus">VIP+(s)</a></li> <li><a href="?id=modjr">Jr. Moderator(s)</a></li> <li><a href="?id=mod">Moderator(s)</a></li> <li><a href="?id=admin">Admin(s)</a></li> <li><a href="?id=owner">Owner</a></li> </ul> </li> <li class="dropdown"> <a href="" class="dropdown-toggle" data-toggle="dropdown">Mail to: <b class="caret"></b></a> <ul class="dropdown-menu"> <li><a href="mailto:onni.bucht@me.com">Onni (server Owner)</a></li> </ul> </li> <script> $('.dropdown-toggle').dropdown() </script> </ul> </div> </div> </div> </div> <p>&nbsp;</p> <p>&nbsp;</p> <div class="hero-unit"> <style "text/css"> </style> <?php if (((isset($_GET['id'])) &&($_GET['id'] == home)) || (!isset($_GET['id']))) { include('home.php'); }; if ((isset($_GET['id'])) && ($_GET['id'] == donate)) { include('donate.php'); }; if ((isset($_GET['id'])) && ($_GET['id'] == about)) { include('about.php'); }; if ((isset($_GET['id'])) && ($_GET['id'] == staff)) { include('staff.php'); }; if ((isset($_GET['id'])) && ($_GET['id'] == vote)) { include('vote.php'); }; if ((isset($_GET['id'])) && ($_GET['id'] == citizen)) { include('permissions/citizen.html'); }; if ((isset($_GET['id'])) && ($_GET['id'] == vip)) { include('permissions/vip.html'); }; if ((isset($_GET['id'])) && ($_GET['id'] == vipplus)) { include('permissions/vipplus.html'); }; if ((isset($_GET['id'])) && ($_GET['id'] == modjr)) { include('permissions/modjr.html'); }; if ((isset($_GET['id'])) && ($_GET['id'] == mod)) { include('permissions/mod.html'); }; if ((isset($_GET['id'])) && ($_GET['id'] == admin)) { include('permissions/admin.html'); }; if ((isset($_GET['id'])) && ($_GET['id'] == owner)) { include('permissions/owner.html'); }; ?> </div> </div> 

你需要把<!DOCTYPE HTML>放在你的html的第一行。

您可以添加元标记:

 <meta http-equiv="X-UA-Compatible" content="IE=edge" /> 

在这个链接上find它是什么以及它是如何工作的简要解释。

为了完整起见 – 值得注意的是,在Bootstrap 3中, 按照文档 ,确保页面中的以下结构。 它解决了我与IE9和V3的问题。

 <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> </head> <body> <!-- content --> </body> </html> 

需要为IE包含​​这两个脚本

 <script src="libs/html5shiv/3.7.0/html5shiv.js"></script> <script src="http://oss.maxcdn.com/libs/respond.js/1.4.2/respond.min.js"></script> 

不知道是否会解决你的问题,但值得分享。

我在IE浏览器的引导带有问题。 没有圆angular。 导航菜单不折叠。 跨度不是坐在正确的位置,甚至一些图像不显示。

奇怪的是,IE浏览器在运行visual studio的debugging器时运行正常,它曾经被部署到一个发生问题的服务器上。

尝试使用IE开发工具(F12是键盘快捷键)检查您的浏览器模式和文档模式。 (它在菜单栏的顶部)

问题发生在我身上,因为文件是IE7,浏览器是IE10的兼容性。 我在IIS中添加了一个http头:名称X-UA-Compatible值IE = EmulateIE9

现在页面加载为文件 – IE9标准,浏览器IE10兼容性和所有以前的问题都解决了。

希望这可以帮助。

-tessi

我有同样的问题,没有其他答案的工作。 我的问题是一个奇怪的IE9无法连接到任何http 网站,因此,因为我使用的在线maxcdn引导文件,

bootstrap/3.3.2/css/bootstrap.min.css

没有任何CSS和JS被应用。 进入Internet Explorer选项的高级选项卡我确认没有“使用TLS 1.0”检查导致https站点和文件的问题,一旦检查我的引导页面被格式化为预期。

正如其他人已经注意到使用下面适当的文档types(也许一个有效的html4文档types将工作,但如果你重新开始可能会使用html5。)

响应js和html5垫片(如果使用的话)是为IE8。 IE9不需要那个。 下面的代码使用ie8和以下的标准方法。

– 艺术

 <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries --> <!-- WARNING: Respond.js doesn't work if you view the page via file:// --> <!--[if lt IE 9]> <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script> <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script> <![endif]--> </head> <body> <!-- content --> </body> </html> 

如果您在Intranet内,并且设置被设置为兼容模式,那么正确的文档types和respond.js是不够的。

请参阅此链接了解更多信息: 强制IE8或IE9文档模式达到标准 ,请参阅Ralph Bacon的答案。

这将是一样的:

 <!DOCTYPE html> <meta http-equiv="X-UA-Compatible" content="IE=edge"> 

Internet Explorer具有用于样式表识别的最多数量的代码行。

这是Bootstrap导航栏样式规则,设置导航栏项目的浮动属性:

 .navbar-nav > li { float: left; } 

Bootstrap 3中的这条规则(可能在早期版本中)在5247行。

正如它在这里所说: Internet Explorer的CSS规则限制 ,一个表可能包含多达4095行。

我最近有这个问题。 我改变了这些设置。 它为我工作。 !

验证这些设置

我也有类似的问题。 我把下面的代码行放在我的布局文件的头部,所有的东西看起来都很好。

 <meta http-equiv="X-UA-Compatible" content="IE=9"> 

如果您使用响应式布局,请尝试在您的代码中包含以下js: https : //github.com/scottjehl/Respond

我有一个类似的问题。 在我的情况下,看着CSS我find了一个position: initial

经过一番研究,我发现移动IE浏览器不支持它。

我只是把一个position: relative ,一切正常。