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] Flexboxの子要素

どうも、べ〜やんです。 今回は、Flexboxの使い方の子要素に使うプロパティを紹介します。 横並び、親要素についてはこちら↓ [css] 横並び、flexboxの使い方 flexboxの種類 (子要 …

アイコンを簡単に表示できる!Icongram

どうも、べ〜やんです。 今回は、簡単にアイコンを表示できるサービス『Icongram』を紹介します。 Icongramとは 引用元:Icongram Icongramは9つのアイコンライブラリからAP …

[CSS] CSSの単位vwやvh知ってますか?

どうも、べ〜やんです。 今回は、CSSで使用される単位のvw、vhを紹介します。 Viewport ビューポート vwやvhは、Viewport  Width、Viewport  heightの略で、 …

[CSS] CSSでチェックマークを作る方法

どうも、べ〜やんです。 今回はCSSでチェックマークを作る方法を初心者の方用に紹介します。 リストなどのデザインのバリエーションを増やすのに便利です。 チェックマーク リストなどによく使われるチェック …

BEMを意識しよう

どうも、べ〜やんです。 今回は、代表的なCSSの設定規則のBEMの基礎を紹介します。 HTML、CSSに慣れてきた方やクラス名で迷ってしまう方、チームでプロジェクトを進めたい方におすすめです。 BEM …