私は無限ループで画像が互いにフェードするhtmlとcssだけを使ってスライドショーを作っています。スライドショーCSSで何が問題になっていますか?
しかし、私はそれをテストします。最初のイメージは完全に白にフェードインし、次に2番目のイメージがフェードインするのではなく、最初のイメージがフェードアウトし、2番目のイメージが同時にフェードインされます。
これを明確にするために、これは2回目以降のサイクルでのみ発生します。つまり、5つの画像の最初のサイクルは、フェードインとフェードアウトが同時に行われてシームレスに切り替わりますが、スライドショーの次の1サイクルおきにスライド間にホワイトアウトがあります。
これらのトランジションをシームレスにしたいと考えています。明らかに、私は不透明度コントロールかキーフレームタイマーのどちらかでミスを犯しました。
助けてください。とてもありがたい。
CSS:
.css-slideshow {
min-width:100%;
position: fixed;
}
.css-slideshow figure {
position: fixed;
min-width: 100%;
width: 100%;
margin: 0 auto;
}
figure:nth-child(1) {
animation: xfade 24s 24s infinite;
}
figure:nth-child(2) {
animation: xfade 24s 18s infinite;
}
figure:nth-child(3) {
animation: xfade 24s 12s infinite;
}
figure:nth-child(4) {
animation: xfade 24s 6s infinite;
}
figure:nth-child(5) {
animation: xfade 24s 0s infinite;
}
@keyframes xfade {
0%{
opacity: 1;
}
10.5% {
opacity: 1;
}
12.5%{
opacity: 0;
}
98% {
opacity: 0;
}
100% {
opacity: 1;
}
}
HTML:
<div class="css-slideshow">
<figure>
<img src="slider-image1.jpg" width="100%" alt="class-header-css3"/>
</figure>
<figure>
<img src="slider-image2.jpg" width="100%" alt="class-header-semantics"/>
</figure>
<figure>
<img src="slider-image3.jpg" width="100%" alt="class-header-offline"/>
</figure>
<figure>
<img src="slider-image4.jpg" width="100%" alt="class-header-device"/>
</figure>
<figure>
<img src="dfdfdfdfdd.jpg" width="100%" alt="class-header-connectivity"/>
</figure>
</div>
完全な例を作成するのに十分なコードを入力してください。これはCSSだけです。マークアップはどこですか? – MassDebates
良い点。マークアップは今そこにあります。 – needshelp
http://codepen.io/anon/pen/rLJPyvマークアップとCSSをコードペインに投げました。私は暫定的な「白い」フェードを見ない。 – MassDebates