CODING

[CSS] :beforeと:afterでハンバーガーメニューを作る

投稿日:


どうも、べ〜やんです。

今回は、:beforeと:afterでハンバーガーメニューを作る方法を紹介します。





:beforeと:afterを使った方法


以前spanを使ったハンバーガーメニューの作り方も紹介しましたが、今回は:beforeと:afterを使ったハンバーガーメニューの作り方を紹介します。

またjQueryの指定については以前の記事を確認してください↓

[jQuery] jQueryでハンバーガーメニューを作る

今回紹介する:beforeと:afterで作る方法の方がHTMLの記述を減らせるので管理しやすいと思います。


作り方


<div class="icon"></div>

HTMLはこれだけです。

最初に2本目の棒を作ります。

.icon {
  width: 60px;
  height: 8px;
  color: #333;
  background: currentColor;
  position: relative;
  margin-top: 25px; 
}

2本目の棒なのでmargin-top: 25px;で高さに余裕を持たせています。

.icon:before {
  content: "";
  position: absolute;
  top: -15px;
  width:  100%;
  height: 100%;
  background: currentColor;
}

次は擬似要素:beforeを指定します。

position: absolute;top: -15px;で最初に作った棒の上に位置を指定します。

width: 100%;height: 100%;で先ほどと同じ大きさになります。

.icon:after {
  content: "";
  position: absolute;
  top: 15px;
  width:  100%;
  height: 100%;
  background: currentColor;
}

次は擬似要素:afterを指定します。

position: absolute;top: 15px;で最初に作った棒の下に位置を指定します。

See the Pen BaaMKvY by beeyan (@orientado) on CodePen.


おわりに


今回は、:beforeと:afterでハンバーガーメニューを作る方法を紹介しました。

今回はCSSの指定のみ紹介しましたので、jQueryの指定についてはこちらを確認してください↓

[jQuery] jQueryでハンバーガーメニューを作る



-CODING
-,

執筆者:


comment

関連記事

[CSS] linear-gradient()グラデーション

どうも、べ〜やんです。 今回は、グラデーションを指定するlinear-gradient()を紹介します。 linear-gradient()とは linear-gradient()は背景色をグラデーシ …

[HTML] 表を作るtable

どうも、べ〜やんです。 今回はHTMLでtableタグを使って表を作る方法を紹介します。 表の例 表を使う 表を使うと伝えたい情報を分かりやすく伝えることができます。 HTMLには簡単に表を作れる便利 …

[jQuery] jQueryのアコーディオンの作り方

どうも、べ〜やんです。 今回は、jQueryでのアコーディオンの作り方を紹介したいと思います。 アコーディオンとは よくメニューバーやQ&Aなどで使われているクリックすると、楽器のアコーディオ …

[CSS] CSSで吹き出し風デザイン・三角形

どうも、べ〜やんです。 今回は、三角形の作り方と吹き出し風のデザインの作り方を紹介します。 三角形がぴょこって付いているアレです。 三角形 まずはCSSで三角形を作る方法をざっくり紹介します。 三角形 …

[CSS] 3点リーダーの作り方

どうも、べ〜やんです。 今回は、3点リーダーの作り方を紹介します。 3点リーダーとは 3点リーダーって知ってますか? 文章が長くて表示仕切れない場合に、はみ出た部分を「…」とピリオド3つで …