Пост-анимация размытого / искаженного текста на основе Webkit с помощью translate3d

Эта проблема, по-видимому, затрагивает все браузеры на основе WebKit, включая iPhone.

Сначала немного предыстории. На сайте, над которым я работаю, используется «слайдерная» анимация на основе JavaScript.

Я использую -webkit-transform: translate3d для «усиления» реальной анимации. При использовании этого метода, в отличие от метода на основе JavaScript, текст становится все размытым после анимации содержимого. Это особенно заметно на iPhone.

Я видел несколько обходных путей: удаление относительного позиционирования, что я сделал, и добавление правила для -webkit-font-smoothing: antialiased , которое я тоже сделал. Ни одно из изменений не имело ни малейшего значения.

Единственным способом, которым я мог добиться правильной работы без размытого текста, было использование обычного JavaScript для анимации и полное обхождение translate3d . Я бы предпочел использовать translate3d , потому что он работает намного быстрее на устройствах с поддержкой WebKit, но, хоть убей, я не могу понять, почему это влияет на текст в таком плохом путь.

Мы будем очень благодарны за любые предложения или решения.

51
задан Adam Lear 7 February 2019 в 09:30
поделиться

1 ответ

Решение Neil Taylor было лучшим, но оно может все еще быть улучшено:

transform: translateX(-50%) translateX(.5px)

Этот путь это имеет 2 преимущества:

  • Это работает в дрянных браузерах как IE11 (который не поддерживает calc, внутри переводят)
  • , Это только вычисляет во время синтаксического анализа, не каждый раз, когда браузер оценивает.
0
ответ дан 7 November 2019 в 10:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: