Hallo Andreas,
Absolut unlogisch. Das Elternelement ist NICHT Basis für die absolute Positionierung (auch wenn in SelfHTML sowas drinsteht - das ist falsch).
Das steht auch in anderen Veröffentlichungen so. Warum nur? Übersetzungsfehler oder Verständnisproblem?
Basis für die absolute Positionierung ist das innerste Vorfahrenelement, dessen Positionierung nicht static ist, bei dessen Fehlen der Viewport.
Damit habe ich mich nun gestern und auch heute rumgeschlagen. Ich habe in der CSS2-Spezifikation nachgelesen. Das Original ist schwierig zu verstehen, die deutsche Übersetzung aber auch. In etwa erahne ich jetzt die Zusammenhänge, nachdem ich heute versucht habe, sie mir an einem Beispiel klar zu machen.
Frage: Ist das innerste (wieso das innerste? vielleicht besser das nächstliegende) Vorfahrenelement nicht normalerweise das Elternelement?
Die nächsten Vorfahren sind für mich die Eltern und nicht die Großeltern oder Urgroßeltern oder irgendwelche anderen Verwandten.
Im Abschnitt 9.8.4 heißt es u.a.:
The containing block for a positioned box is established by the
nearest positioned ancestor (or, if none exists, the initial containing block).
Und im Beispiel weiter unten wird von child und parent gesprochen.
Könnte man also sagen: containing block = parent? Und ein darin positionierter block = child?
Vom Standpunkt der Positionierung ist das Elternelement eben ein umschließender Block (containing block). Und die Divs, die in einem containing block enthalten sind, sind die Kinder.
Könnte man das so interpretieren?
Grüsse aus Neubrandenburg
Erika Schiener
Hauptsache dem Hund geht's gut