TheSchamane: CSS Style wird zerschossen und ist in IE/FF nicht gleich!

Hallo,
bastle nun schon stunden an dem Style, und kriegs einfach nicht gebacken!
ich will dass das ganze so aussieht:

die farben sind gleich wie die stylefarben.

es geht um diese Seite:
http://www.melodylion.ch/tvlq/index.php

-das haupt-menu (sidebar1) sollte immer bis ganz nach unten gehen (FF und IE)
-das Secundäre menu hat bei FF kein Hover...
-die ramen und ränder sind zu gross in FF...
das sind mal die wichtigstens probleme

komme schlichtweg nicht weiter, habe diverse tut's angeschaut, aber leider hab ichs nicht hingekriegt!

Hoffe dass mir jemand helfen kann!

Hier ist das was wichtig ist:
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
erstmal das Template:

  
<body class="twoColLiqLtHdr" onload="set_focus()">  
  
<div id="container">  
  <div id="header">  
  <img src="images/tvllogo.jpg" width="200" height="50" alt="logo">  
  </div>  
  
   <div id="sidebar1">  
    <?PHP include $prim_menu ?>    <!-- Primäres menu - linke seite -->  
   </div><!-- end #sidebar1 -->  
   <div id="container1">  
    <div id="menuContent">  
      <?PHP include $sec_menu ?>  
             <br class="clearfloat" />     <!-- secundäres menu - rechte seite oben-->  
    </div><!-- end #menuContent -->  
    <div id="mainContent">  
     <?PHP include $main_content ?>     <!-- main content - rechte seite -->  
    </div>  
    </div>  
  
  <br class="clearfloat" />  
  <div id="footer">  
    <?PHP include ('footer.php') ?>  
  </div><!-- end #footer -->  
</div>  
</body>  
</html>  

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

und das CSS-Stylesheet:

  
@charset "utf-8";  
body  {  
 font: 100% Verdana, Arial, Helvetica, sans-serif;  
 background: #666666;  
 margin: 0; /* it's good practice to zero the margin and padding of the body element to account for differing browser defaults */  
 padding: 0;  
 text-align: center; /* this centers the container in IE 5* browsers. The text is then set to the left aligned default in the #container selector */  
 color: #000000;  
}  
.twoColLiqLtHdr #container {  
 width: 1024px;  /* this will create a container 80% of the browser width */  
 background:#00C;  
 margin: 0 auto; /* the auto margins (in conjunction with a width) center the page */  
 border: 1px solid #000000;  
 text-align: left; /* this overrides the text-align: center on the body element. */  
}  
  
.twoColLiqLtHdr #container1 {  
 width:884px;  
 margin: 0 auto;  
 border: 1px solid #FF0;  
}  
.twoColLiqLtHdr #container0 {  
 margin: 0 auto;  
 width: 1024px;  
 border: 1px solid #60F;  
}  
  
.twoColLiqLtHdr #header {  
 background: #DDDDDD;  
 padding: 0 10px;  /* this padding matches the left alignment of the elements in the divs that appear beneath it. If an image is used in the #header instead of text, you may want to remove the padding. */  
 margin: 0 0 0 0;  
}  
.twoColLiqLtHdr #header h1 {  
 margin: 0; /* zeroing the margin of the last element in the #header div will avoid margin collapse - an unexplainable space between divs. If the div has a border around it, this is not necessary as that also avoids the margin collapse */  
 padding: 0px 0; /* using padding instead of margin will allow you to keep the element away from the edges of the div */  
}  
  
.twoColLiqLtHdr #sidebar1 {  
 float: left;  
 width: 140px; /* since this element is floated, a width must be given */  
 height: 100%;  
 background: #0CF; /* top and bottom padding create visual space within this div  */  
 padding-top: 15px;  
 padding-right: 0;  
 padding-left: 0;  
}  
.twoColLiqLtHdr #sidebar1 h3, .twoColLiqLtHdr #sidebar1 p {  
 margin-left: 10px; /* the left and right margin should be given to every element that will be placed in the side columns */  
 margin-right: 10px;  
}  
  
.twoColLiqLtHdr #mainContent {  
 margin-top: 0px;  
 margin-right: 0px;  
 margin-bottom: 0px;  
 background: #0F0;  
 width:100%;  
}  
.twoColLiqLtHdr #menuContent {  
 margin-top: 0;  
 margin-right: 0px;  
 margin-bottom: 0;  
 width:100%;  
 background: #309;  
}  
.twoColLiqLtHdr #footer {  
 padding: 0 10px; /* this padding matches the left alignment of the elements in the divs that appear above it. */  
 background:#DDDDDD;  
}  
.twoColLiqLtHdr #footer p {  
 margin: 0; /* zeroing the margins of the first element in the footer will avoid the possibility of margin collapse - a space between divs */  
 padding: 0px 0; /* padding on this element will create space, just as the the margin would have, without the margin collapse issue */  
}  
  
