尝试将卡片堆叠在列表中时,下面一个文本显示在下一个文本上方?

时间:2018-09-24 03:11:46

标签: css

我正在尝试在列表中创建一叠纸牌,以便可以按位置交换和组织纸牌。

但是,尽管订购也不起作用,但现在我正面临着以下卡片中的文字问题,该文字显示在最上面的卡片上方:

enter image description here

这是我到目前为止拥有的HTML和CSS代码:

.catCards {
  justify-content: space-between;
  margin: 5px;
  text-align: center;
  z-index: 1;
  margin-top: 256px;
}

.cwColumnCard {
  margin-top: -190px;
}

.cwCard {
  display: block;
  width: 160px;
  border: #FFF solid 1px;
  border-radius: 5px;
  background: #3d3d3d;
  overflow: hidden;
  height: 250px;
  box-shadow: 0px 4px 16px #000000cb;
  -webkit-box-shadow: 0px 4px 16px #000000cb;
  -moz-box-shadow: 0px 4px 16px #000000cb;
  -ms-box-shadow: 0px 4px 16px #000000cb;
  z-index: 50;
}

.cwCTitle {
  padding: 3px;
  border-bottom: 1px solid #FFF;
  text-align: center;
  font-size: 18px;
  z-index: 1;
}

.cwImage {
  margin: 0 auto;
  width: 130px;
  height: 130px;
  border: 1px solid #ccc;
  margin-top: 5px;
  z-index: 1;
}

.cwValue {
  width: 100%;
  text-align: center;
  padding: 4px;
  padding-bottom: 5px;
  padding-top: 5px;
  z-index: 1;
}

.cwSystemLabel {
  width: 100%;
  text-align: center;
  padding-bottom: 4px;
  padding-top: 4px;
  z-index: 1;
}
<div class="catCards">
  <ul>
    <li class="cwCard cwColumnCard">
      <div class="cwCTitle">Card One</div>
      <div class="cwImage">Test</div>
      <div class="cwValue">100</div>
      <div class="cwSystemLabel">Label</div>
    </li>
    <li class="cwCard cwColumnCard">
      <div class="cwCTitle">Card Two</div>
      <div class="cwImage">Test</div>
      <div class="cwValue">100</div>
      <div class="cwSystemLabel">Label</div>
    </li>
  </ul>
</div>

Z-Index是固定文本位置的简短尝试,但没有影响。是什么导致文本以这种方式显示?覆盖后,下面的卡应该被隐藏。

1 个答案:

答案 0 :(得分:0)

要使z-index属性正常工作,您需要将position属性设置为static以外的其他值。

在这种情况下,将position: relative;添加到.cwCard将解决您的问题。

.cwCard {
    display: block;
    width: 160px;
    border: #FFF solid 1px;
    border-radius: 5px;
    background: #3d3d3d;
    overflow: hidden;
    height: 250px;
    box-shadow: 0px 4px 16px #000000cb;
    -webkit-box-shadow: 0px 4px 16px #000000cb;
    -moz-box-shadow: 0px 4px 16px #000000cb;
    -ms-box-shadow: 0px 4px 16px #000000cb;
    z-index: 50;
    position: relative;
}