首页 文章

如何自动高度,div的z索引内容的宽度

提问于
浏览
0

我试图自动div的父高度宽度,其中有3个图像堆叠在一起,但父亲没有采取内容的高度和宽度,即使div和最后一个图像在同一个z-index上;这里是一个正在发生的事情和我想要的例子,我不能使用静态值,因为它需要响应here is the illustration

这是我的代码:

.image_holder {
        margin-top: 5em;
      
        overflow: visible;
        background-color: red;
     display:block;
       z-index: -12;
        position:relative;
         border-style: solid;
  border-width: 5px;
  border-color:red;
    }

.image_preview_parent {
    position: absolute;
}


/*----------layers start---------*/
.layer_Back {
    z-index: -12;
}

.layer_Camera {
    z-index: -11;
}

.layer_Logo {
    z-index: -10;
}
<div class="image_holder">
  <img class="image_preview_parent layer_Logo" src="https://www.transparencyatwork.org/assets/fallback/employers/logo/thumb_default-9fbd6d06cb43649ddc8bfd34eb4b1192396a73474ce3c27cb5830b9edf86ae23.png" />
 <img class="image_preview_parent layer_Camera" src="https://freepngimg.com/thumb/sunglasses/14-2-sunglasses-transparent-thumb.png" />
                            <img class="image_preview_parent layer_Back" src="https://d33wubrfki0l68.cloudfront.net/673084cc885831461ab2cdd1151ad577cda6a49a/92a4d/static/images/favicon.png" />
  </div>

1 回答

  • 0

    不要制作所有图像 position:absolute ,因为您将从流中删除所有图像,因此没有定义容器高度的流入内容 . 保持至少一个 position:relative . 您还可以将容器更改为 inline-block 以使宽度适合内容 .

    作为旁注, z-index 在这里无关,所以你将使用它的值只会影响堆栈顺序而不影响高度或宽度:

    .image_holder {
      margin-top: 5em;
      overflow: visible;
      background-color: red;
      display: block;
      z-index: 10;/*this is the parent element so any value should be enough, you don't need to make it lower that the child */
      position: relative;
      border-style: solid;
      border-width: 5px;
      border-color: red;
      display:inline-block; /*to fit the width*/
    }
    
    .image_preview_parent {
      position:relative;
    }
    .image_preview_parent:not(:first-child) {
      position: absolute;
      left:0;
      top:0;
    }
    
    
    /*----------layers start---------*/
    
    .layer_Back {
      z-index: -2;
    }
    
    .layer_Camera {
      z-index: -1;
    }
    
    .layer_Logo {
      z-index: 0;
    }
    
    <div class="image_holder">
      <img class="image_preview_parent layer_Logo" src="https://www.transparencyatwork.org/assets/fallback/employers/logo/thumb_default-9fbd6d06cb43649ddc8bfd34eb4b1192396a73474ce3c27cb5830b9edf86ae23.png" />
      <img class="image_preview_parent layer_Camera" src="https://freepngimg.com/thumb/sunglasses/14-2-sunglasses-transparent-thumb.png" />
      <img class="image_preview_parent layer_Back" src="https://d33wubrfki0l68.cloudfront.net/673084cc885831461ab2cdd1151ad577cda6a49a/92a4d/static/images/favicon.png" />
    </div>
    

相关问题