javascript - CSS overlay div 显示不正确

标签 javascript jquery html css

我需要在点击内容上的按钮后显示 div。导致显示 dev 的按钮不在页面顶部(您必须向下滚动)。但是overlay div显示错误,就像图片一样。如何修改代码以始终在页面中间显示覆盖 div。

enter image description here

HTML:

 <div id="rating_overlay"></div>
<div id="rating_content">
    <div class="overlay_exit">
        <a href="javascript:void(0)" onmousedown="toggleOverlay()" title="Zavřít">
            <i class="fa fa-times fa-2x"></i>
        </a>
    </div>
    <h2>Přidat hodnocení</h2>
    <div id="profil_add_rating">
       <!-- Content -->
    </div>
</div>
<div id="rating_wrapper"></div>
<script type="text/javascript">
    function toggleOverlay() {
        var overlay = document.getElementById('rating_overlay');
        var specialBox = document.getElementById('rating_content');
        overlay.style.opacity = .8;
        if (overlay.style.display == "block") {
            overlay.style.display = "none";
            specialBox.style.display = "none";
        } else {
            overlay.style.display = "block";
            specialBox.style.display = "block";
        }
    }
</script>

CSS:

 #rating_overlay {
    display: none;
    z-index: 2;
    background: #000;
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
    text-align: center;
}
#rating_content {
    display: none;
    position: relative;
    z-index: 3;
    padding: 16px;
    margin: 150px auto 0px auto;
    width: 500px; 
    height: 260px;
    background: #FFF;   
    text-align: left;
}

#rating_wrapper {
    position:absolute;
    top: 0px;
    left: 0px;
    padding-left:24px;
}

编辑: position: fixed 的解决方案有效,但我将使用 http://drublic.github.io/css-modal/ .

最佳答案

CSS 的 position: fixed; 是你的 friend

position fixed 表示“把这个元素放在根据窗口的绝对位置”

“始终位于顶部和中心(水平)”的 CSS 可以是:

#rating_wrapper{
  position: fixed;
  top: 0;
  left: 50%;
  width: 200px;
  margin-left: -100px;
}

编辑: jsfiddle 展示:http://jsfiddle.net/m4Fbk/

CZ: fixni pozice je popsana i na jakpsatwebu ;) http://www.jakpsatweb.cz/css/position.html

关于javascript - CSS overlay div 显示不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21628557/

相关文章:

javascript - Jquery 验证和 CSS

javascript - ajax 生成文本中的链接

jquery - 如何通过 jQuery 脚本查看我的 HTML 发生的变化?

javascript - 如何在文本输入 HTML 中添加多个电子邮件地址

python - 如何从数据库中获取与ID对象的关联

javascript - jQuery Mobile 下拉菜单导致页面重新加载

javascript - Gulp - 管理库依赖项

JavaScript异常处理——显示行号

javascript - document.getElementById ('button' ).click() 在我的电脑上工作但在另一台电脑上不起作用

javascript - JQuery 动画 Z 索引?