0
我想創建一個視差滾動效果只使用CSS和沒有第三方庫。使用background-attachment: fixed
我能夠在我的頁面上實現我想要的多個全角div的效果。然而,利用這一點,會對性能造成很大的負面影響。我不是改變了我的方法,將一個發現here:CSS多個固定背景psuedo元素
.element {
overflow: hidden; // added for pseudo-element
position: relative; // added for pseudo-element
// Fixed-position background image
&::before {
content: ' ';
position: fixed; // instead of background-attachment
width: 100%;
height: 100%;
top: 0;
left: 0;
background: url('/path/to/img.jpg') no-repeat center center;
background-size: cover;
will-change: transform; // creates a new paint layer
z-index: -1;
}
}
我用一個DIV這種方法來嘗試一下,而且工作非常出色。然而,當我把它應用於其他的時候,背景都是重疊的,我只見過其中一個(因爲其餘的都在它後面)。這顯然是一個z-index問題,因爲所有僞元素都是重疊的,但我無法想到一個僅用CSS的解決方案。
你介意鏈接到演示? –
我做了codepens演示這個問題。 [This](http://codepen.io/anon/pen/peXyNZ)展示了它在正常工作時的外觀(只在一個div上)和[this](http://codepen.io/anon/pen/vxqGKG )是我將效果複製到多個元素時的外觀(每個div - 不起作用)。 – topherlicious