2017-10-17 12 views
2

CSSの非表示要素は、5秒がそれを示して

た後、私はこの質問CSS Auto hide elements after 5 seconds

を発見し、私はこれのopositeを行う方法を知っておく必要があります。 基本的には:要素隠さ

-wait 5秒

-Show要素

-page負荷私は任意のヘルプがいいだろうCSSで非常に良いではありませんよ!

#thingtohide { 
    -moz-animation: cssAnimation 0s ease-in 5s forwards; 
    /* Firefox */ 
    -webkit-animation: cssAnimation 0s ease-in 5s forwards; 
    /* Safari and Chrome */ 
    -o-animation: cssAnimation 0s ease-in 5s forwards; 
    /* Opera */ 
    animation: cssAnimation 0s ease-in 5s forwards; 
    -webkit-animation-fill-mode: forwards; 
    animation-fill-mode: forwards; 
} 

@keyframes cssAnimation { 
    to { 
     width:0; 
     height:0; 
     overflow:hidden; 
    } 
} 
@-webkit-keyframes cssAnimation { 
    to { 
     width:0; 
     height:0; 
     visibility:hidden; 
    } 
} 
+1

視認性instedあなたがリンクしたターゲットの質問。 – TylerH

+0

@MattWeberは、別のプログラミング言語に依存するライブラリを導入していても、5秒後にCSSを使用して非表示の要素を表示するよりも単純な方法ではありません。 – TylerH

+0

@タイラーH答えによれば、逆を行うためのより良い方法があります。さらに、私はすでにそれを使って遊んでいたが、成功しなかったものを変更する必要があるか分からなかった。それで、なぜ古いスレッドを壊すのではなく、新しい質問をしたのですか? –

答えて

4

この単純な解決策を試してみてください。

#showMe { 
 
    animation: cssAnimation 0s 5s forwards; 
 
    visibility: hidden; 
 
} 
 

 
@keyframes cssAnimation { 
 
    to { visibility: visible; } 
 
}
<div id='showMe'>Wait for it...</div>

また、不透明度を使用することができます。これは、文字通りの端部との間の特性をスワップアウトしてから状態を開始した場合である

#showMe { 
 
    animation: cssAnimation 0s 5s forwards; 
 
    opacity: 0; 
 
} 
 

 
@keyframes cssAnimation { 
 
    to { opacity: 1; } 
 
}
<div id='showMe'>Wait for it...</div>

+1

良い提案。ありがとう – Jayakrishnan

+0

これはうまくいきます!しかし、それはかなり醜いオープンスペースを残します。視認性を表示に変更する:なし;/display:インライン;動作しません。 –

+0

https://jsfiddle.net/jayakrishnancn/opsara9L/2/これはあなたが求めているものですか? 。もし私が私の答えを更新する – Jayakrishnan

3

このようなものを実行できます。これにより、opacityが0に設定され、数秒後に100%に戻されます。このオプションを使用すると、どのくらいの速さで表示するかを細かく調整することができ、要素の不透明度とその時間枠をいつ制御できるかを制御できます。

#showMe { 
 
    opacity: 0; 
 
    -moz-animation: cssAnimation 5s; 
 
    /* Firefox */ 
 
    -webkit-animation: cssAnimation 5s; 
 
    /* Safari and Chrome */ 
 
    -o-animation: cssAnimation 5s; 
 
    /* Opera */ 
 
    animation: cssAnimation 5s; 
 
    -webkit-animation-fill-mode: forwards; 
 
    animation-fill-mode: forwards; 
 
} 
 
@keyframes cssAnimation { 
 
    99% { 
 
     opacity: 0; 
 
    } 
 
    100% { 
 
     opacity: 1; 
 
    } 
 
} 
 
@-webkit-keyframes cssAnimation { 
 
    99% { 
 
     opacity: 0; 
 
    } 
 
    100% { 
 
     opacity: 1; 
 
    } 
 
}
<div id='showMe'>Wait for it...</div>

+2

あなたは 'cssAnimation 0s 5s forwards; 'を使用し、キーフレームで99%を取り除くと、5秒の遅延を生成し、アニメーションタイムは発生しません。 – Jayakrishnan

+0

良いコール、私はそれがAskerが見ることを許す方法を設定しました不透明度と関連するタイムフレームを調整して設定できます。このようにして、不透明度を2秒間に50%までゆっくりと上げ、次に3回目に100に急速に上げるなど、不透明度を設定することができます。 –

関連する問題