2011-01-26 11 views
1

ページ全体を表示できるようにCSSフィルタを置くことができるかどうかを知りたければ、ページ上に少し灰色のフィルタがあり、ページ上でクリックすることはできませんフィルターが上部にあります。CSSフィルタ全体のページ

答えて

6

これは、次のスタイルで、あなたのDOMの下部にある空のオーバーレイのdiv(<div id="overlay"></div>)を配置することによって達成することができます。

#overlay { 
    position: absolute; 
    top: 0; 
    right: 0; 
    bottom: 0; 
    left: 0; 
    background: #000; 
    opacity: .6; 
    filter: alpha(opacity=60); 
} 

あなたが任意のz方向を宣言している場合は注意する必要がありますインデックス。また、ドキュメントの高さがビューポートよりも大きい場合は、オーバーレイdivでJavaScript処理が必要になることがあります。

+0

私はちょうどZインデックスなしでDOMの底に置くのですか?またはそれをタグの間に直接置くとページ全体が覆われますか? – DonJuma

+0

他の絶対配置要素がある場合は、z-indexが必要な場合があります。 – Spliffster

+0

@Matthew:DOMの底、 ''タグを閉じる前に。 – Chris

0

HTML(ページの一番下にこれを置く):

<div id="overlay"></div> 

CSS:

#overlay { 
    position:fixed; 
    z-index: 100; 
    top:0; 
    left:0; 
    bottom:0; 
    right:0; 
    background-color:rgba(0,0,0,0.2); 
} 

あなたは後方のブラウザ(以下IE8と)をサポートしたい場合は、あなたがする必要がありますコードを再調整してください。例えば、RGBAはIEではサポートされていません。

+0

IE6は位置情報をサポートしていません。固定してください。 – Spliffster

+0

上記のrgba()を参照してください。 ;-) – Chris

+0

@loftoはい、私は知っています。それは私が前にそれをした方法です。しかし私はもうIEをサポートしていません ';)' –

関連する問題