如何制作响应式弹出式div?

时间:2015-01-30 15:32:38

标签: javascript css popup

基本上我的网站是响应式的,但下面是我的弹出式div div的代码在桌面上运行良好,但在移动肖像上它只是离开了屏幕,我需要使这个div也响应。此外,我希望这个div出现在屏幕上与fadein或其他动画,我不知道如何使用现在。请帮忙

HTML就在这里:

    <section id="html" class="content-section text-center">
      <div class="download-section">
        <div class="container">
            <div class="col-lg-8 col-lg-offset-2">
                <h2>HTML Tutorials</h2>
                <p></p>
                <a href="javascript:void(0)" class="btn btn-default btn-lg"       onclick="toggle_visibility('popupBoxHTML');">More HTML Tutorials</a>
                <div id="popupBoxHTML">
                <div class="popupBoxWrapper">
                    <div class="popupBoxContent">
                        <h3>HTML</h3>
                        <p>You are currently viewing HTML Box.</p>
                        <p>Click <a href="javascript:void(0)"    onclick="toggle_visibility('popupBoxHTML');">here</a> to close popup box one.  </p>
                    </div>
                </div>
            </div>
        </div>
     </div>
   </section>

CSS在这里:

#popupBoxOnePosition, #popupBoxHTML{
 margin:10px 0 0 0;
 top: 0; 
 left: 0; 
 position: fixed; 
 width: 100%; 
 height: 100%;
 background:#333; 
 display: none; 
 opacity:.95; 
 z-index:100;
 widows:50%;

 }

 .popupBoxWrapper{
 width: 550px;
 margin: 
 50px auto; 
 text-align: left;

 }
 .popupBoxContent{
   background-color:
  #000; 
 padding: 
  15px; 
 opacity:1;
 border-radius:15px;
 -o-box-shadow:0 0 50px ##219ab3;
 -moz-box-shadow:0 0 50px ##219ab3;
 -webkit-box-shadow:0 0 50px ##219ab3;
 -ms-box-shadow:0 0 50px ##219ab3;
 transition:ease-in;
 transition-delay:1s;
 -webkit-transition:ease-in;
}

javascript在这里:

    function toggle_visibility(id) {
               var e = document.getElementById(id);
               if(e.style.display == 'block')
                  e.style.display = 'none';
               else
                  e.style.display = 'block';

            }

3 个答案:

答案 0 :(得分:2)

您需要添加媒体查询才能使其响应。

@media only screen and (max-width: 600px) {
 .popupBoxWrapper{
     width:100%;
  }
}

当屏幕宽度低于600px时,此css将使弹出窗口的宽度为100%而不是固定的550px。所以这将使div适合屏幕。

答案 1 :(得分:1)

无需css媒体查询。

只需将您的CSS更改为以下内容即可。 更新宽度:550px到最大宽度:550px并添加宽度:95%; 当屏幕小于550px时,剩余的5%宽度可以让您看起来像是弹出窗口。

[_captureSession startRunning];

答案 2 :(得分:0)

Bootstrap Modals

Remodal

  

平坦,响应迅速,轻量级,易于定制的模态窗口插件   使用声明式状态表示法和哈希跟踪。