在IE:我的CSS已经改变,而使用基于mysql的SESSION与php


In IE: my CSS has been changed while using a mysql based SESSION with php

这个问题已经困扰了我一整天了。我在我的php文件上使用基于mysql的SESSION。所有其他浏览器,除了IE,显示我的页面与适当的CSS文件,他们看起来很好(更具体地说,它正在改变我的悬停效果在我的菜单和改变我的页脚的对齐方式)。我在IE中测试了没有SESSION代码的文件,它工作得很好。是什么导致IE改变我的布局时添加SESSION ??非常沮丧。我相信你可以告诉我,我是一个php初学者从这条消息。请帮助。谢谢你!詹姆斯。

  <?php
 session_start();
 if(@$_SESSION['auth'] != yes)
 {
  header("location: http://www.setdesign-la.com/login_reg.php");
  exit();
 }
echo "<center><a href='logOut.php'>Log Out</a></center>'n";
 ?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-GB"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 

Bagelmania |百吉饼和酱|美味的咖啡|三明治

<link rel="shortcut icon" href="bm.ico"> 
<link rel="stylesheet" type="text/css" href="http://www.setdesign-la.com/bagelmaniaStyle.css"/>
<link rel="stylesheet" type="text/css" href="http://www.setdesign-la.com/bagelmaniaMainMenu.css"/>
<link rel="stylesheet" type="text/css" href="http://www.setdesign-la.com/bagelmaniaFooter.css"/>


</head>

<body>
 <div id="topFade"></div>
  <div id="banner">
  <div id="bannerContainer"> 
   <div id="bannerContent">
<div id="bannerFlower"> 
             </div> 
             <!-- END BannerFlower --> 
    <div id="bannerPar">
    </div> <!-- END bannerPar -->

  </div><!-- END bannerContent -->
 </div><!-- END bannerContainer -->
</div><!-- END banner -->
<div id="menuWrapper"> 
<div id="menuContainer"> 
  <div id="centeredmenu"> 
       -Home
       -Affiliate Marketing
       -SEO 
   -Training  
   -Articles 
                 -Tacos
       -Yum 
  </div>   <!-- END centeredmenu --> 
 </div>   <!-- END menuContainer --> 
</div>  <!-- END menuWrapper --> 

<div id="wrapper">
  <div id="container">

原因可能是在声明doctype之前输出HTML。这会导致IE切换到怪癖模式。

解决方法:移动这一行
echo "<center><a href='logOut.php'>Log Out</a></center>'n";