2016-08-11 66 views
0

我正在編寫一個純粹的CSS3視差網頁,遵循Keith Clark's方法和Carl Henderson製作的樣本(由於缺乏聲譽,無法鏈接其codepen)。 這是主頁面中的代碼,我的JSFiddle和Carl's Codepen。CSS3變換在Mozilla調整窗口大小後開始工作

的index.html

<div class="plax_layer plax_layer--back"> 
    <p>Back Layer</p> 
    </div> 

    <div class="plax_layer plax_layer--base"> 
     <p>Base Layer</p> 
    </div> 

    <div class="plax_layer plax_layer--deep"> 
     <p>Deep Layer</p> 
    </div> 

</div> 

的main.css

html, body { 
    height: 100%; 
    overflow: hidden; 
} 
.parallax { 
    top: 0; 
    -webkit-perspective: 1px; 
    -moz-perspective: 1px; 
    -ms-perspective: 1px; 
    perspective: 1px; 
    height: 100vh; 
    overflow-x: hidden; 
} 
.plax_layer { 
    position: absolute; 
    top: 0; 
    right: 0; 
    bottom: 0; 
    left: 0; 
    font-size: 200%; 
    -webkit-transform-style: preserve-3d; 
    -moz-transform-style: preserve-3d; 
    -ms-transform-style: preserve-3d; 
    -o-transform-style: preserve-3d; 
    transform-style: preserve-3d;  
} 
.plax_layer--base { 
    -webkit-transform: translatez(0) scale(1); 
    -moz-transform: translatez(0) scale(1); 
    -ms-transform: translatez(0) scale(1); 
    -o-transform: translatez(0) scale(1); 
    transform: translatez(0) scale(1); 
    border: 2px solid red; 
} 

.plax_layer--back { 
    -webkit-transform: translatez(-1px) scale(2); 
    -moz-transform: translatez(-1px) scale(2); 
    -ms-transform: translatez(-1px) scale(2); 
    -o-transform: translatez(-1px) scale(2); 
    transform: translatez(-1px) scale(2); 
    border: 2px solid blue; 
} 
.plax_layer--deep { 
    -webkit-transform: translatez(-2px) scale(3); 
    -moz-transform: translatez(-2px) scale(3); 
    -ms-transform: translatez(-2px) scale(3); 
    -o-transform: translatez(-2px) scale(3); 
    transform: translatez(-2px) scale(3); 
    border: 2px solid green; 
} 
p { 
    position: absolute; 
} 

我遇到的問題是代碼正常工作的Chrome和Safari,Mozilla的卻完全不能在不打開Inspector窗口的情況下給出效果(關閉窗口後停止),並且只有在我調整了輸出窗口大小後才能在我的Fiddle中工作。我還沒有遇到類似的問題(可能還沒有)在谷歌。

回答