Z索引未堆叠

时间:2019-04-05 18:40:11

标签: html css sass

我已经尝试了很长时间,并且已经阅读了许多文章,但我还是听不懂!我试图将那个小图标移到标题的左侧,但是由于某种原因,它堆叠在父元素下方!

这是我的CSS:

        .step__content {
            margin-top: 120px;
            position: relative;

            div.ui-accordion-header {
                margin-left: 30px;

                &:after {
                    content: '';
                    position: absolute;
                    height: 20px;
                    width: 20px;
                    left: -7px;
                    background-image: url('../images/i.svg');
                    z-index: 100;
                }
            }
        }

这是html: enter image description here

第一个:after元素是图标!

这是一张图片:

enter image description here

我希望图标位于标题的左侧!但是当我向左推时,它会降到下方吗?该图标的完整图像不可见,因为下面有一半!

2 个答案:

答案 0 :(得分:2)

我认为实际上正在发生的是伪元素刚刚超出overflow: hidden;元素的范围...

这对我有用(即使您删除了z-index样式)。 如您所见,psuedo元素位于文本上方。尝试将:after z-index更改为-5,该值会降至以下。

.step__content {
  margin-top: 120px;
  position: relative;
}

.ui-accordion-header {
  position: relative;
  margin-left: 50px;
  z-index: 1;
}

.ui-accordion-header:after {
  content: '';
  position: absolute;
  display: block;
  height: 30px;
  width: 30px;
  margin: auto;
  top: 0;
  bottom: 0;
  left: -20px;
  background-image: url('https://via.placeholder.com/150');
  background-size: cover;
  background-position: center;
  z-index: 5;
}
<div class="step__content">
  <div class="ui-accordion-header">
    <p>Headers</p>
  </div>
</div>

答案 1 :(得分:0)

我在伪元素之前使用。

  .step__content {
            margin-top: 120px;
            position: relative;

            div.ui-accordion-header {
                margin-left: 30px;

                &::before {
                    content: 'testing';
                    height: 20px;
                    width: 20px;
                    z-index: 100;

                }
            }
        }
<div class="step__content">

<section class="ce_accordionStart ce_accordino block">
  <div id="ui-id-1" class="ui-accordion-header ui-accordion-header-active ui-state-active">

  <span class="ui-accordion-header-icon ui-icon ui-icon-triangle-1-s">
    Header
  </span>
  </div>
</section>
</div>