2011-10-01 6 views
9

CSS3を使用してフェードイン/アウトを行う方法はありますか?白い背景に<div>? コンテンツは表示されたままにして、背景だけが消えるようにする必要があります。背景をフェードイン/アウトする

css3トランジション/トランスフォームを使用するアイデアはありますか?

ご協力いただきありがとうございます。

あなたが画像と背景色の例については、これは便利かもしれません

答えて

16

確かに、あなたはbackground-colorに直接transition propertyを使用することができます。

div { 
    background-color: white;  

    /* transition the background-color over 1s with a linear animation */ 
    transition: background-color 1s linear; 
} 

/* the :hover that causes the background-color to change */ 
div:hover { 
    background-color: transparent;  
} 

がここ:hoverにフェードアウト赤い背景のan exampleです。

+0

実際に背景色をアニメーション化できるかどうかは分かりませんでした。 – Husky

+0

@Huskyトランジションは非常に優れていますが、ブラウザ固有のプレフィックスをすべて削除できるのが楽しみです。 – Pat

+0

あなたはLESS/SASSを使用し、そこでミックスインを使用することができます。多くのCSS3のプロパティを使用している場合、少なくともそれは耐え難いです。 – Husky

0

divsは、1つのコンテナdivに2つ含めることができます。最初のdivは白い背景を含み、2番目のdivは内容を取得します。

次に、CSS3トランスフォームを使用して、最初のdivの不透明度をゼロにアニメーション化します。

+0

提案をいただきありがとうございます。私は最終的にdivに2番目の色(つまり白)をbackground-colorとしてインラインに設定しました。遷移プロパティと同様に – Frank