TL; DR: разделите трекинг на 1000 и используйте em
's
Немного фона о letter-spacing
всегда применяется к тексту, поэтому мы должныиспользуйте относительную единицу длины.Поскольку font-size
может изменяться пользователем или даже каскадом.
Единица длины best для текста равна em
.
Этоединица измерения представляет собой вычисленный размер шрифта элемента.Если оно используется в самом свойстве font-size, оно представляет унаследованный размер шрифта элемента. Длина CSS - Сеть разработчиков Mozilla
Почему отслеживание отличается?
Макетные приложения, такие как Adobe Photoshop, Illustrator и InDesign em
в своем трекинге, но управляют устройством, поэтому дизайнерам легче играть.Чтобы сделать это проще, они раз это на 1000.

Преобразование отслеживания обратно в целые em
Чтобы сделать это, нам просто нужно разделить номер отслеживания на 1000, чтобы вернуть единицу к целому em, который может использовать CSS.
Итак 50/1000 = 0.05em
.
Вычисление этого в CSS / SCSS
Если вы используете SCSS и хотите многоразовое решение - вот миксин.
// Convert illustrator, indesign and photoshop tracking into letter spacing.
@function tracking( $target ){
@return ($target / 1000) * 1em;
}
@mixin tracking( $target ){
letter-spacing: tracking( $target );
}
Чтобы использовать вышеперечисленные функции, вы можете просто сделать это.
.example {
@include tracking(50);
}
В качестве альтернативы вы можете просто встроить математику без миксина, чтобы он был менее абстрактным:
.example{
letter-spacing: #{(50/1000)}em;
}
Выходные данные для приведенных выше примеров будут следующими:
.example {
letter-spacing: 0.05em;
}
Примечание: Не следует использовать значение в пикселях, поскольку пиксели фиксированы и ломаются, когда:
Дизайнер меняет размер шрифта.Вам нужно будет пересчитать значение.
Если пользователь изменит свой размер текста, дизайн вашего сайта не будет отображаться должным образом или даже не будет читаться.
Кроме того, браузеры отображают текст, отличный от того, как это делают программы графического дизайна, поэтому не удивляйтесь, если дизайнер настроит отслеживание / межбуквенный интервал при рассмотрении реализации.