2016-04-26 2 views
0

divの内部にオーバーレイを作成しました。位置を固定しました。ウェブサイトの最上部からスライド効果を使用して表示したいからです。ここで位置固定のオーバーレイがdiv内のすべてのコンテンツを表示しない

は、CSSコードです:

.overlay { 
position: fixed; 
top: 0; 
left: 0; 
right: 0; 
bottom: 0; 
background-color: rgba(0, 0, 0, 0.75); 
z-index: 9999; 
color: white; 
display: inline-block; 
height: 1040px;//as example 

} 

問題は、オーバーレイdivの内側にいないすべてのコンテンツが表示されていることです。オーバーフロー:autoを挿入しようとしましたが、動作しません。ここで

例です:
demo

+0

オーバーレイのコンテンツが大きすぎると位置が正確にその手段を固定:ビューポートが小さすぎる場合、固定ため、スクロール可能ではありません。 – Paul

+0

'position:fixed'は一度適用するとオーバーレイが「親」divと関係がないため使用できません。すべての配置などは、ビューポートとビューポートにのみ関連しています。 –

答えて

0

固定位置を保持したい場合は、overflow : auto;というプロパティと100%の高さでスクロールバーを追加することができます。

.overlay { 
    position: fixed; 
    top: 0; 
    left: 0; 
    right: 0; 
    bottom: 0; 
    background-color: rgba(0, 0, 0, 0.75); 
    z-index: 9999; 
    color: white; 
    display: inline-block; 
    height: 100%; 
    overflow: auto; 
} 

Fiddle

0

あなたは、固定を使用する必要がありますか?

Position : absolute 

あなたが望むものを正しく理解すれば、私のためのトリックはありますか?

+0

こんにちは、私は固定された位置を使用したいと思います。私が関連するクラスをクリックすると、非常に上の固定されたナビゲーションから来るウェブサイトのすべての部分からそれを呼び出す必要があるので、divが修正されたように見えるはずです。 – Daniel

0

それは流れのうち、すでにだからあなたはfixed要素にoverflowプロパティを追加することはできません。コンテンツはcontainerにラップされているため、ソリューションの1つはスクロール可能にすることです。

​​
0
.colTwo{ 
    height: 840px; 
    background-color: green; 
} 

.show { 
    padding: 8px; 
    background-color: #333; 
    color:#fff; 
    display: inline-block; 
    width: 120px; 
    position:fixed; 
} 


.overlay { 
    position: fixed; 
    top: 0; 
    left: 0; 
    right: 0; 
    bottom: 0; 
    background-color: rgba(0, 0, 0, 0.75); 
    z-index: 9999; 
    color: white; 
    height: 100%; 
    display: inline-block; 
    width: 70%; 
    margin: auto; 
    overflow: auto; 
} 

.row { 
    width: 100%; 
    position: absolute; 
    } 
関連する問題