2016-11-11 21 views

回答

5

我假设你的意思,是有可能创造沿多边形的影子。如果是这样,那么不。不幸的是,box-shadow只是一个“盒子”,所以它不能遵循剪辑路径。它仍然适用于元素本身的矩形。

但是你可以与具有相同的剪辑另一个元素配对,而是被设置在其下方和偏移,并创建一个伪影:

#box { 
 
    position: relative; 
 
    width: 200px; 
 
    height: 200px; 
 
} 
 

 
#content { 
 
    width: 100%; 
 
    height: 100%; 
 
    background: #3CF; 
 
    -webkit-clip-path: polygon(0 100%, 0 0, 100% 0, 80% 100%); 
 
} 
 

 
#shadow { 
 
    position: absolute; 
 
    z-index: -1; 
 
    content: ""; 
 
    background: rgba(0, 0, 0, .5); 
 
    width: 200px; 
 
    height: 200px; 
 
    left: 5px; 
 
    top: 5px; 
 
    -webkit-clip-path: polygon(0 100%, 0 0, 100% 0, 80% 100%); 
 
}
<div id="box"> 
 
    <div id="content"></div> 
 
    <div id="shadow"></div> 
 
</div>

根据您的使用 - 情况下,通过巧妙地使用背景图像,多边框和/或渐变,可以使背景看起来具有渐变阴影,而不使用渐变阴影。

+0

是的,我改变了标题,这可能是我在这里的最好的,谢谢。 – NineCattoRules

2

我认为这是不可能的。我会建议你这个解决方法。

.triangle { 
 
font-size:100px; 
 
    color:blue; 
 
text-shadow: 0 0 10px black; 
 
    }
<span class="triangle">▲</span>

+0

:)棘手! +1这个 – NineCattoRules

+0

好戏。 +1这个 – corax