その他

border で作る三角形

borderで描く三角形のCSS

See the Pen 三角形 by チータツ (@cheese_fuji) on CodePen.

CSSの解説

  • 疑似要素を作成(pタグじゃなくてもOK)
  • 透明なボーダー border: 16px solid transparent で空白で囲い、透明な四角形を作る
  • 向けたい方向と逆側の border-color に色を付ける
CSSを使った三角形の描き方

何もない空間を border で囲うと隙間のない正四角形になります。borderで作られた四角形は上下左右に配置された三角形で構成されているため、特定の辺に色をつけることで三角形が出来上がります。

応用CSS

borderの特性を活かすことで三角形の形を変えることも可能です。なお、向けたい方向の逆側に色を付けるのは同様です。

正三角形

正三角形を作る場合は高さを決めて、両辺を高さの 1/√3 倍に設定します。(1.73倍ぐらいで大丈夫です)

例えば上向きの三角形であれば、border-bottomで色付きの三角形を描き、border-right, border-left にその 1/1.73 倍の長さの透明な三角形を描きます。

See the Pen Untitled by チータツ (@cheese_fuji) on CodePen.

よほどのこだわりがなければ、あまり使うことはありません

二等辺三角形

上下もしくは左右のペアを斜辺にして、底辺になる border に高さ(h)をセットします。斜辺と高さが 1:2 の比率になるようにしましょう。

See the Pen 二等辺三角形 by チータツ (@cheese_fuji) on CodePen.

砂時計

なんとなく砂時計に見えるよね、という程度のクオリティ。topとbottomに色を付けることで、三角形を二つ並べています。

See the Pen Untitled by チータツ (@cheese_fuji) on CodePen.

おすすめの使い方

三角形は主に疑似要素として描き、リストやブロックなどが「展開可能」であることを表現するために使います。

  • ボタン
  • アコーディオン(展開可能なブロック)
  • ドロップダウンメニュー
  • 疑似要素で文字の後ろに配置して展開できることを示す