在css三角的箱子阴影

时间:2015-09-21 16:20:35

标签: css css3 zurb-foundation box-shadow

我有一些列表元素,后面有一个css三角形箭头。我想在箭头周围添加box-shadow,但无法弄清楚为什么我的阴影不起作用。我尝试过其他解决方案,但这些解决方案使用::after伪元素来制作三角形,但我的三角形是一个单独的div。非常感谢任何帮助。

#shippingsteps li {
  padding: 15px 15px 15px 35px;
  background: #ececec;
  float: left;
  display: block;
}
#shippingsteps li a {
  color: #4A4947
}
#shippingsteps li span {
  background: #7c7a7b;
  color: white;
}
#shippingsteps li.active {
  background: black;
  color: white;
  font-weight: bold
}
#shippingsteps li.active a {
  color: white;
}
#shippingsteps li.active span {
  background: #C60001;
  color: white;
  border-color: #C60001
}
#shippingsteps li::after {
  border: none;
}
#shippingsteps li .nav-arrow {
  border-color: transparent transparent transparent #ececec;
  border-style: solid;
  border-width: 31px 0 30px 20px;
  ;
  height: 0;
  position: absolute;
  right: -19px;
  top: 0;
  width: 0;
  z-index: 150;
}
#shippingsteps li .nav-arrow::after {
  -moz-border-bottom-colors: none;
  -moz-border-left-colors: none;
  -moz-border-right-colors: none;
  -moz-border-top-colors: none;
  border-color: transparent transparent transparent #ececec;
  border-image: none;
  border-style: solid;
  border-width: 31px 0 30px 20px;
  box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.4);
  content: "";
  position: absolute;
  right: 3px;
  top: -32px;
  transform: rotate(31deg);
  z-index: 100;
}
#shippingsteps li.active .nav-arrow {
  border-color: transparent transparent transparent #000;
}
<ul class="clearfix" id="shippingsteps">
  <li class="first active">
    <div class="nav-arrow"></div>
    <span>1</span><a data-target="checkout_login" href="#">
        Checkout Method </a>
  </li>
  <li>
    <div class="nav-arrow"></div>
    <span>2</span><a data-target="billing_shipping" href="#">
        Billing &amp; Shipping</a>
  </li>
  <li>
    <div class="nav-arrow"></div>
    <span>3</span><a data-target="order_review" href="#">
        Your Order &amp; Payment</a>
  </li>
  <li><span>4</span><a href="#">
        Confirmation</a>
  </li>
</ul>

PS:试图在灰色三角形周围放置阴影,黑色阴影不需要任何阴影。

1 个答案:

答案 0 :(得分:6)

如先前在CSS box shadow around a custom shape?中所述,您希望将属性filter:drop-shadow(0 1px 2px rgba(0,0,0,.5))与所有供应商前缀一起使用。