首頁 >web前端 >css教學 >為什麼「translate3d」在 Webkit 瀏覽器中動畫後會導致文字模糊?

為什麼「translate3d」在 Webkit 瀏覽器中動畫後會導致文字模糊?

Susan Sarandon
Susan Sarandon原創
2024-11-12 22:13:02673瀏覽

Why Does `translate3d` Cause Blurry Text After Animations in Webkit Browsers?

Webkit 引起的動畫後文字失真:解決Translate3d 難題

基於Webkit 的瀏覽器(包括iPhone 的Safari)的流行,已經揭示了一個令人困惑的現象:動畫驅動後文本變得模糊“-webkit-transform:translate3d。”這個問題困擾了無數開發者,讓他們百思不得其解。

問題的根源在於該網站對基於 JavaScript 的滑桿動畫的依賴。然而,當使用 Translate3d 製作這些動畫時,文字的清晰度會急劇下降,尤其是在 iPhone 上。刪除相對定位和添加“-webkit-font-smoothing: antialiased”等常見的“修復”已被證明是徒勞的。

消除這種失真的唯一可行的解​​決方案是放棄translate3d,轉而使用純JavaScript動畫。然而,translate3d 在 WebKit 裝置上提供了卓越效能的吸引力。揮之不去的問題仍然是:為什麼translate3d會對文本產生如此有害的影響?

雖然最終的答案仍然難以捉摸,但已經出現了一種解決方法來緩解這個問題:

top: 49.9%;
left: 49.9%;
-webkit-transform: translate(-50.1%, -50.1%);
transform: translate(-50.1%, -50.1%);

這種非正統的方法似乎可以減輕模糊。雖然不是完美的解決方案,但它可以緩解動畫後文字模糊帶來的挫折感。

以上是為什麼「translate3d」在 Webkit 瀏覽器中動畫後會導致文字模糊?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn