ie8中的后台不支持?

时间:2012-10-12 08:19:01

标签: html5 css3

我使用了html代码头类型并为其添加了css。然后为它做一个背景。它在谷歌crome,mozilla,safari中运行良好,但背景不起作用,即头8。

<!doctype html>
<html lang="en" class="no-js">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>ASI India Travels</title>
<style>
html, body, div, span, object, iframe, article, 
footer, header, hgroup, menu, nav, section, summary,
h1, h2, h3, h4, h5, h6, p,
time, mark, audio, video {
   margin:0;
   padding:0;
   border:0;
   outline:0;
   vertical-align:baseline;
}  
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section { 
    display:block;
}
body {
  background-color:#666666;
 }
.container {
  width:875px;
  margin-left:auto;
  margin-right:auto;
}
header{ }
#header {
  background-color:#009966;
  height:275px;
}
</style>
</head>

<body>
 <header id="header">
   <div class="container">
    header
   </div>
 </header>
</body>

你能解决这个问题吗?在此先感谢...

5 个答案:

答案 0 :(得分:2)

您无法在IE8及更低版本中设置HTML5标记样式。

  

Internet Explorer&lt; 9不知道如何在元素上呈现CSS   它不承认。

Learn more

您需要一个名为html5shiv的Javascript polyfill。

答案 1 :(得分:0)

<!doctype html>
<html lang="en" class="no-js">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>ASI India Travels</title>
<!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]--> 
<style>
html, body, div, span, object, iframe, article, 
footer, header, hgroup, menu, nav, section, summary,
h1, h2, h3, h4, h5, h6, p,
time, mark, audio, video {
   margin:0;
   padding:0;
   border:0;
   outline:0;
   vertical-align:baseline;
}  
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section { 
    display:block;
}
body {
  background-color:#666666;
 }
.container {
  width:875px;
  margin-left:auto;
  margin-right:auto;
}
header{ }
#header {
  background-color:#009966;
  height:275px;
}
</style>

</head>

<body>
 <header id="header">
   <div class="container">
    header
   </div>
 </header>
</body>

您必须在文档中支持html5标记。在这种情况下,您使用header标记,这是一个html5元素。

您可以访问this网站找到有关html5的更多信息。

查看jsFiddle example

答案 2 :(得分:0)

试试这个:

background-color:#xxxxx\0/;

put "\0/"这是IE8中的黑客攻击之一 您可以使用此链接获取更多信息:IE Hacks

答案 3 :(得分:0)

这是因为您的<header>代码。 你可以在IE 8中包含这个javascript来处理HTML5标签

<script type="text/javascript">
 document.createElement('header');
</script>

希望这会有所帮助

答案 4 :(得分:0)

你需要做两件事:

  1. 添加一个脚本(modernizr),为IE8生成这个html5元素。 You have to download the script
  2. 添加CSS以制作块级元素(已经完成)
  3. 将此添加到您的<head>

    <script src="js/modernizr-1.7.min.js"></script>
    

    然后你可以在你的CSS中使用:

     header{
      background-color:#009966;
      height:275px;