Z索引不适用于带有剪切路径的伪元素 [英] Z-index not working on pseudo-element with clip-path

查看:35
本文介绍了Z索引不适用于带有剪切路径的伪元素的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试使用伪元素为我的剪辑路径创建边框.我已经尝试过更改它们的位置,而我的伪元素仍然停留在其顶部.我该如何更改?您可以在这里看到我的代码.

I'm trying to create a border to my clip path using pseudo-elements. I have already tried to change positioning in them and my pseudoelement still stay on top of it. How can I change this? You can see my code in here.

#shield {
  z-index: 1;
  background-color: red;
  box-shadow: 1px 1px 1px black;
  background-image: url("https://upload.wikimedia.org/wikipedia/commons/9/91/Bras%C3%A3o_Porto_Feliz.png");
  background-size: 50%;
  background-repeat: no-repeat;
  background-position: center;
  background-blend-mode: multiply;
  display: inline-block;
  height: 120px;
  width: 200px;
-webkit-clip-path: polygon(100% 0, 100% 75%, 50% 100%, 0% 75%, 0 0);
clip-path: polygon(100% 0, 100% 75%, 50% 100%, 0% 75%, 0 0);
}

#logo {
  width: 100px;
  height: 100px;
}
#shield::before {
  top: 0;
  left: 0;
  transform: scale(1.2);
  content:"";
  display: block;

  width: 100%;
  height: 100%;
  background-color: black;
  position: absolute;
  z-index: -1; 
  
}

		      <div class="navbar-brand navbar-brand-centered" id="shield">
          </div>

要查看我想要的内容,只需删除:: before元素

To see what I wanted to be in top of things, just delete the ::before element

完整示例位于此处

先谢谢您了:)

推荐答案

只需翻转一下即可.在::: after中使用背景图片,并在实际div中使用黑色.

Just flip it around. Use your background image in your ::after and your black color for the actual div.

#shield {
  z-index: 1;
  background-color: black;
  box-shadow: 1px 1px 1px black;
  position: relative;
  
  
  display: inline-block;
  height: 120px;
  width: 200px;
-webkit-clip-path: polygon(100% 0, 100% 75%, 50% 100%, 0% 75%, 0 0);
clip-path: polygon(100% 0, 100% 75%, 50% 100%, 0% 75%, 0 0);
}

#logo {
  width: 100px;
  height: 100px;
}
#shield::before {
  top: 0;
  left: 0;
  transform: scale(1.2);
  content:"";
  display: block;

  width: 100%;
  height: 100%;
  background-image: url("https://upload.wikimedia.org/wikipedia/commons/9/91/Bras%C3%A3o_Porto_Feliz.png");
  background-repeat: no-repeat;
  background-position: center;
  background-blend-mode: multiply;
  
  position: absolute;
  z-index: 1; 
  background-size: 50%;
}

<div id="shield"></div>

这篇关于Z索引不适用于带有剪切路径的伪元素的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