Detlef G.: Worte und Texte verschiedener Länge horizontal zentrieren

Beitrag lesen

Hallo Hans

Da ich weiß, dass die horizontale UND vertikale Zentrierung mit CSS und ohne Tabellen ein Problem ist,

Dafür gibt es zwar Möglichkeiten, die allerdings nur funktionieren, wenn
die Größe des zu zentrierenden Elements bekannt ist.
Du müsstest also serverseitig die notwendige Größe der Box ermitteln. Das
dürfte allerdings kaum zuverlässig möglich sein.

fängt meine Frage mit dem einfachen Fall an: die Worte und Texte sollen nur in einer HORIZONTAL zentrierten Box erscheinen, die immer nur so groß aufgezogen werden soll, wie für den Text benötigt,

Das ist bereits ein Problem. Es gibt bisher keine CSS-Eigenschaften, die
dafür sorgen, dass ein Element als Block dargestellt wird, der sich der
Größe des Inhalts anpasst, außer float und display:table (table-...).
Nur verhindert float eine Zentrierung, und display:table wird vom IE nicht
unterstützt.

aber maximal nicht größer als 600px. D.h.: ganz klein, wenn der Inhalt nur ein kurzes Wort ist, aber 600px breit, wenn der Text aus vielen vielen Worten besteht. Die sollen dann linksbündig umgebrochen werden. Geht das?

Die Maximalbreite stellt kein Problem dar, wenn du dem Elternelement diese
Breite zuweist, dann wird es ohne Zwang (größere angegebene Breite,
unumbrechbarer Inhalt, white-space:nowrap) diese auch einhalten.
Du kannst deiner Box text-align:left geben, egal was für die Elternelemente
festgelegt ist.

Mir fällt also keine Lösung ein, ohne Tabellen dafür zu missbrauchen, wenn
es auch im IE funktionieren soll.

Geht das ganze auch horizontal UND vertikal zentriert? Notfalls meinetwegen auch auf die unelegante Art mit Tabellen… . Aber bitte OHNE Javascript.

Ja, mit Tabellen geht es.

Auf Wiederlesen
Detlef

--
- Wissen ist gut
- Können ist besser
- aber das Beste und Interessanteste ist der Weg dahin!