我似乎无法找出遗漏的东西。所有受影响的元素都有display:block
header
元素的示例样式:
header
{
width: 923px;
height: 55px;
background: #395168;
margin-top: 25px;
}
答案 0 :(得分:1)
IE 6-8不知道标题标记,因此无法将样式应用于它。要让IE了解此标记,请在 head 部分添加以下脚本。
<script language='javascript'>
document.createElement('header');
</script>
这可以解决您的问题。
答案 1 :(得分:1)
解决了这个问题。我做的是我把脚本链接放在样式表链接下,突然IE 6-8应用了我的样式。
<link rel="stylesheet" href="styles/style.css" type="text/css">
<!--[if lt IE 9]>
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
非常感谢您帮助我:)
答案 2 :(得分:0)
也许只是尝试给它上课?
答案 3 :(得分:0)
IE目前不允许将样式应用于这些元素。我解决它的方法是将它们包装在另一个div中:
<div class="header">
<header>
</header>
</div>
这显然不是很好,但是它胜过依赖JS的任何解决方案,因为它在JS禁用时不会显示奇怪。
答案 4 :(得分:0)
我今天遇到这个问题,升级到最新的html5shiv代码(现在转移到Github这里:https://github.com/aFarkas/html5shiv),将样式表移到脚本链接上方,所有元素都显示:block set但仍然没有运气样式。 ..
我意识到我的标记中没有doctype声明 - 添加:
<!DOCTYPE html>
解决了问题,现在所有样式都正确应用 - 完全解决方案:
<!DOCTYPE html>
<html>
<head>
<link href="/css/styles.css" rel="stylesheet" type="text/css">
<script src="/js/html5shiv.min.js"></script>
</head>
<body>
<!-- html 5 markup -->
</body>
</html>