【发布时间】:2014-05-20 18:16:32
【问题描述】:
只要我将溢出:自动元素添加到其他 div,框中的指示箭头就会消失。以下是代码:
CSS:
<style>
.arrow_box {
position: relative;
background: #FFF;
box-shadow:0 0 5px rgba(0,0,0,0.4);
width:500px;
border:0px;
}
.arrow_box:after, .arrow_box:before {
bottom: 100%;
left: 73%;
content: " ";
height: 0;
width: 0;
position: absolute;
pointer-events: none;
}
.arrow_box:after {
border-color: rgba(136, 183, 213, 0);
border-bottom-color: #FFF;
border-width: 15px;
margin-left: -15px;
}
.arrow_box:before {
border-color: rgba(194, 225, 245, 0);
border-bottom-color: #dadee0;
border-width: 18px;
margin-left: -18px;
}
#livecart{max-height:500px;overflow-y:auto;} //Without overflow it works fine
#inicart{top:0px;}
</style>
HTML:
<div class='inicart'>
<div id='livecart' class='arrow_box'>
...
...
...
</div>
</div>
Livecart div 显示在悬停事件中,如果它的高度超过 max-height 元素,滚动条应该会出现,这是必要的。但这反过来又使箭头从屏幕上消失了。 知道为什么会这样吗?对于这个特殊问题有什么好转的吗?
这里是 jsfiddle 链接 http://jsfiddle.net/nNJSy/2/
您可以尝试从 '#livecart' 中删除 overflow:auto 并看到箭头会出现。
【问题讨论】:
-
没有足够的信息让我们诊断问题。现场演示将极大地帮助我们在您的情况下提供帮助
-
我在我的问题中添加了 jsfiddle。你可以通过它。