2017-08-04 7 views
0

現在、このトピックに関する既に質問されている質問はありません。したがって、私は新しい質問をしています。私はログインページを持っていて、次の機能を使って2秒間ロード中のGIFを表示した後、divに表示されたdivが表示されるサインインボタンがあります。divから離れたウェブページのすべてを薄暗くする方法 - 注意を喚起するには

function showDiv() { 
document.getElementById('Login').style.display = "none"; 
document.getElementById('loadingGif').style.display = "block"; 
setTimeout(function() { 
document.getElementById('loadingGif').style.display = "none"; 
document.getElementById('showme').style.display = "block"; 
},2000); 

} 

サインインボタンをクリックした後、このdivの背後にあるすべての部分を調光する方法については、私は固執しています。

私の現在のフォーム

<form action="" method="POST" id="hello" onsubmit="showDiv(); return 
false;"> 

あなたはモーダルをしようとしているように、ボタン

<input class="btn_green_white_innerfade btn_medium" type="submit" 
name="submit" id="Login" value="Sign in" width="104" height="25" 
border="0" tabindex="5" onclick="showDiv()"> 
+0

フォームのdivは、ビューポートのサイズで、透明な黒い背景を持つ必要があります。他のすべてのものよりも高いz-インデックスが必要です。 – inarilo

+0

他のすべての調光はどうですか? –

+0

要素を階層化するためにz-indexが使用されるため、z-indexが高いほど、より低いz-indexを持つすべてがその背後にあることを意味します。したがって、透明な色の背景を使用すると、その背後にあるものを暗くする効果があります。 – inarilo

答えて

2

で私のサインがね。ページ上のすべて暗くするには:

すると、ページ

<div class="covering-panel"> 
    // form goes here 
</div> 

上の要素を作成し、それを高さと幅は、画面をカバーする固定位置を与えます。

.covering-panel { 
    background: rgba(0,0,0, 0.6); // opaque black 
    height: 100vh;     // height of the viewport 
    position: fixed;    // always cover the screen 
    width: 100%;     // width of the viewport 
    z-index: 30;     // stay on top of other elements 
} 

.covering-panelのdiv内のフォームを入れて、全体の要素を表示隠すためにJavaScriptを使用しています。

関連する問題