ホームページ >ウェブフロントエンド >CSSチュートリアル >CSS で非表示の要素をアニメーション化するにはどうすればよいですか?

CSS で非表示の要素をアニメーション化するにはどうすればよいですか?

DDD
DDDオリジナル
2024-11-14 09:39:01380ブラウズ

How to Animate a Hidden Element in CSS?

CSS アニメーションと表示: なし

CSS では、非表示の要素 (表示: なしなど) をアニメーション化するのは簡単ではありません。 「display: none」を設定すると、ドキュメント フローから要素が削除されますが、要素は依然としてスペースを占有します。この問題を解決するには:

1.固定高さを設定します:

display: none と display: block の間ではアニメーション化できないため、非表示要素の初期の高さを、表示されたときに占める高さに固定します。

CSS:

#main-div {
  height: 0;
  display: block;
  overflow: hidden;
  animation-delay: 3.5s;
}

2.アニメーション キーフレームを使用します:

要素を高さ 0 から希望の高さに遷移させるアニメーション キーフレームを定義します。

CSS:

@keyframes main-div-slide {
  from {
    height: 0;
  }
  to {
    height: 375px;
  }
}

3.アニメーションを適用します:

アニメーション キーフレームを非表示要素に関連付けます。

CSS:

#main-div {
  animation: main-div-slide 1s ease 3.5s forwards;
}

次に、非表示要素ページ上の他の要素のレイアウトに影響を与えることなく、シームレスにビューにスライドダウンします。

注: この方法は、非表示の要素の高さが固定されている場合に機能します。動的な高さの場合は、jQuery または JavaScript の使用が必要になる場合があります。

以上がCSS で非表示の要素をアニメーション化するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。