1

動画を背景にしたサイトを構築しています。すべての div を中央に配置して応答性を高めたいので、幅と高さを 100% 使用しています。次に、jqueryを使用してクリックするとフェードインおよびフェードアウトするオーバーレイdivがあります。私の問題は、この div がフェードインした後、この div の周囲に均一なマージンを確保できないように見えることです。マージンが必要な div の ID は「情報」です。

私のhtmlは次のようになります:

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8"/>
        <meta name="description" content=""/>
        <meta name="keywords"content=""/>
        <title></title>
        <link href="css/main.css" rel="stylesheet" type="text/css"/>
        <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
        <script>
$(document).ready(function(){
  $("#btn").click(function(){
    $("#info").fadeToggle("slow");
  });
});
</script>
    </head>
    <header>
        <div id="nav">
            <p><a id="btn" href="#">+</a></p>
        </div>
    </header>
    <body>
        <div id="container">
            <div id="info">
            </div>
        </div>
    </body>
    <video id="video_background" src="vid/147000037.mp4" autoplay>
</html>

そして私のCSS:

* {
    margin: 0;
    padding: 0;
}


body {
    font-family: "HelveticaNeue-UltraLight","HelveticaNeue-Light","Helvetica Neue",Helvetica,Arial,sans-serif;

}

header {
    z-index: 999;
    display: block;
    height: auto;
    width: 100%;
    position: fixed;
}

header a {
    text-decoration: none;
    font-size: 1.8em;
    color: #000000;
}

#nav {
    position: relative;
    float: right;
    top: 15px;
    right: 20px;
    color: #000000;
}


#container {
    height: 100%;
    width: 100%;
    display: block;
}

#video_background {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: -1000;
}

#info {
    height: 100%;
    width: 100%;
    background: rgba(255,255,255,0.97);
    z-index: 900;
    display: none;
    position: fixed;
    margin: 10px;
    vertical-align: center;
}
4

1 に答える 1

1

インフォボックスの位置は固定されているため、css で高さ/幅とマージンを省略し、オフセットを使用して適切なマージンを持つレスポンシブ コンテナーを作成できます。#infocss を次のように変更するだけです。

#info {
   /* omit height & width */
   background: #bada55; /* Just because white on white is tough to see */
   z-index: 900;
   display: none;
   position: fixed;
   /* omit margin and use according offsets */
   top:15px;left:15px;right:15px;bottom:15px;
   vertical-align: center;
}

ここで動作することを確認してください。

于 2013-04-12T10:31:44.100 に答える