ホームページ > ウェブフロントエンド > CSSチュートリアル > Web アニメーション中にスケールされた要素が中心からずれるのはなぜですか?それを修正するにはどうすればよいですか?

Web アニメーション中にスケールされた要素が中心からずれるのはなぜですか?それを修正するにはどうすればよいですか?

Linda Hamilton
リリース: 2024-12-23 08:16:23
オリジナル
402 人が閲覧しました

Why Does My Scaled Element Shift Off-Center During Web Animation, and How Can I Fix It?

スケール アニメーション中に画像の原点を維持する方法

Web アニメーションで、別の要素内に絶対的に配置されている要素をスケールすると、スケールされた要素が中心からずらします。これは、スケールされた要素を表す赤い四角形がアニメーション中に中心 (青い四角形で表される) から離れる場合に観察できます。

問題の原因

この問題は、アニメーションの変換プロパティが前の変換変換をオーバーライドするために発生します。これにより、要素の中央揃えを維持する変換が削除されます。

解決策

これを解決するには、同じ変換プロパティで変換を結合し、正しい

@keyframes ripple_large {
  0% {
    transform: translate(-50%, -50%) scale(1);
  }
  75% {
    transform: translate(-50%, -50%) scale(3);
    opacity: 0.4;
  }
  100% {
    transform: translate(-50%, -50%) scale(4);
    opacity: 0;
  }
}

.to-animate {
  transform: translate(-50%, -50%);
}
ログイン後にコピー

説明

変換を組み合わせると、アニメーション全体で変換が維持され、その上でスケール変換が適用されます。これにより、要素が中心からずれることなく拡大縮小できます。この場合、transform-origin プロパティは機能しません。

更新された HTML:

<div>
ログイン後にコピー

以上がWeb アニメーション中にスケールされた要素が中心からずれるのはなぜですか?それを修正するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート