Jon: background-color funktioniert im IE im Standard-Modus nicht

Hallo Forum!

Ich habe eine ASP.NET Seite (daher bitte nicht wegen der ASP-Tags im Quelltext erschrecken *G*) die ein Menü mit einer Liste realisiert (der Doctype ist HTML 4.0 Transitional mit URI):

<ul id="Menu">
  <li><img src="images/ui/menutitle.jpg"/></li>
  <li>
    <asp:LinkButton id="cmdHome" runat="server">
      Willkommen
    </asp:LinkButton>
  <li>
    <asp:LinkButton id="cmdReservieren" runat="server">
      Reservieren
    </asp:LinkButton>
  </li>
</ul>

Aus den asp:LinkButton Tags wird später im gerenderten HTML zB:

<a id="cmdHome" href="javascript:__doPostBack('cmdHome','')">
  Willkommen
</a>

Das zugehörige Stylesheet sieht folgendermaßen aus:

ul#Menu
{
 background-color:fcfcf9;
 border-color:c1d2ee;
 border-style:outset;
 border-width:1px;
 float:left;
 padding:5px;
 margin:0 0 0 0;
 width:175px;
}

ul#Menu li
{
 list-style:none;
 padding-bottom:5px;
}

ul#Menu a
{
 border-color:8a867a;
 border-style:solid;
 border-width:1px;
 background-color:#fcfcf9;
 text-decoration:none;
 color:Black;
 display:block;
 padding:5px;
}

ul#Menu a:hover
{
 background-color:c1d2ee;
 border-color:316ac5;
 border-style:solid;
 display:block;
 padding:5px;
}

Im Quriks-Modus funktioniert nun alles perfekt, sowohl Firefox als auch IE ... bis natürlich auf den Box-Modell-Bug des IE. Klar dass ich auf den STandard-Mode switche.

Im Standardkonformen Modus passt nun das Layout in beiden Browsern. Doch im IE funktioniert nun plötzlich der Hover-Effekt nicht mehr - die "Schaltfläche" sollte blau aufleuchten durch eine Änderung des background-color-Wertes. Dann fiel mir auf: es werden generell keine per background-color definierten Werte angezeigt (die normale, nicht gehoverte Hintergrundfarbe ist nur ein ganz leichtes grau-weiss, fällt nicht sofort auf wenn das fehlt *G*) - gebe ich im a:hover zB border-width:2px an, funktioniert das Hovern sehr wohl.

Also: warum zeigt hier der IE im standardkonformen Modus keine Hintergrundfarben an, wohl aber im Quirks-Modus? Der Firefox zeigt alles korrekt an, sowohl mit Quirks- als auch Standard-Doktype.

Vielen Dank für Eure Hilfe & lg
Jon

  1. Hi there,

    auf den ersten Blick betrachtet hast Du bei einigen Farbangaben auf das sharp vergessen...

    1. auf den ersten Blick betrachtet hast Du bei einigen Farbangaben auf das sharp vergessen...

      Ganz genau, danke, hatte es schon selbst rausgefunden. So was blödes.

      Zuerst sucht man stundenlang, und auf einmal sticht es einem wie ein Messer in die Augen lol ... natürlich erst dann, wenn man die Leute im SelfHTML Forum umsonst gequält hat.

      Eine Teilschuld hat aber der FF ;-)) - nachdems im FF funktioniert hat, war natürlich gleich die Kurzschlussreatkion: der verdammte IE macht schon wieder was falsch! Aber nein, ausgerechnet hier macht er es mal richtiger als der FF.

      Zusätzlicher Witz an der Sache: vor etwa 1 Stunde hatte ich wegen des Problems sogar in der MSDN über die "CSS Enhancements" des IE6 gelesen, und da stand auch dass er im Standardmodus das Sharp bei Farbangaben voraussetzt. Glaubst mir wär ein Licht aufgegangen dass ich die vergessen haben könnte? lol ... ich versteh sowieso noch nicht, warum mir das passiert ist. Kommt wohl von copy&paste aus dem Photoshop ...

      Danke nochmal & lg
      jon

  2. Hi,

    Der Firefox zeigt alles korrekt an, sowohl mit Quirks- als auch Standard-Doktype.

    Das wundert mich - korrekt würde hier fehlerhaft bedeuten, denn Zeichenketten wie c1d2ee dürften eigentlich nicht als Farbwerte interpretiert werden.

    freundliche Grüße
    Ingo

    1. Das wundert mich - korrekt würde hier fehlerhaft bedeuten, denn Zeichenketten wie c1d2ee dürften eigentlich nicht als Farbwerte interpretiert werden.

      Ja habs grad selbst bemerkt, sorry, wie dämlich von mir :-(

      Dass sich der IE hier anscheinend mehr an Standards hält wie der FF, wundert mich hier auch ;-))

      Nochmal sorry & lg
      jon

  3. Aaaaaaaaaah manchmal sieht man den Wald vor lauter Bäumen nicht: ich hab die Farben im CSS ohne # definiert.

    Sorry für das unnötige Posting. Warum muss der blöde Firefox das auch richtig anzeigen, das hat mich verwirrt, kann ja nicht sein dass der IE sich mal mehr an Standards hält als der FF lol

    lg
    j.