防止div在其父div上不覆盖滚动条

时间:2015-09-23 09:07:17

标签: angularjs css3 angularjs-directive ng-dialog

上下文 我试图解决这里提到的问题:https://github.com/likeastore/ngDialog/issues/94

问题: 打开plnkr:http://plnkr.co/edit/qKJiNwyivqJVCAtyhwYR?p=preview并尝试用鼠标按住并拖动滚动条。父容器上的滚动条不适用于鼠标。顺便说一句,正在发生的是position:fixed div.overlay与其父容器的滚动条重叠。

HTML:

<div class="container">
  <div class="overlay"></div>
  <div class="content">
    <div>I'm large 1</div>
    <div>I'm large</div>
    <div>I'm large</div>
    <div>I'm large</div>
    <div>I'm large</div>
  </div>
</div>

CSS

.container{
    position: fixed;
    overflow: auto;
    z-index: 10000;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;  
    padding: 160px;
}

.container .overlay{
    position: fixed;
    background: rgba(0, 0, 0, 0.4);
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

.container .content{
    background: #f0f0f0;
    border-radius: 5px;
    max-width: 100%;
    position: relative;
}

1 个答案:

答案 0 :(得分:0)

我认为您应该将HTML更改为

<div class="overlay"></div>
<div class="container">
  <div class="content">
  </div>
</div>
</div>

不要忘记改变CSS。 http://plnkr.co/edit/QsQBk5oJfWuCymBwUtYB?p=preview