2012-03-22 6 views
1

私のコードはw3schoolによって検証されていますが、まだIEとfirefoxでは異なった表示をしています。なぜ私のCSS + HTML WebページはIEとFireFoxで異なって表示されますか?

私のリンクバーは、IEでカスケード接続されているようですが、Firefoxのように(それがそうであるはずです)ストライプラインで表示されます!

マイHTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" 
"http://www.w3.org/TR/html4/strict.dtd"> 

<html> 

<head> 

<link rel="stylesheet" type="text/css" href="lbf.css"> 

<title>Love British Film</title> 
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> 

</head> 
<body> 
<div id="main_container">fegerfg 

    <div id="header"> 
    <div class="logo">Love British Film.com </div> 
    </div> 
    <div class="nav_bar"> 
     <ul class="nav_list"> 

     <li class="odd"><a href="index.html">Home</a></li> 
     <li class="even"><a href="index.html">Reviews</a></li> 
     <li class="odd"><a href="index.html">Forums</a></li> 
     <li class="even"><a href="index.html">Videos</a></li> 
     <li class="odd"><a href="index.html" >Downloads</a></li> 
     <li class="even"><a href="index.html">News</a></li> 
     <li class="odd"><a href="index.html" >Fun bits</a></li> 
     <li class="even"><a href="index.html">Contact us</a></li> 
     </ul> 
    </div> 




     <div class="main_text"> 
     <div class="header">HEADER FOR MAIN CONTENT</div> 


     Main content!! 
     </div> 

     <div id="film_of_day">Film of day </div> 




     <div id="poll_of_week">asdnasdljasasdasfdasfasfas</div> 




</div> 
</body> 
</html> 

そして、私のCSSコード

body 
{ 
background:url(bg.jpg) no-repeat #FFF center top; 
padding:0; 
font-family:Arial, Helvetica, sans-serif; 
font-size:11px; 
margin:0px auto auto auto; 

} 

div { 
margin: 0px; 
padding: 0px; 
width: 0px; 
} 

#main_container{ 
width:1200px; 
height:auto; 
margin:auto; 
padding:0px; 
} 
#header{ 
position:relative; 
width:1200px; 
height:170px; 
background:url(header.jpg) no-repeat center; 
background-position:0px 0px; 
margin:auto; 
padding:5px; 
} 
.logo{ 
width:auto; 
height:auto; 
font-size:20px; 
position:relative; 
top:80%; 
text-align:right; 
} 
.nav_bar{ 
width:1200px; 
height:50px; 


} 
ul.nav_list{ 
list-style-type:none; float:left; display:block; width:1200px; 
margin:0px; padding:0px; 
} 

ul.nav_list li.odd a{ 
display:block;width:150px; text-align:center; float:left;text-decoration:none; background:url(images/home.png) no-repeat left; 
background-color:rgb(147,216,255);height:40px; line-height:40px; color:rgb(168,100,63); 
} 
ul.nav_list li.even a{ 
display:block;width:150px; text-align:center; float:left;text-decoration:none; background:url(images/home.png) no-repeat left; color:rgb(168,100,63); 
height:40px; line-height:40px;background-color:rgb(26,142,165); 
} 
a.odd:link, a.odd:visited { 
display:block;width:133px; text-align:center; float:left;text-decoration:none; background:url(images/home.png) no-repeat left; } 
ul.nav_list li.even a:hover{background-color:#A29;} 
ul.nav_list li.odd a:hover{background-color:#F99;} 

a.even:link, a.even:visited { 
display:block;width:133px; text-align:center; float:left;height:40px;text-decoration:none; background:url(images/home.png) no-repeat left; color:#676d77;} 
a.even:hover{ 
color:#FFFFFF; 
} 



.header{ 
width:500px; 
text-align:center; 
margin-bottom:50px; 
} 
.main_text{ 
display:inline-block; 
float:left; 
width:600px; 
height:600px; 
background-color:rgb(147,216,255); 
} 

#film_of_day{ 
float:right; 
width:340px; 
height:250px; 
background-color:rgb(147,216,255); 

} 


#poll_of_week{ 
margin-top:50px; 
float:right; 
width:280px; 
height:250px; 
outline:solid; 
padding:1px; 
} 
+7

を... – dougajmcdonald

+1

@dougajmcdonald神、私はそれをアップヴォートすることができますので答えとして投稿してください:-D EPIC! –

+0

なぜ私は心配すべきですか?私はW3バリデーターチェックウェブサイトにHTMLとCSSファイルをアップロードしていました。 –

答えて

3

liタグの中にaタグを浮かべていますが、それは良い練習ではなく、問題の原因です。

あなたのliタグを浮遊し、リンクとして内部の非浮かべ

を参照してくださいあなたのaタグを残す必要があります:あなたのコードは「w3school」によって検証されていた場合、私は心配するだろうただ、参考のためにhttp://jsfiddle.net/ZmhzA/1/

+0

トラッパーありがとうございました!それは私のクロスブラウザの問題をソート!今すぐ他のブラウザと私のコードをチェックする必要があります...もう一度ありがとう:) –

7

現実の世界へようこそ。
IEとFirefoyは異なるCSSを解釈します。これはいつも問題だったし、いつもそうだろう!さまざまな動作や外観を減らしたい場合は、いわゆるCSSリセットを使用することができます。

CSSリセットとは何ですか?
これは、すべての位置、パディング、マージン、デフォルトでブラウザから来るすべてを0にリセットする単純なCSSファイルです。したがって、ほとんどのスタイリングが同じように解釈されるようにすることができます。確かにそれは常に同じではありませんが、それはあなたが正しい方向にそれを置くのに役立ちます。また、GridLayoutsをポジショニングに使用することもできます。これは素晴らしいツールでもあり、ほとんどのブラウザで同じように動作します。

そして、ちょうどヒント