問題
解決策
cssによる三角形の実現
簡易的な吹き出しなどで、三角形のパーツを使用する場面はよく遭遇するのではないでしょうか。
そんな時、cssで三角形を作り、作業の負担を軽減させましょう!
まず、HTMLの構築を行います。
divタグを構築します。
便宜上、ここではdivタグに「triangle」というクラスを設定しています。
<div class="triangle">
<p>下に三角形を表示させます。</p>
</div>
次にCSSの構築を行います。
divタグのクラス「triangle」に、「position: relative;」を設定します。
そして疑似要素afterを構築します。
「position: absolute;」で位置を調整し、幅も高さも0にして、「border」を設定します。
「border」はtop以外は「transparent」に設定して透過させます。
.triangle{
position: relative;
padding: 10px 15px;
background-color: #fef5f2;
}
.triangle:after{
content: "";
display: block;
width: 0;
height: 0;
position: absolute;
right: 0;
bottom: -50px;
left: 0;
margin: auto;
border-top: 25px solid #FCECE8;
border-right: 10px solid transparent;
border-bottom: 25px solid transparent;
border-left: 10px solid transparent;
}
DEMOはこちら
下に三角形を表示させます。
ポイント!
「border」で一辺以外を透過させることで、線が斜めに切り取られ、三角の形状で出力されます。
上向きの三角形を作りたい場合は、bottom以外を「transparent」で透過すれば実現することができます。
応用の仕方次第で色々な場面で使えますので、ぜひ試してみてください。

コメント