CSSだけで作る!::beforeと::afterを使った矢印アイコンの実装方法【クラス名:.sample-arrow】
WebサイトやUIデザインで「矢印アイコン」はよく使われる要素のひとつ。
画像を使う方法もありますが、CSSだけで軽量&柔軟に矢印を表現する方法をご存知ですか?
この記事では、CSSの::before
や::after
擬似要素を活用し、
画像を使わずに矢印を作るテクニックを紹介します。
クラス名は .sample-arrow
として、簡単にコピペできるコード付きで解説します。
基本:CSSだけで作る「右向き矢印」
まずは、三角形の形で矢印を作るスタンダードな方法です。
▼ HTML
<div class="sample-arrow"></div>
▼ CSS
.sample-arrow {
display: inline-block;
width: 0;
height: 0;
border-top: 8px solid transparent;
border-bottom: 8px solid transparent;
border-left: 12px solid #e98085; /* 矢印の色 */
margin-left: 10px;
}
✔ ポイント解説
width: 0; height: 0;
→ ボックスそのものを見えなくするborder-left
に色をつけることで、右向きの三角を形成- 他の3方向のborderに
transparent
を指定して非表示化
■ 応用:::before
と::after
で作るスラッシュ型矢印
よりカスタム感のある、斜めラインを使った「▶」のような矢印も可能です。
▼ HTML
<div class="sample-arrow"></div>
▼ CSS
.sample-arrow {
position: relative;
display: inline-block;
width: 30px;
height: 30px;
}
.sample-arrow::before,
.sample-arrow::after {
content: '';
position: absolute;
width: 15px;
height: 3px;
background-color: #e98085;
top: 50%;
left: 50%;
transform-origin: left center;
}
.sample-arrow::before {
transform: translate(-50%, -50%) rotate(45deg);
}
.sample-arrow::after {
transform: translate(-50%, -50%) rotate(-45deg);
}
✔ メリット
- 線の太さや角度を自由に調整可能
- ホバーアニメーションとの相性も良好
■ 実装例の比較
スタイル | 説明 | クラス |
---|---|---|
三角形型 | borderで描く矢印(軽量・応用しやすい) | .sample-arrow (border法) |
スラッシュ型 | before/afterを使ったカスタム矢印 | .sample-arrow (斜線法) |
■ まとめ
画像を使わず、CSSだけで作れる矢印アイコンは、
- ページの読み込み速度が速くなる
- 色やサイズを簡単に変更できる
- SVGやWebフォントに頼らず、軽量に実装できる
という大きなメリットがあります。
ぜひ .sample-arrow
クラスを活用して、
あなたのWebデザインにスマートな矢印を取り入れてみてください。
おまけ:左矢印にしたいときは?
三角形の border-left
を border-right
に変えるだけでOK!
.sample-arrow-left {
display: inline-block;
width: 0;
height: 0;
border-top: 8px solid transparent;
border-bottom: 8px solid transparent;
border-right: 12px solid #e98085;
}
CSSだけで簡単!画像を白黒→カラーに切り替えるマウスオーバーエフェクト
6月 18, 2025leading-trimとtext-edgeでタイポグラフィを美しく整えるCSSテクニック
6月 15, 2025CSSだけで作る!滑らかにループするスライダーの実装方法
4月 16, 2025