如何使用「transform-Box: fill-box;」來修正 SVG 子元素中的意外動畫行為?
SVG 子元素上的CSS 轉換原點問題
嘗試對SVG 中的子元素進行動畫處理時,該元素的變換原點通常是相對於整個SVG 設定的,而不是相對於正在動畫的特定子元素。這可能會導致意外的動畫行為,例如元素似乎從 SVG 的左上角而不是自己的中心開始縮放。
為了解決此問題,CSS 提供了 transform-box 屬性,該屬性可以用於定義將受變換影響的框。透過將transform-box設定為fill-box,變換將僅套用於元素的內容框(即元素可見內容佔據的區域)。
考慮下面的範例,其中一個矩形SVG 中的(id="animated-box") 使用CSS 動畫進行縮放:
@keyframes scaleBox { from { transform: scale(0); } to { transform: scale(1); } } #animated-box { animation: scaleBox 2s infinite; }
登入後複製
如果不設定Transform-box屬性,矩形將從SVG 的左上角開始縮放,如下所示它的變換原點設定為相對於整個SVG 的(0,0)。
要修正此行為並使矩形從其自身中心開始縮放,請新增transform-Box: fill-box;到#animated-box 選擇器:
@keyframes scaleBox { from { transform: scale(0); } to { transform: scale(1); } } #animated-box { transform-box: fill-box; animation: scaleBox 2s infinite; }
登入後複製
現在,矩形將從自身中心開始縮放,因為Transform-box 屬性可確保轉換僅套用於元素的內容框。這可以更好地控制動畫,並實現更精確和更具視覺吸引力的結果。
以上是如何使用「transform-Box: fill-box;」來修正 SVG 子元素中的意外動畫行為?的詳細內容。更多資訊請關注PHP中文網其他相關文章!
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章
Windows 11 KB5054979中的新功能以及如何解決更新問題
4 週前
By DDD
如何修復KB5055523無法在Windows 11中安裝?
3 週前
By DDD
Inzoi:如何申請學校和大學
1 個月前
By DDD
如何修復KB5055518無法在Windows 10中安裝?
3 週前
By DDD
在哪裡可以找到Atomfall中的站點辦公室鑰匙
4 週前
By DDD

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)