jquery - css overflow hidden 不符合z-index的规则

标签 jquery css z-index

我有一个关于 div 位置的问题。

我创建了这个 DEMO 。如果您单击演示,您可以看到有 3 个图像。当您将鼠标悬停在图像上时,气泡 div 将打开。但它没有显示我在外面。

.bubble 
{
    position: absolute;
    width: 345px;
    height: auto;
    padding: 3px;
    background: #FFFFFF;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    border-radius: 2px;
    border: #d8dbdf solid 1px;
    -webkit-box-shadow: -1px 1px 1px 0px rgba(216, 219, 223, 0.52);
    -moz-box-shadow:    -1px 1px 1px 0px rgba(216, 219, 223, 0.52);
    box-shadow:         -1px 1px 1px 0px rgba(216, 219, 223, 0.52);
    display:none;
    margin-left:-345px;
}

.bubble:after 
{
    content: '';
    position: absolute;
    border-style: solid;
    border-width: 10px 0 10px 10px;
    border-color: transparent #fff;
    display: block;
    width: 0;
    z-index: 1;
    right: -10px;
    top: 16px;
}

最佳答案

问题是overflow hidden不符合Z-index的规则。隐藏在框外的任何东西都被认为是在文档之外。您需要找到一种满足您的能力的方法。

子元素不能显示在父元素的外面 overflow:hidden

$('#members-bio').bxSlider({
  slideWidth: 300,
  minSlides: 2,
  maxSlides: 2,
  slideMargin: 10
});
$(document).ready(function() {
  $('figure').click(function() {
    var memberDetails = $(".member-details"),
      item = $(this),
      listLeft = (item.offset().left) + 60;
    memberDetails.offset({
      left: listLeft
    }).addClass('active-member');
  });
});
figure {
  margin: 0;
}
.member {
  position: absolute;
  top: 50px;
  left: 50%;
  width: 150px;
  height: 250px;
  margin-left: -75px;
  background: red;
  z-index: 9999;
}
.member-details {
  background-color: #fff;
  border: 1px solid #333;
  width: 140px;
  position: absolute;
  top: 150px;
  opacity: 0;
  display: none;
}
.active-member {
  display: block;
  opacity: 1;
}
<div id="members-div">
  <ul id="members-bio">
    <li class="slide">
      <figure>
        <img src="http://placehold.it/350x150&text=product">
      </figure>
    </li>
    <li class="slide">
      <figure>
        <img src="http://placehold.it/350x150&text=product">
      </figure>
    </li>
    <li class="slide">
      <figure>
        <img src="http://placehold.it/350x150&text=product">
      </figure>
    </li>
    <li class="slide">
      <figure>
        <img src="http://placehold.it/350x150&text=product">
      </figure>
    </li>
    <li class="slide">
      <figure>
        <img src="http://placehold.it/350x150&text=product">
      </figure>
    </li>
    <li class="slide">
      <figure>
        <img src="http://placehold.it/350x150&text=product">
      </figure>
    </li>
    <li class="slide">
      <figure>
        <img src="http://placehold.it/350x150&text=product">
      </figure>
    </li>
    <li class="slide">
      <figure>
        <img src="http://placehold.it/350x150&text=product">
      </figure>
    </li>
    <li class="slide">
      <figure>
        <img src="http://placehold.it/350x150&text=product">
      </figure>
    </li>
    <li class="slide">
      <figure>
        <img src="http://placehold.it/350x150&text=product">
      </figure>
    </li>
  </ul>
  <div class="member-details">
    <p>Product name</p>
    <p>Product details</p>
    <p>buy now</p>
  </div>
</div>

关于jquery - css overflow hidden 不符合z-index的规则,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26607492/

相关文章:

javascript - 无法使用 JQuery 更改 z-index

jquery - 如何使 Jquery 菜单粘性

jquery - 使用 jquery $(this) 识别选择下拉文本

javascript - parseInt 值没有错误

php - Opencart:CSS(基于路由维护)

javascript - 事件处理程序在循环中无法正常工作

jquery - Django : Update div with AJAX

html - 两个div并排,右侧是一个固定位置框

html - z-index 无法正常运行

css - HTML/HTML5 矩形 z-index