画像スライダーを作成する場合、クロスフェードの使用は最も一般的な効果の1つです。さまざまなスライダーがさまざまな手法を使用して、このような効果を作成します。私がこれまでに見つけた主なテクニックは次のとおりです。
<div>
を使用し、互いのvisibility
をフェードインおよびフェードアウトします。<div>
を作成し、そのz-index
プロパティで遊んでから、互いにフェードします。method-1
を使用して、2つの不要で過剰に悪用されたブロック要素を作成する必要があります。最も一般的にはdiv
です。最初にbackgroundプロパティがunderlayed-divに適用され、次にoverlayed-divがフェードアウトされ、続いてz-indexプロパティが変更されて他のプロパティよりも下に配置されます。
method-2
を使用すると、追加のdivが1つだけ作成され、コンテナの背景が変更され、オーバーレイdivがフェードアウトされます。この効果を実装すると、構築できる遷移効果が制限されるようになりました(ただし、これは手元の質問ではありません)。
これがより良いと私が信じる理由は、効果を与えるために常に余分な要素を追加する必要があるからです。このため、nivo-slider
のような効果を作成するには、効果を出すために12〜15以上のdivを作成する必要があります。
要素を作成するために最大数の要素を追加することは正しい方法ではないようです。
他に方法がないので、私が上で述べた方法はそれほど使用されていますか?クロスフェード効果を作成するには、より良い方法が必要です。
だから私の質問は簡単です、この効果を作成するためのより良い方法はありますか?はいの場合、それらは何ですか?
問題の真実は、ウェブはそのために設計されていなかったということです。それは今日の90%のために設計されていませんでした。ハックとWeb開発は密接に関係しています。最善の解決策は、ほとんどの場合、機能するものです。
Webは、すでに存在するもの(HTML5、あなたの場合はソーストンのようなキャンバス)の動的な性質を標準化する方向に進んでいますが、まだ存在しておらず、長くは続かないでしょう。
この効果を作成するためのより良い方法はありますか?はい、ビデオ編集ソフトウェアはあなたがやろうとしていることに対して非常に優れていて簡単でしょう。しかし、あなたは、ビデオに類似したプロパティを持っていても、ビデオではなくWebサイトを作成しようとしているので、実際にはそうではありません。 100%直感的でなくても、機能するものを使用してください。