/* Miscellaneous classes for reuse */  
.fltrt { /* this class can be used to float an element right in your page. The floated element must precede the element it should be next to on the page. */  
 float: right;  
 margin-left: 8px;  
}  
.fltlft { /* this class can be used to float an element left in your page */  
 float: left;  
 margin-right: 8px;  
}  
.clearfloat { /* this class should be placed on a div or break element and should be the final element before the close of a container that should fully contain a float */  
 clear:both;  
    height:0;  
    font-size: 1px;  
    line-height: 0px;  
}  
  
/*===============================MENU======================================*/  
  
.twoColLiqLtHdr #menu a, .twoColLiqLtHdr #menu a:visited {  
  font-size: 12px;  
  text-decoration:none;  
  text-align:left;  
  background-color:#aaa;  
  color:#fff;  
  display:block;  
  width:120px;  
  padding:0.2em;  
  margin:0.6em auto;  
  border-right:5px outset #fff;  
  }  
.twoColLiqLtHdr #menu a:hover {  
  border-right:5px groove #000;  
  }  
  
  .twoColLiqLtHdr #menu_b a, .twoColLiqLtHdr #menu_b a:visited {  
  font-size: 10px;  
  float:left;  
  text-decoration:none;  
  text-align:left;  
  background-color:#aaa;  
  color:#fff;  
  display:block;  
  width:140px;  
  padding:0.2em;  
  margin:0.6em auto;  
  border-bottom:2px outset #fff;  
  border-right:1px outset #666;  
  }  
.twoColLiqLtHdr #menu_b a:hover {  
  border-bottom:2px groove #000;  
  }  
  
/*=================================Textclasses==============================*/  
  
.Title1 {  
 font-family: Arial, Helvetica, sans-serif;  
 font-size: 24px;  
 font-style: normal;  
 line-height: normal;  
 font-weight: normal;  
 font-variant: normal;  
 text-transform: none;  
 color: #F00;  
}  
.Title2 {  
 font-family: Arial, Helvetica, sans-serif;  
 font-size: 18px;  
 font-style: normal;  
 line-height: normal;  
 font-weight: normal;  
 text-transform: none;  
 color: #F60;  
}  
.Text {  
 font-family: Arial, Helvetica, sans-serif;  
 font-size: 14px;  
 font-style: normal;  
 line-height: normal;  
 font-weight: normal;  
 text-transform: none;  
 color: #06F;  
}  
  

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

hier noch ein Bsp. eines Sekundären menus:

  
<?PHP  
$one = "/tvlq/index.php?menu=one&content=one";  
$two = "/tvlq/index.php?menu=one&content=two";  
  
$nogo = "#nogo";  
  
echo "<div id=\"menu_b\">  
  <a href=\"".$one."\">Herzlich Willkommen</a>  
  <a href=\"".$two."\">News</a>  
</div>";  
?>  
  

MFG Schamane

  1. Habe das Styleproblem gelöst,
    wusste nicht dass man divs nicht verschachteln sollte!

    das mit dem Hover geht aber immer noch nicht!

    1. @@TheSchamane:

      wusste nicht dass man divs nicht verschachteln sollte!

      Wusste ich auch nicht.

      Ist auch nicht so. Natürlich darf 'div' in 'div' vorkommen.

      Aber mal was anderes:

      .twoColLiqLtHdr #container {
      width: 1024px;  /* this will create a container 80% of the browser width */

      Das ist riesengroßer Quatsch. Du weißt NICHTS über die Größe des Browserfensters beim Nutzer. Folglich kannst du gar nicht wissen, dass 80% davon 1024 Pixel sind.

      Da du NICHTS über die Größe des Browserfensters beim Nutzer weißt, ist es auch Unsinn, die Breite einer Box in Pixeln anzugeben und damit bei vielen Nutzern horizontales Scrollen zu erzwingen.

      Wenn du 80% willst, dann gib eben das an.

      Live long and prosper,
      Gunnar

      --
      Das einzige Mittel, den Irrtum zu vermeiden, ist die Unwissenheit. (Jean-Jacques Rousseau)