2016-09-11 15 views

答えて

5

box-shadowが動作しませんので、あなたが三角形にドロップシャドウフィルタを適用する必要があります。

.triangle { 
 
    width: 0; 
 
    height: 0; 
 
    border-style: solid; 
 
    border-width: 200px 200px 0 0; 
 
    border-color: #007bff transparent transparent transparent; 
 
    -webkit-filter: drop-shadow(1px 1px 1px rgba(0,0,0,.5)); 
 
    filter: drop-shadow(1px 1px 1px rgba(0,0,0,.5)); 
 
}
<div class="triangle"></div>

+1

これは動作します!完璧!ありがとうございました! –

2

あなたが角度の勾配を使用することによって国境を使用せずに、このを作ることができます。正直なところ

div { 
 
    width: 200px; 
 
    height: 200px; 
 
    margin: 2em auto; 
 
    background: linear-gradient(to bottom right, #007bff 50%, rgba(0,0,0,.5) 50%, transparent 52%); 
 
}
<div></div>

+0

このコードは*動作しますが、実際のドロップシャドウの代わりにグラデーションを使用するため、シャドウ効果を制御するのが少し難しくなります。また、実際のボックスが長方形であるため、シャドウは切り取られます。 – Anselm

1

人々はあなたがSVGを使用してセマンティックHTMLを書くことができたときにこれらの形状を使い続ける理由を、私は知りません。

.triangle { 
 
    height: 200px; 
 
    width: 200px; 
 
    color: #007bff; 
 
    -webkit-filter: drop-shadow(1px 1px 1px rgba(0, 0, 0, .5)); 
 
    filter: drop-shadow(1px 1px 1px rgba(0, 0, 0, .5)); 
 
}
<svg class="triangle"> 
 
    <polygon points="0,0 200,0 0,200" fill="currentColor" /> 
 
</svg>

関連する問題