Viennamade: verschachtelte divs / Doctypes

Hallo!

Folgende Zeilen machen eine unterschiedliche Ausgabe, je nach dem ob die Seite xhtml-strict deklariert ist oder nicht:

<div style="border:1px solid red; width:200;background-image:url(Bilder/menulo.gif);background-repeat:no-repeat;">
<div style="border:1px solid green;margin-left:20px">abcd abcd abcd abcd abcd abcd abcd abcd abcd abcd abcd abcd abcd abcd
</div>
</div>

Ohne xhtml-Deklaration wird ein Kästchen gezeichnet. Innerhalb des Kästchen ein Weiteres dessen linke border 20px Abstand "versetzt" ist und dessen Text umbricht. Das Ganze bleibt also 200px breit und genauso will ich es haben.

Schreibe ich allerdings die xhtml-Deklaration dazu, bricht der Text nicht mehr um, daß äußere Kasterl ist so breit wie das Browserfenster, das innere um 20px weniger.

Warum ist das so und wie schaffe ich eine xhtml-Ausgabe wie gewünscht.

Äh, im weiteren Sinne "spiele" ich mit dem Problem seit 2 Tagen :-)

Beste Grüße
Viennamade

  1. Hallo,

    Du solltest noch sagen, um welchen Browser es geht.
    Ich vermute: um MS IE 6.0.

    Schreibe ich allerdings die xhtml-Deklaration dazu,

    Was meinst Du damit genau? Die XML-Deklaration?
    <?xml version="1.0" encoding="UTF-8"?>
    Die schickt den MS IE 6.0 in den Quirks Mode.
    Dann hat er genau das gleiche kaputte Box Modell
    wie seine kaputten Vorgaenger (5.0, 5.5).

    Warum ist das so

    Vermutung: DOCTYPE-Switch.
    http://www.heise.de/ix/artikel/2004/03/136/
    http://gutfeldt.ch/matthias/articles/doctypeswitch.html

    wie schaffe ich eine xhtml-Ausgabe wie gewünscht.

    Verzichte auf die (fakultative) XML-Deklaration.

    Fuer die aelteren, wirklich kaputten Versionen von MS IE
    musst Du vielleicht zu einem der zahlreichen Box Model Hacks
    greifen, wenn Du's nicht anders schaffst.

    Neben der Angabe der betroffenen Browser waeren
    zwei Testdokumente online sehr hilfreich, um das
    "Problem" nachzuvollziehen.

    Gruesse,

    Thomas

    --
    Bitte keine Mails mit Fachfragen - dafuer gibt es das Forum!
    Ich mag es, wenn URLs verlinkt sind (</faq/#Q-19>).
    Oft gestellte PHP-Fragen beantwortet die dclp-FAQ bestens: http://www.dclp-faq.de/
    1. Hallo!
      Danke für die Antwort, Problem behoben, die fehlende Einheit bei der width-Angabe war es.

      Verzichte auf die (fakultative) XML-Deklaration.

      Fuer die aelteren, wirklich kaputten Versionen von MS IE
      musst Du vielleicht zu einem der zahlreichen Box Model Hacks
      greifen, wenn Du's nicht anders schaffst.

      Wenn ich die besprochene Seite mit XML-Deklaration ausstatte und in die Adresszeile
       javascript:alert(document.compatMode);
      eingebe erhalte ich eine alert-Box: "BackCompat"
      "Verzichte" ich auf die XML-Deklaration, dann erhalte ich mit dieser Javascriptzeile: "CSS1Compat"

      Beste Grüße
      Viennamade

  2. Hallo,

    <div style="border:1px solid red; width:200;

    Welche Einheit meinst du bei 'width'?

    Mit freundlichen Grüßen

    André

    --
    ss:{ zu:) ls:& fo:) de:] va:) ch:{ sh:) n4:# rl:° br:& js:| ie:% fl:| mo:}
    http://forum.de.selfhtml.org/archiv/2003/10/60651/#m341175
    1. Hallo André!

      <div style="border:1px solid red; width:200;
      Welche Einheit meinst du bei 'width'?

      Ja, diese Frage haben sich auch die Browser gestellt ... jetzt funktionierts.
      Könnte mir jetzt eine Zehe abbeißen.

      Danke
      Viennamade

      1. hi,

        Könnte mir jetzt eine Zehe abbeißen.

        auch mit neun zehen kann man leben, also: mahlzeit!

        btw: nächstes mal auch CSS validieren lassen, und wieder vernünftige mahlzeiten zu dir nehmen ;-)

        http://jigsaw.w3.org/css-validator/

        gruss,
        wahsaga