romero: Jvascript wird nicht richtig ausgeführt / angezeigt

Beitrag lesen

Hallo Martin,

wenn du sowieso Zeit investierst, wäre das aber eine gute Wahl. Die Strict-Dialekte zwingen einen nämlich mehr zur Disziplin, wie etwa Markup (Struktur) und Stylesheet (Darstellung) konsequent und sauber zu trennen, während Transitional eher mal zur Schlamperei verführt.

Ok dann werde ich es beherzigen und die "strict"ere Form verwenden.

Das Styling von Form-Controls ist bei einigen Browsern bewusst eingeschränkt, damit Eingabeelemente weitestgehend so aussehen, wie sie der Nutzer gewöhnt ist, und nicht vom Autor bis zur Unkenntlichkeit verstümmelt werden. Dass das auch auf das form-Element selbst zutrifft, war mir bisher auch nicht bekannt, aber ich halte es durchaus für möglich.

Gut zu wissen, ich habe es, wie bereits an anderer Stelle erwähnt, so umgebaut, dass das form-Element quasi meine Tabelle umschliesst und ich sozusagen diese 3D-Umrandung in diese besagte Tabelle eingebaut habe.

Häufigster Grund, zumindest beim IE: Der Quirks Mode. Ich erwähnte schon, dass der IE in diesem Modus versucht, soweit wie möglich die Fehler seiner Urahnen zu imitieren. Dazu gehört auch das Box Model, das bis IE5 falsch implementiert war (falsch: padding ist in der Breite/Höhe des Elements enthalten; richtig: padding wird zur Breite/Höhe des Elements hinzugefügt).

.STL_Meldungen_Fehler

{ height:47px;
   width:1100px;
   margin:0px;
   padding:2px;
   border:2px;
   border-style: inset;
   overflow:scroll;
   overflow-x:hidden;
   color: darkred;
   font-weight: bold
}


>   
> Eine saubere, klar lesbare Formatierung ist kein Luxus! Ich hab den Code-Block mal "gesäubert", damit man ihn besser überblicken kann.  
  
  
Ok, ich werde deinen Rat annehmen und diese "saubere" Form verwenden. Und mir nochmals dieses Box-Model zugemüte führen.  
  
  

> Klar, zur angegebenen Höhe von 47px kommen oben und unten noch je 2px padding und 2px border hinzu. Rechts und links übrigens auch.  
  
Das heißt also (an Hand der oben angeführten CSS-Anweisung), wenn ein <td> mit einer Höhe von 50px deklariert ist, muss ich also die CSS-Anweisung (border und pading bleibt wie oben) in Bezug auf die "neue" Höhe nicht auf height=47px sondern auf height=42px gehen damit die <td> nicht größer, gedehnter wird.  

>   
> > Nehme ich nun alle Werte weg bzw. setze ich sie auf 0, dann ist keine Änderung sichtbar. Wo also ist da der Fehler?  
>   
> Keine Ahnung, ich kann nicht nachvollziehen, was du genau meinst.  
  
Ich glaube, dass wird sich dann durch den obigen Versuch aufheben. Ging um die Werte in der oben angeführten CSS-Anweisung.  
  
  

> > 3. Wenn ich nun mein Script an den IE8 angepasst hab, wie wirkt sich das dann auf den IE9 oder höher aus? Wie kann ich gewährleisten, dass ich in vielleicht einigen Monaten nicht wieder vor so einem Problem sitze?  
>   
> Das kann dir keiner garantieren, aber die Wahrscheinlichkeit wird immer geringer. Denn auch der IE hält sich zumindest ab Version 8 schon sehr ordentlich an die Spezifikationen und wird mit höherer Versionsnummer immer besser. Sinnvoll ist daher, immer zunächst einen weitgehend standardkonformen Browser zum Entwickeln und Testen zu verwenden, etwa Opera, Firefox oder einen IE8+, und \*dann\* erst Anpassungen für ältere IEs zu machen, wo das nötig ist.  
  
Und wie verhält sich dann das Script, wenn ich also das ganze für den IE8 anpasse, in IE6 (quasi für die anderen Nutzer mit IE6)? Bzw. wie deklariere ich es dann, wenn es da einen Unterschied gibt? Mittels dieser CSS-Hacks?  
  
LG Romero