Вы можете использовать white-space: pre-wrap
для сохранения последовательности пространств, в то же время упаковка текст:
<p style="white-space: pre-wrap;">Lorem ipsum. Dolor sit amet.</p>
Это не поддерживается в IE до IE 8 в IE режиме 8, ни в Firefox до версии 3.0.
Вы также можете использовать  
или  
для пробелов один em
или один en
широкий. Я не знаю, насколько широко распространена их поддержка, но они, похоже, работают над последними WebKit и Firefox в Mac OS X.
Последовательность из двух символов
предотвратит разрывы строк в этом пространстве; вот что
означает, неразрывное пространство. Последовательность A sentence. Another.
вызывает появление во второй строке
, слегка отступающий текст, что, вероятно, нежелательно. Последовательность A sentence. Another.
отлично работает с разрывом строки и не добавляет никаких дополнительных отступов, хотя, если вы используете ее в обоснованном тексте, с
в конце строки, это предотвратит правильную правильность этой строки.
предназначен для написания чьего-либо имени, например Mr. Torvalds
, или аббревиатура, заканчивающаяся .
, в которой оговорка о типографии гласит, что вы не должны разделить ее по строкам, чтобы люди не путались и думали, что предложение закончено.
Таким образом, использование последовательностей
нежелательно. Поскольку это стилистический эффект, я бы рекомендовал использовать white-space: pre-wrap
и согласиться с тем, что стиль будет немного меньше идеала на платформах, которые его не поддерживают.
Редактировать: Как указано в комментариях, white-space: pre-wrap
не работает с text-align: justify
. Тем не менее, я протестировал sampler of different entities с использованием BrowserShots (неприятные объявления, несколько шелушащиеся и медленные, но это довольно полезный сервис по цене, которая является бесплатной). Это похоже на довольно широкий спектр браузеров на довольно широком спектре платформ, поддерживают  
и  
, некоторые из которых не используют пробелы, поэтому рендеринг не так уж плох, и только IE 6 на Windows 2000 фактически отображает они сломаны, как коробки. BrowserShots не позволяет мне выбирать точные сочетания браузера/ОС, которые я хочу, поэтому я не могу выбрать IE 6 на XP, чтобы узнать, не изменилось ли это. Итак, это правдоподобный ответ, если вы можете пережить IE 6 на Win2K (и, возможно, XP).
Другим возможным решением было бы найти (или создать) шрифт, который имеет пару кернинга для комбинации символов «.», Чтобы их более широко разделить. С поддержкой @font-face
во всех основных браузерах на данный момент, включая IE, в IE 5.5 (хотя IE использует другой формат, чем другие браузеры), использование вашего собственного шрифта фактически становится разумным и возвращается к шрифту по умолчанию для пользователей, если не поддерживается, ничего не сломает.
Последней возможностью может быть обсуждение CSS-комитета с добавлением функции стиля, которая позволит вам указать, что вы хотите расширить интервал в конце предложений (который будет определяться периодом, за которым следует пробел, аббревиатуры и аббревиатурам потребуется
, чтобы избежать получения более широкого пространства). Комитет CSS в настоящее время обсуждает добавление более продвинутой поддержки типографики, поэтому сейчас самое подходящее время для начала обсуждения такой функции.
Да, в разных частях мира существуют разные правила, я думал, что это подразумевается. Я следую правилам, которые определяют это. :) (Единственный недостаток - я, видимо, должен сделать компромисс из-за HTML ..) –
Все это «два пространства после периода бессмыслицы» было изобретено, когда мы использовали моноширинные шрифты и немые выходные устройства. Современные двигатели типографии делают это за вас. Do * not * отменяет поведение по умолчанию! –
Фрэнк: Декларация независимости не была напечатана, но использует это. К сожалению, я не могу использовать современный механизм типографии, такой как TeX, я должен использовать HTML. –