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] 変化Transitionの使い方

どうも、べ〜やんです。 今回は、変化の詳細を指定するTransitionを紹介します。 CSSだけで設定できるので初心者の方にもおすすめですよ。 Transitionとは transitionとは:h …

[HTML] 特殊文字で空白スペース

どうも、べ〜やんです。 今回は、特殊文字を使って空白スペースを挿入する方法を紹介します。 空白スペース htmlではひとつの半角スペースは空白スペースとして使用できますが、連続した半角スペースはひとつ …

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

どうも、べ〜やんです。 今回は、jQueryを使ってハンバーガーメニューを作る方法を紹介します。 ハンバーガーメニューとは ハンバーガーメニューとは、例えばヘッダーのメニューを隠しておいてアイコンをク …

[css] 横並び、flexboxの使い方

どうも、べ〜やんです。 今回は、CSSで要素を横並びにする方法のflexboxの基本的な使い方を紹介します。 flexboxとは? 要素を横並びに配置する方法のひとつに、flexboxがあります。 f …

[超初心者] CSSとは

どうも、べ〜やんです。 HTMLに続き超初心者の方用に、マークアップ言語のCSSとはついて書きます。 CSSとは何か? CSSとは、Cascading Style Sheets(カスケーディング・スタ …