Логические свойства CSS для многоязычных сайтов

Привычные свойства вроде margin-left или padding-right предполагают, что текст на странице всегда течёт слева направо, как в русском или английском языке. Но для языков с направлением письма справа налево эта логика переворачивается, и жёстко заданные left и right начинают работать не так, как нужно.

Логические свойства решают эту проблему, описывая направление не через физические стороны экрана, а через логику текста — inline-start и inline-end вместо left и right, block-start и block-end вместо top и bottom. Направление подставляется автоматически в зависимости от языка и направления письма страницы.

Это особенно полезно для сайтов, которые локализуются на несколько языков, включая языки с направлением письма справа налево, вроде арабского или иврита — с логическими свойствами не приходится создавать отдельный набор стилей специально под зеркальное направление текста.

Даже для проектов, которые никогда не планируют поддержку языков с обратным направлением письма, логические свойства всё равно постепенно входят в привычку среди разработчиков, потому что делают код чуть более осмысленным — margin-inline-start яснее описывает намерение, чем условный margin-left.

Поддержка логических свойств в современных браузерах уже достаточно широкая для практического использования, хотя переучивать привычные left и right на новые термины требует некоторого времени и практики, особенно для тех, кто верстает уже много лет.

Логические свойства касаются не только отступов и границ, но и, например, выравнивания текста — start и end вместо left и right работают по той же логике направления письма, а не фиксированной стороны экрана.

Подробное сравнение логических и физических свойств с примерами есть в статье про логические свойства на MDN.

Поделиться в социальных сетях

Отправить комментарий

0 Комментарии

Отправить комментарий (0)

#buttons=(Хорошо) #days=(20)

Мы используем файлы cookie для улучшения работы сайта. Подробнее
Хорошо
×