2017-03-10 10 views
2

divで画面全体を覆いたい。インラインフレームを使用してdivで全画面をカバーしたい

はすべてカバー:

<iframe id="iframe" src="source.html" style="position:fixed; top:0px; left:0px; bottom:0px; right:0px; width:100%; height:100%; border:none; margin:0; padding:0; overflow:hidden; z-index:999;"> 

しかし、私はdiv要素でこれをしたい:私はsky.cssをテーマにReveal.jsを使用しています

<div id="lessonContents" style="position:fixed; top:0px; left:0px; bottom:0px; right:0px; width:100%; height:100%; border:none; margin:0; padding:0; overflow:hidden; z-index:999;"> 

。何らかの理由で、sky.cssテーマが青い背景を持っていても、divの外部の要素が表示されます。

たとえば、これはdivによって覆われるべきリンクの画像です。あなたが見ることができるように背景がsky.cssテーマの結果として青です:

enter image description here

私はdiv要素ですべてをカバーできますか?

答えて

0

は例background-color: #fff;

のためにそうしないと、それはあなたがその背後にある他の要素を参照してください理由である、透明になり、あなたのdivのスタイルに背景色を追加します。

+0

私はこれを試してみましたが、その後、私はsky.css青い背景の効果を失います。 "background-color:#f7fbfc;"私もdivにこれを追加する必要があると思いますか? – Lumo5

+2

あなたはたくさんのコードを投稿していないので、実際にあなたに伝えることはできません。 – Johannes

+0

もちろん、その背後にある要素の背景色が緩んでいます。その背景には背景色があり、背景色は透明で、DIVの背後にある要素の内容を見ることができます。その背景が欠けている場合は、自分で書いたように、 'background-color:#f7fbfc;'を 'styles'属性に追加してください。 – Johannes

1

私はvwvhのビューポート幅とビューポートの高さをそれぞれ使用しようとします。これにより、ビューポート全体が確実に覆われます。

詳しくはthis articleをご覧ください。

<div id="lessonContents" style="position:absolute; top:0px; left:0px; bottom:0px; right:0px; width:100vw; height:100vh; border:none; margin:0; padding:0; overflow:hidden; z-index:999;> 

私はまた、あなたのlessonContents div要素は、すべてのコンテンツが隠されていることを確認するためのバックグラウンドを持っていることを確認します。

+0

vwとvhを使用できませんでした。 divに背景を追加すると、すべてをカバーしますが、sky.cssテーマにはすでにバックグラウンドがあります。だから私もdivに1つ追加する必要がありますね? – Lumo5

+0

申し訳ありませんが、私のコードはちょっと改訂されました。 (ちょっとあなたのスニペットをコピーして) – AdamMcquiff

+0

ありがとう。私はそれをコピーしていないと、あなたはvhを2回使用したことに気づいた。私のコードでは、vwとvhを試しました。 – Lumo5

2

width: 100vwheight: 100vhと組み合わせてposition: absoluteを使用することをおすすめします。

#full_page { 
 
    position: absolute; 
 
    top: 0px; 
 
    left: 0px; 
 
    width: 100vw; 
 
    height: 100vh; 
 
    margin: 0; 
 
    padding: 0; 
 
    background: red; 
 
}
<div id="full_page"></div>

私はまた、このhereを展示JSFiddleを作成しました。

希望すると便利です。 :)

1

"position:absolute"をカバー区域に設定できます。

.outer { 
 
    position: relative; 
 
} 
 
.cover { 
 
    position:absolute; 
 
    top: 0; 
 
    left: 0; 
 
    height: 100vh; 
 
    width: 100vw; 
 
    background-color: blue; 
 
}
<div class="outer"> 
 
    <div class="cover"></div> 
 
    <p>Back to course</p> 
 
</div>

関連する問題