Wie kann man den Wortabstand in Blocksatz mit CSS steuern?

Ich habe 2 Textblöcke, die ziemlich klein sind (jeweils knapp unter einem Absatz) und sie sehen wirklich besser ausgerichtet aus, aber das Problem ist, dass text-align: justify;manchmal wirklich große Leerzeichen hinzugefügt werden und der Text etwas hässlich wird (offensichtlich der gegenteilige Effekt).

Ist es möglich, den Wortabstand mit CSS feiner abzustimmen, damit dies nicht passiert?

Antworten (2)

CSS TEXT-JUSTIFY

Diese reine IE- Eigenschaft bietet eine Verfeinerung des in der text-alignEigenschaft verwendeten Werts „justify“. In der Tat muss der „justify“-Wert gesetzt werden, damit diese Eigenschaft text-justifyeine Auswirkung hat.

text-justifybietet ein feines Maß an Rechtfertigungskontrolle über den eingeschlossenen Inhalt und ermöglicht eine Vielzahl von anspruchsvollen Rechtfertigungsmodellen, die in verschiedenen Sprachschreibsystemen verwendet werden.

Beispiel

<p style="text-align: justify; text-justify: newspaper;">
    This is “Newspaper” justified content
</p>

Mögliche Werte

VALUE                   DESCRIPTION
----------------------  ---------------------------------------------------------------------
auto                    The browser will determine the appropriate justification algorithm
                        to use

distribute              Justification is handled similarly to the “newspaper” value,
                        but this version is optimized for East Asian content
                        (especially the Thai language.)
                        In this justification method, the last line is not justified.

distribute-all-lines    Behavior and intent for this value is the same as with the
                        “distribute” value, but the last line is also justified.

inter-cluster           Justifies content that does not have any inter-word spacing
                        (such as with many East Asian languages.)

inter-ideograph         Used for justifying blocks of ideographic content.
                        Justification is achieved by increasing or decreasing spacing
                        between ideographic characters and words as well.

inter-word              Justification is achieved by increasing the spacing between words.
                        It is the quickest method of justification and does not justify
                        the last line of a content block.

newspaper               Spacing between letters and words are increased or decreased
                        as necessary.

Die IE-Referenz sagt: „Es ist die raffinierteste Form der Rechtfertigung für lateinische Alphabete.“

Quelle: http://www.css3.com/css-text-justify/

Hoffe das hilft!

Dies scheint jetzt von anderen Browsern unterstützt zu werden .

Zusätzlich zur Verwendung von text-justify, die derzeit nur vom IE unterstützt zu werden scheint, sollten Sie das Hinzufügen von Silbentrennung mit expliziten Silbentrennungshinweisen &shy;und/oder browserbasierter automatischer Silbentrennung, die Verwendung hyphens: automit entsprechenden Browserpräfixen oder die Verwendung eines JavaScript-basierten Silbentrenners wie Hyphenator.js in Betracht ziehen. Die Silbentrennung reduziert häufig die Notwendigkeit für zusätzliche Leerzeichen im Blocksatz erheblich.

The text-justify property is supported in all of the major browsers., Quelle: w3schools.com/cssref/css3_pr_text-justify.asp und Text-Align, w3schools.com/cssref/pr_text_text-align.asp
@AbdiasSoftware, die Seite ist gefälscht – ein weiterer Beweis dafür, dass w3schools Mist sind, siehe w3fools.com (Die w3schools-Seite enthält „PlayIt“-Schaltflächen, mit denen Sie ziemlich schnell sehen können, dass ihre Informationen falsch sind.)
Sie sind manchmal etwas veraltet, aber ich würde sie nicht als falsch bezeichnen :-) Hier ist trotzdem eine andere Quelle: reference.sitepoint.com/css/text-align
@AbdiasSoftware, die andere Quelle handelt von einer anderen Eigenschaft. Die Site reference.sitepoint.com erwähnt überhaupt nichts text-justify. Aber es tut mir leid, dass ich anfangs über text-align-justifystatt text-justify(jetzt behoben) geschrieben habe. Die Einstellung text-align: justifyist hier natürlich impliziert; die Frage ist, ob die Art der Begründung kontrolliert werden kann.
Hm, na interessant. Ich werde noch etwas recherchieren. Vielen Dank. Es ist 4 Uhr morgens hier, mein Urteilsvermögen ist daneben :-)
@JukkaK.Korpela: Bitte beachten Sie, dass in einigen Sprachen wie meiner die Silbentrennung nur verwendet werden sollte, wenn der Abstand zwischen den Zeilen (espace justifiante) nicht ausreicht, was bedeutet, dass sie nur für Texte mit schmaler Breite gilt.