Der Entwurf zu CSS 3 beinhaltet jede Menge Änderungen und Neuerungen. Gänzliche neue Gesichter kommen ins Spiel. Verbesserte Zeilenumbrüche und Silbentrennung, exakter Blocksatz Ausrichtungen.
Da das Texteffekte-Modul bislang nur als Entwurf vorliegt, sind die beschriebenen Eigenschaften und Werte mit Vorsicht zu genießen. Erst wenn der Entwurf Empfehlungs- und damit Spezifikationsstatus erreicht hat und Implementierungen vorliegen, kann mit dem Gezeigten richtig gearbeitet werden.
hyphenate
Die hyphenate-Eigenschaft definiert, ob der Zeilenumbruch-Algorithmus innerhalb von einzelnen Wörtern umbrechen darf, also Silbentrennung über einen Divis (Trennstrich) vorgenommen wird.
Erlaubte Werte
- none (Standard)
- auto
text-align-last
text-align-last gibt vor, wie die letzte Zeile in einem Textblock beziehungsweise eine vor einem erzwungenen Zeilenumbruch stehende Zeile ausgerichtet wird, wenn text-align mit dem Wert justify (Blocksatz) versehen wurde. Die Bedeutung der erlaubten Werte entspricht der der text-align-Werte (mitsamt der in CSS 3 ergänzten Werte start und end).
Erlaubte Werte
- start (Standard)
- end
- left
- right
- center
- justify
text-justify
Die text-justify-Eigenschaft greift wie text-align-last ebenfalls nur, wenn für die Textausrichtung bereits justify gilt. Über diese Eigenschaft lässt sich bestimmen, wie genau Blocksatz erzielt wird, was unter anderem der internationalen Vielfalt an Schreibsystemen und Schriften Rechnung trägt.
Der Wert inter-word beispielsweise setzt nur beim Platz zwischen einzelnen Wörtern an, um Blocksatz zu erzielen, inter-character hingegen bei Silbengruppen, während size dafür sorgt, dass die Schriftgröße einer Zeile so angepasst wird, dass die gesamte Zeile ausgefüllt wird. auto überlässt die Berechnung dem User-Agent, in dem Sinne, dass dieser die Balance zwischen Leistungsfähigkeit und Darstellungsqualität zu finden sucht.
Erlaubte Werte
- auto (Standard)
- inter-word
- inter-ideograph
- inter-character
- inter-cluster
- kashida
- size
text-kashida-space
text-kashida-space wurde bislang noch nicht definiert. Dies ist vielleicht der Preis für zu argen Spezifikationshunger.
text-wrap
Die mit hoher Wahrscheinlichkeit ebenfalls kommende text-wrap-Eigenschaft definiert, wie Zeilenumbrüche im Textfluss vollzogen werden. Der Algorithmus orientiert sich dabei an der Interpunktion, da Zeilen in der Regel mit einem Punkt abgeschlossen werden.
So steht zur Auswahl, ob Zeilen an jeder Stelle umbrochen werden können (normal), sie nicht umbrechen und damit potentiell über den umschließenden Container hinauslaufen (none), sie zwischen Graphemen umbrechen, wobei „Bruchstellen“ vor und nach dem jeweiligen Element Priorität beigemessen wird und keine Silbentrennung stattfindet (unrestricted), oder Umbrüche innerhalb von Zeilen unterdrückt, diese außerhalb von solchen (also nach) aber gestattet werden (suppress).
Erlaubte Werte
- normal (Standard)
- none
- unrestricted
- suppress
Ein Beispiel
Die Absätzen zugeordnete text-wrap: suppress;-Deklaration resultiert bei dem Markup
<p>Erste Zeile. Zweite Zeile. Dritte Zeile.</p>
in der folgenden Darstellung, wenn der Viewport relativ wenig Platz lässt:
Erste Zeile. Zweite Zeile. Dritte Zeile.
Steht noch weniger Platz zur Verfügung, findet auch dann kein Umbruch innerhalb der Zeilen statt, sondern die hier zweite Zeile „rutscht“ ein Stück runter:
Erste Zeile. Zweite Zeile. Dritte Zeile.
white-space-collapse
white-space-collapse bestimmt, ob und wie Leerraum – wie Leerzeichen, Tabulator-Zeichen oder Zeilenumbrüche – gehandhabt beziehungsweise „zusammengebrochen“ wird. Die übliche Vorgehensweise, dass vorhandener Leerraum auf ein einzelnes Leerzeichen reduziert wird, entspricht dem Standardwert collapse. preserve berücksichtigt Leerraum vollständig, während preserve-breaks mehrere aufeinanderfolgende Leer- und Tabulator-Zeichen wie bei collapse zu einem Zeichen „zusammenfallen“ lässt, aber Zeilenumbrüche im Code beachtet, und discard wiederum jeglichen Leerraum löscht. Genaueres wird durch die Leerraum-Verarbeitungsregeln spezifiziert.
Erlaubte Werte
- collapse (Standard)
- preserve
- preserve-breaks
- discard
word-break
Die word-break-Eigenschaft legt fest, was für Zeilenumbruch-Beschränkungen für ein Element gelten. Da alle Werte außer normal, dem Standardwert, mehr für chinesische, japanische und koreanische Schriften (CJK) gelten, werden diese hier nicht näher erläutert.
Erlaubte Werte
- normal (Standard)
- keep-all
- loose
- break-strict
- break-all
word-wrap
Mit word-wrap sieht die CSS-3-Spezifikation höchstwahrscheinlich eine Eigenschaft vor, die definiert, ob innerhalb eines Wortes umgebrochen werden darf, sofern sonst nicht umgebrochen werden kann, ohne dass Text über die Grenzen seines Elements lappen würde. word-wrap greift dabei auch nur, wenn text-wrap entweder den Wert normal oder break-word hat.
Der Standardwert normal erlaubt Umbrüche nur an generell zulässlichen Umbruchpunkten, womit die Eigenschaft in dem Sinne also gar nicht wirklich zum Einsatz kommt. break-word jedoch gestattet das Umbrechen an willkürlicher Stelle – wenn keine alternativen und geeigneten Umbruchstellen vorliegen.
Erlaubte Werte
- normal (Standard)
- break-word
Neues von text-align, letter-spacing und word-spacing
Die text-align-Eigenschaft erhält bei derzeitigem Stand die zusätzlichen Werte start, end sowie einen beliebigen String. Für diese Optionen liegen allerdings noch keine Beispiele vor, so dass auch hier eine exakte Erklärung ausbleiben muss. Für letter-spacing und word-spacing ergibt sich, dass deren Werte ab CSS 3 voraussichtlich auch noch in Prozent angegeben werden können.
Erstveröffentlichung 24.03.2006
Wie hilfreich war dieser Beitrag?
Klicke auf die Sterne um zu bewerten!
Durchschnittliche Bewertung 0 / 5. Anzahl Bewertungen: 0