2013-04-16 78 views
-2

我们有一个已经存在的网站在PHP的好日子。如果我添加以下内容:html 5转换和CSS忽略

<!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:CSS被忽略,由于MIME类型不匹配 styles.php

+2

你能发布网站的完整代码吗? – jgillich

+5

...或者至少整个“”部分? –

+1

请显示* generated * HTML,而不是生成它的PHP。还请说明哪些浏览器忽略它。你有UA嗅探代码。 – Quentin

回答

0

我给你的编辑显露SEC7113错误后只是另一个答案:因为对CSS源文件是PHP脚本,迫使CSS头在的styles.phpstylesOth.php

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

BTW顶部:你的代码遭受一些有效性错误,你应该看看Quentin建议的链接。

+0

嗨,感谢这使得CSS被接受,现在的问题只是CSS不能正确显示它应该。将验证CSS / –

1

你缺少在这里代码中的结束?>标签:

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

如果添加文档的Doctype阻止CSS工作,然后CSS可能有错误,浏览器将在Quirks模式下执行错误恢复。

这些错误通常可以通过确保CSS和HTML都有效来解决。

使用a CSS validatormarkup validator找到这些错误,以便您可以解决它们。