particles.js スクリプトを使用しようとしているので、パーティクルはページ全体に浮かんでいます(背景は透明です)。パーティクルの上にあるリンクとボタンのいくつかを引っ張って、クリックできるようにする必要があります。
link に関して、大きな「C」要素の上に小さな「b」要素を置きながら、大きな「B」要素の上に大きな「C」要素を置くことはできますか?
私が考えていたのは、relativeは親に対するz-indexを意味し、すべての要素をabsoluteに設定すると、大きな「C」の上に小さな「b」を表示することは可能ですが、そうではありません。誰かが私のためにそれを説明できますか?
<div id="A">A<div id="a">a</div></div>
<div id="B">B<div id="b">b</div></div>
<div id="C">C<div id="c">c</div></div>
私が提案するのは、a
に高い値のz-indexを指定することです(例:z-index:9999;
)ただし、要素のz-indexはその親によって設定された値によって制限されるため、a
の親要素のz-index値が小さくならないようにしてください。
だからあなたの質問「私は大きな「C」要素の上に小さな「b」要素を持ちながら大きな「B」要素の上に大きな「C」要素を置くことができますか? "、答えはnoです。これは、小さな" b "要素のz-indexが、その親によって制限されるためです。大きな「B」要素とその大きな「B」要素は「C」要素の下にあります。
これが実用的なサンプルです.container
リンクを機能させながら、パーティクルの下に表示します。重要なのはあなたがこれを持っているべきであるということです:
a{
position:relative;
z-index:9999;
}
そして、親(この場合は.container
)は9999以上のz-index値(またはパターンのz-indexより大きい値)を持っている必要があります。そうでない場合、a
のz-indexが制限され、パターンのz-indexよりも小さい場合はボタンはクリックできません。
背景が無地のボタンがある場合は、a
リンク自体のクリック可能性を維持しながら、パターンが表示されるように、z-indexが低いa
の疑似要素にスタイルを設定することをお勧めします。
位置はz-indexを参照しません。画面上のx、y位置を指します。 css positionプロパティについて読む ここ 。
z-indexは、z軸上の絶対位置です。したがって、高いインデックスは低いインデックスよりもスタックします。
それでも、値が異なるとレンダリング順序が異なるため、位置はdivの外側のdivのz軸に影響します。指定したページでchrome開発者ツールを開き、Aを静的から相対に変更すると、この効果を確認できます。
Aのインデックスは37ですが、Aの後にレンダリングされるため、Bより上になります。z-indexが信頼できるように機能するには、それらを互いにスタックする必要があります。
Codepenパーティクルの例を開き、chrome開発者ツールを開くと、詳細をクリックするとFPSボックスがどのように奇妙に動作するかを確認できます。これは、particle.jsdivの外部にあるためです。
要約すると、何が起こっているのかを知りたい場合は、Chromeの開発ツールのようなものを使用してください。 Firefox、OperaとIEには同様のツールがあります。
codepen の実例を次に示します。クラスをcssに追加し、ページにdivを配置します。
.test {
index: 50;
top: 100px;
position: absolute;
}