2016-10-24 2 views
1

視差効果を使用しているプロジェクトがあります。私のコードは正確にそのプロジェクトでは、このようなものです:CSSがオーバーフローしても視差画像があふれてしまう

$(window).scroll(function(){ 
 

 
var wScroll = $(this).scrollTop(); 
 
$('.flying-man').css({'transform':'translateY(-'+ (wScroll- $('.flying-man').offset().top/1.2)/150+'%)'}); 
 
});
#fun2 { 
 
    margin-top: 8%; 
 
    overflow: hidden; 
 
} 
 
.space-back { 
 
    background: url(https://i.stack.imgur.com/WgyaY.jpg) no-repeat; 
 
    background-position: center; 
 
    background-size: cover; 
 
    height: 100vh; 
 
    position: absolute; 
 
    width: 100%; 
 
} 
 
.flying-man { 
 
    position: absolute; 
 
    background: url(https://i.stack.imgur.com/LMAGK.png) no-repeat; 
 
    background-position: bottom left; 
 
    background-size: 70%; 
 
    margin-top: 50px; 
 
    width: 100%; 
 
    height: 100vh; 
 
    /*background-color: rgba(2,2,2,0.5);*/ 
 
} 
 
section { 
 
    min-height: 100vh; 
 
}
<section id="fun2"> 
 
    <div class="space"> 
 
    <div class="space-back"></div> 
 
    <div class="flying-man"></div> 
 
    </div> 
 
</section> 
 
<section id="speakers2"> 
 
</section> 
 
    <script 
 
    src="https://code.jquery.com/jquery-3.1.1.slim.min.js" 
 
    integrity="sha256-/SIrNqv8h6QGKDuNoLGA4iret+kyesCkHGzVUUV0shc=" 
 
    crossorigin="anonymous"></script>

私が欲しいのは、第2の画像は、クラス.flying-manセクションではなく、オーバーフローに含まれていることを有するものです。私はそれをy軸(スクロールの上から下へ)から変換するスクリプトを持っています。

この画像で問題を確認できます。

enter image description here

+0

は効果がありません追加 - それは私達があなたのコード自分自身を実行することができない限り、デバッグするのは難しいです! – jack

+0

は画像を追加し、jsは今問題を解決しましたか? pls help –

+0

'display:absolute'(CSSで)を設定すると、要素を通常のドキュメントフローから外します。絶対要素はもはやその親によって制約されず、ページ全体によって制約されます。私。 'display:absolute'を使わない場合や、もっとJavaScriptで動作させる場合は、あなたが望むものを得るための道が開かなければなりません。 – pleasedesktop

答えて

0

単に

#fun2 { 
    margin-top: 8%; 
    overflow: hidden; 
    position:relative;  /* <<< this */ 
} 

そうoverflow: hiddenあなたが使用しているスクリプトを含めてください

関連する問題