В Chrome появятся четыре новые международные функции CSS из текстового модуля CSS уровня 4 . В этом посте объясняется, что уже отправлено и что будет в ближайшее время.
- Из Chrome 119: разрыв строки японской фразы с
word-break: auto-phrase
. - За флагом из Chrome 120: межскриптовый интервал со свойством
text-autospace
. - В разработке: кернинг пунктуации китайского, японского и корейского языков (CJK) со свойством
text-spacing-trim
. - Согласованный минимальный размер шрифта на всех языках.
Разрыв строки японской фразы: word-break: auto-phrase
Эта функция улучшает читаемость текста на японском языке и доступна в Chrome 119.
В некоторых восточноазиатских языках, таких как китайский или японский, для разделения слов не используются пробелы, а строки могут переноситься на любой символ, даже если он находится в середине слова. Это нормальное поведение разрыва строки для этих языков, но в коротких текстах, таких как заголовки или стихотворения, предпочтительнее переносить строки на естественные границы фраз (по-японски эта граница называется «бунсэцу»).
Новая функция CSS word-break: auto-phrase
указывает, что перенос должен происходить на таких границах.
<html lang="ja">
<style>
h1 {
word-break: auto-phrase;
}
</style>
<h1>窓ぎわのトットちゃん<h1>
Обнаружение границ выполняется механизмом машинного обучения, поэтому оно может привести не к тому, что вы хотите. В этом случае вы можете вручную настроить точки разрушения. Тег <wbr>
или пространство нулевой ширины ( ​
) обеспечивает разрывную точку, а соединение нулевой ширины ( ‍
) предотвращает разрыв.
窓ぎわの<wbr>トットちゃん
ユーザー<wbr>インターフェース
В настоящее время Chrome поддерживает эту функцию только для японского языка, используя порт BudouX C++, использующий технологию AdaBoost ML. Подробнее об этом читайте в Google Developers Japan: BudouX: 読みやすい改行のための軽量な分かち書き器.
Мы планируем поддерживать корейский и китайский языки в будущих версиях Chrome.
Межскриптовый интервал: text-autospace
Следующая функция в настоящее время находится под флагом Chrome. Чтобы проверить это, включите флаг функций экспериментальной веб-платформы (находится по адресу chrome://flags/#enable-experimental-web-platform-features
) в Chrome 120 или более поздней версии.
В китайском и японском языках используются несколько алфавитов, хань, латынь и цифры ASCII, а также хирагана и катакана в случае японского языка. Небольшие интервалы при переключении с идеографического письма, не относящегося к ханьскому языку, часто улучшают читаемость.
Chrome планирует начать вставлять межстрочные интервалы по умолчанию. Эта функция переносит в Интернет распространенную практику, широко используемую в печатных материалах для улучшения читаемости.
Если вы хотите отключить это поведение, свойство text-autospace
позволяет вам управлять вставкой пробелов.
text-autospace: no-autospace;
Кернинг пунктуации CJK: text-spacing-trim
Следующая функция находится в стадии разработки, и планируется, что она будет включена в Chrome по умолчанию.
В китайском, японском и корейском языках применение кернинга между знаками препинания улучшает читаемость и делает типографику более визуально приятной. Сегодня этот кернинг применяется в большинстве печатных материалов и текстовых процессоров.
Например, точки CJK и закрывающие круглые скобки CJK обычно создаются так, чтобы в правой половине глифов находились внутренние интервалы, чтобы каждый символ имел постоянное продвижение.
Но когда эти знаки препинания появляются подряд, внутренние пробелы в глифах становятся чрезмерными. В следующих двух примерах второй — правильная типографика; правая половина периода CJK должна быть удалена.
Поведение по умолчанию в целом дает хорошие результаты, но разработчики могут использовать свойство text-spacing-trim для выбора различных стилей или в некоторых случаях для его отключения.
Согласованный минимальный размер шрифта на разных языках.
До Chrome 118 размеры шрифтов менее 10 пикселей или около того не отображались, как указано, а округлялись в большую сторону, если язык был арабским, фарси, японским, корейским, тайским, упрощенным или традиционным китайским. Разработчикам требовались обходные пути для рендеринга небольшого текста, например, с помощью свойства transform
.
В Chrome 118 это ограничение снято для всех языков, благодаря чему семь языков соответствуют остальным. Это изменение улучшает совместимость с другими браузерами.
Привлекайте и делитесь отзывами
Если у вас есть какие-либо отзывы об этих функциях, сообщите о проблеме на crbug.com .