CSS景深可滾動是一種非常炫酷的網頁設計技巧,可以讓頁面產生層次感。實現這一效果的思路是設置背景圖片,通過CSS屬性控制圖片的不同位置來產生一種層疊的效果。
.container { width: 100%; height: 100vh; overflow-x: hidden; overflow-y: scroll; perspective: 1000px; } .layer { width: 100%; height: 100vh; position: absolute; top: 0; background-size: cover; background-position: center; background-repeat: no-repeat; transform-style: preserve-3d; } .layer:nth-child(1) { background-image: url('layer1.jpg'); transform: translateZ(0); } .layer:nth-child(2) { background-image: url('layer2.jpg'); transform: translateZ(-100px); } .layer:nth-child(3) { background-image: url('layer3.jpg'); transform: translateZ(-200px); } .layer:nth-child(4) { background-image: url('layer4.jpg'); transform: translateZ(-300px); }
以上CSS代碼用于實現一個四層景深可滾動的頁面。首先,我們需要一個具備滾動功能的容器,這里我們設置了寬度為100%、高度為視口高度、overflow-x為hidden、overflow-y為scroll的.container。接下來,我們設置了四個背景圖分別綁定在四個.layer層上。其中,nth-child()偽類用于選擇第n個標簽。在.layer中,我們設置了position為absolute,top為0,然后通過transform-style:preserve-3d屬性打開3D視圖。通過transform:translateZ()屬性來控制每一個.layer的位置,達到層疊效果的目的。
總體來說,景深可滾動效果能夠提升網頁的交互性和觀賞性,但是也需要謹慎使用,過度的視差效果可能對用戶體驗產生反效果。