Franz: Position

Beitrag lesen

Ich habe gerade ein paar Tests mit "position" gemacht. Zum Sichtbarmachen verwende ich border und Free Ruler zum abmessen der px.
Die Anzeige eines Textes erfolgt je nach Element h, p, div, etc. vom Abstand des body aus. Interessanterweise bewirkt body {margin: 0;} lediglich die Stelle 0 an der linken Seite. Oben bleibt ein Abstand je nach Element. Bei einem eingegebenen Text reicht border bis zum Ende der rechten Seite. Sobald ich position: absolute eingebe verkürzt sich der Rand automatisch auf die Textgrößte. Sonst passiert nichts. Zur Berechnung der Position müßte man auch die Standard-Abstände der Elemente wissen um sie zu "em" oder "px" addieren zu können. Soweit ich verstanden habe, gilt für "position: absolute" die Startposition des Elternelementes. Wenn ich also

<div1>

<p>Das ist ein p-Text</p>

</div>
und

<div2>

<p>Das ist ein p-Text</p>

</div>

habe, so werden sie untereinander gereiht. Margin-top setzt sie ausgehend vom body an die gewünschte Stelle unabhängig ob absolute oder relative. Der Ort wird durch Attribute festgelegt und lediglich border verkürzt sich auf die Satzlänge. Man könnte eigentlich um diesen Rand zu erhalten position: absolute ohne height, etc. alleine setzen?

Gebe ich div2 innerhalb div1 sieht die Sache anders aus.

  1. Verschiebt es in div2 "Text" in die nächste Zeile obwohl an der Breite nichts geändert wird.
  2. Bei beiden absolute ändert sich sonst überhaupt nichts.
  3. Setze ich div1 auf relative wird border wieder seitenbreit und in div2 rutscht der Text wieder in eine Zeile.
  4. Setze ich div2 relative so bleibt dessen Text in einer Zeile, die Höhe von div1 erhöht sich um fast 60px und die Oberkante des div2 orientiert sich an Unterkannte von div1.

Im Prinzip orientieren sich sowohl absolute als auch relative am Elternelement. Lediglich ist der Abstand dazu zu rechnen die die einzelnen Elemente standardmäßig dabei haben. Der Rest ist für mich anscheinend das Eigenleben von HTML bzw. CSS. Wozu der unterschiedliche Gebrauch?

Letzte Frage noch: Soll unabhängig ob es ein div oder mehrere gibt immer ein Selektor genommen werden?

LG Franz