Css Menü mit eigener ID für jeden Menü Punkt

FunkFlex

Mitglied
Hi hab mal ne Frage, ich hab mit Css ein Menü gebastelt, dass auf der Page verteilt is, d.h. jeder Navigationspunkt hat ne eigene ID um ihn nach belieben zu verschieben.
Und nun will ich einen Navigationspunkt die breite des Hintergrundrahmens bei einem Hover effekt ändern.... nur das klappt nicht.
Code sieht so aus :
HTML:
<ul id="navigation">
			    <li id="navi1">
Hier Css.
Code:
  ul#navigation #navi1{
	  margin-left:190px;
	  margin-top: 40px;
	  width:100px;
	 }
  ul#navigation #navi1:hover{
	  width:100px;
  }
wisst ihr vlt weiter?
Gruß FunkFlex
 
Fällt dir darin nichts auf?

Im zweiten Regelblock ist derselbe Eigenschaftswert width:100px hinterlegt.
 
Zuletzt bearbeitet:
Ja wie gesagt, es klappt nicht...
Ob ich da jetz 100px oder 300 px eingeb es passiert nichts....
Ich weiss schon dass da 2 mal der gleicher Wert drinsteht
 
Bei mir tut sich da erwartungsgemäß sehr viel:

demo.png

HTML:
<!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="de" lang="de">
    <head>
        <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
        <meta name="author" content="spicelab" />
        <meta name="date" content="2010-11-28" />
        <title>Css Menü mit eigener ID für jeden Menü Punkt @ tutorials.de</title>
        <style type="text/css">
        /* <![CDATA[ */
         ul { 
            margin:0; 
            padding:0; 
            list-style:none; 
          }
          ul#navigation #navi1 {
            margin-left:190px;
            margin-top:40px;
            width:100px;
            border:thin solid #d5d5d5;
          }
          ul#navigation #navi1:hover {
            width:200px;
            background:#d5d5d5;
            border-color:#888;
          }
          a { 
            display:block;
            color:#888; 
            text-decoration:none; 
            text-align:center;
          }
          a:hover {
            color:#000;
          }
        /* ]]> */
        </style>
    </head>
    <body>
      <ul id="navigation">
	    <li id="navi1"><a href="#">test</a></li>
      </ul>
    </body>
</html>

Gehe ich recht in der Annahme, dass dir das Problem im IE begegnet?

IE5 u. IE6 haben seit je her die :hover-Pseudoklasse ausschließlich für das <a>-Element unterstützt, und wenn dein HTML-Dokument mit einer falsch gewählten, oder ohne eine Doctype-Deklaration alle Browser, also auch FF, Opera, Safari & Co. in den "Quirks Mode" schaltet, verhalten sich IE7 u. IE8 gleichermaßen wie ihre beiden Vorgänger, obwohl sie es im "Standards Mode" besser können.

In diesem Fall empfehle ich dir den Artikel Der »DOCTYPE-Switch« und seine Auswirkungen, der den Sachverhalt näher beleuchtet, und zahlreiche Fehlerbeispiele anführt, die aus der falschen Doctype-Angabe resultieren.

Falls ich hier mit meiner Vermutung völlig daneben liegen sollte, wirst du etwas mehr von deinem Quellcode preisgeben müssen, denn der Auszug daraus funktioniert in den aktuellen Browserversionen einwandfrei.
 
Zuletzt bearbeitet:
Zurück