html 5转换和CSS忽略


html 5 convertion and CSS ignored

好的一天,我们有一个已经存在的网站在php。如果我添加以下内容:

<!DOCTYPE HTML>
<meta charset="utf-8">
<!--[if lt IE 9]>
   <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->

这会导致CSS被忽略,网站显示完全错误。什么好主意吗?或者我错过了什么?

<html>
  <head>
   <title>Company</title>
   <link rel="SHORTCUT ICON" href="/favicon.ico"/>
<?
   $ua_ok= $_SERVER['HTTP_USER_AGENT'];
if( eregi( "msie", $ua_ok ) )  
     {  
echo "<LINK REL='StyleSheet' TYPE='text/css' HREF='/styles.php'></LINK>";
    }
    else
    {
    echo "<LINK REL='StyleSheet' TYPE='text/css' HREF='/stylesOth.php'></LINK>";    
    }
<script language="JavaScript">
      </script>
      <script language="javascript" src="/scripts/jscripts.php<?=FindClass()?>">
      </script>
   </head>
<!--<body onload="window.history.forward(1);"> -->

所有的浏览器都忽略CSS,不仅仅是IE。

页面输出没有CSS,页面看起来很普通,没有边框,没有颜色,没有覆盖。

给出错误:

SEC7113:由于mime类型不匹配,CSS被忽略styles.php

您在这里的代码中缺少关闭?>标记:

...
?>
<script language="JavaScript">
...

在你的编辑显示SEC7113错误后,我给出了另一个答案:因为你的CSS源文件是php脚本,在styles.phpstylesOth.php的顶部强制CSS头

<? header("Content-type: text/css");?>

顺便说一句:你的代码有一些有效性错误,你应该看看Quentin建议的链接。

如果在文档中添加Doctype会阻止CSS工作,那么CSS可能存在错误,浏览器会在Quirks模式下执行错误恢复。

这些错误通常可以通过确保CSS和HTML都是有效的来修复。

使用CSS验证器和标记验证器来查找这些错误,以便您可以修复它们