質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
CSS3

CSS(Cascading Style Sheet)の第3版です。CSS3と略されることが多いです。色やデザインを柔軟に変更することが可能になります。

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Q&A

1回答

1239閲覧

ハンバーガーメニューを開いてリンクをクリックしたら、Xをハンバーガーメニューに戻したいです。

hiko-36

総合スコア0

CSS3

CSS(Cascading Style Sheet)の第3版です。CSS3と略されることが多いです。色やデザインを柔軟に変更することが可能になります。

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

0グッド

0クリップ

投稿2021/07/16 16:18

編集2021/07/20 00:32

前提・実現したいこと

現在、コーディングをしているのですがレスポンシブ対応でスマホサイズにした時のハンバーガーメニューを実装してる最中です。
ハンバーガーメニュー部分とメニューの開閉じたいは実装できたのですが、ハンバーガーメニュー内のリンクを押してもx印のままメニューが閉じてしまうので、閉じる際にハンバーガーメニューの形に戻したいです。

発生している問題・エラーメッセージ

ハンバーガーメニュー内のリンクを押して、メニューは自体は閉じるがX印のままになってしまいます。

該当のソースコード

HTML

1<!DOCTYPE html> 2<html lang="ja"> 3<head> 4 <meta charset="UTF-8"> 5 <meta name="viewport" content="width=device-width,initial-scale=1.0"> 6 <link rel="stylesheet" href="stylesheet.css"> 7 <link rel="stylesheet" href="responsive.css"> 8 <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.15.3/css/all.css" integrity="sha384-SZXxX4whJ79/gErwcOYf+zWLeJdY/qpuqC4cAa9rOGUstPomtqpuNWT9wdPEn2fk" crossorigin="anonymous"> 9 <title>fassion</title> 10</head> 11<body> 12 <header> 13 <img src="images/logo.png" /> 14 <input type="checkbox" id="menu-btn-check"> 15 <label for="menu-btn-check" class="menu-btn"><span></span></label> 16 <input type="checkbox" id="drawer-btn"> 17 <label for="drawer-btn" class="header-menu li a"> 18 19 <nav> 20 <ul class="header-menu"> 21 <li><a href="#top"><i class="fas fa-angle-right"></i>TOP</a></li> 22 <li><a href="#message"><i class="fas fa-angle-right"></i>MESSAGE</a></li> 23 <li><a href="#gallery"><i class="fas fa-angle-right"></i>GALLERY</a></li> 24 <li><a href="#brand"><i class="fas fa-angle-right"></i>BRAND</a></li> 25 <li><a href="#project"><i class="fas fa-angle-right"></i>PROJECT</a></li> 26 <li><a href="#company"><i class="fas fa-angle-right"></i>COMPANY</a></li> 27 </ul> 28 <div class="header-icon"> 29 <a href="#"><i class="fab fa-facebook-square size"></i></a> 30 <a href="#"><i class="fab fa-twitter-square size"></i></a> 31 <a href="#"><i class="fab fa-instagram size"></i></a> 32 <a href="#"><i class="fab fa-youtube-square size"></i></a> 33 </div> 34 </nav> 35 </header> 36 <div class="wrapper"> 37 <div class="sidebar"> 38 <div class="side-contents"> 39 <img class="side-logo" src="images/logo.png"> 40 <ul class="sidebar-list"> 41 <li><a href="#top">TOP</a></li> 42 <li><a href="#message">MESSAGE</a></li> 43 <li><a href="#gallery">GALLERY</a></li> 44 <li><a href="#brand">BRAND</a></li> 45 <li><a href="#project">PROJECT</a></li> 46 <li><a href="#company">COMPANY</a></li> 47 48 </ul> 49 <div class="sidebar-icons"> 50 <a href="#"><i class="fab fa-facebook-square size"></i></a> 51 <a href="#"><i class="fab fa-twitter-square size"></i></a> 52 <a href="#"><i class="fab fa-instagram size"></i></a> 53 <a href="#"><i class="fab fa-youtube-square size"></i></a> 54 </div> 55 </div> 56 </div> 57 <div class="contents"> 58 <a id="top"><img class="top-image" src="images/mainImg.jpg"></a> 59 <div class="message-wrappar"> 60 <a id="message"><h1 class="heading">MESSAGE</h1></a> 61 <p> 62 ホームページサンプル株式会社では最新技術と自然との調和を目指します。革新的な技術で世の中を動かす企業を目指します。ホームページサンプル株式会社。ホームページサンプル株式会社では最新技術と自然との調和を目な技術で世の中を動かす企業を目指します。ホームページサンプル株式会社では最新技術と自然との調和を目指します。革新的な技術で世の中を動かす企業を目指します。 63 </p> 64 </div> 65 </div> 66 <a id="gallery"><div class="center-image"></a> 67 <img src="images/photo01.jpg"><img src="images/photo02.jpg"><img src="images/photo03.jpg"> 68 <img src="images/photo04.jpg"><img src="images/photo05.jpg"><img src="images/photo06.jpg"> 69 <span><img class="big-image" src="images/photo07.jpg"></span> 70 <img src="images/photo08.jpg"><img src="images/photo09.jpg"><img src="images/photo10.jpg"> 71 <img src="images/photo11.jpg"><img src="images/photo12.jpg"><img src="images/photo13.jpg"> 72 </div> 73 <a id="brand"></a><div class="brand-wrappar"></a> 74 </a><h1 class="heading">BRAND</h1></a> 75 <div class="brand-contents"> 76 <div class="brand-item"> 77 <img src="images/logo01.png" alt=""> 78 <p>ホームページサンプル株式会社では最動かす企業を目指します。</p> 79 </div> 80 <div class="brand-item"> 81 <img src="images/logo02.png" alt=""> 82 <p>革新的な技術で世の中を動かす企業を目します。世の中を動かす。</p> 83 </div> 84 <div class="brand-item"> 85 <img src="images/logo03.png" alt=""> 86 <p>株式会社では最動かす企業を目指しますージン企業を目指します。</p> 87 </div> 88 <div class="brand-item"> 89 <img src="images/logo04.png" alt=""> 90 <p>株式会社では最動かす企業を指しますージサン企業を目指します。</p> 91 </div> 92 </div> 93 </div> 94 <a id="project"></a><div class="project-wrappar"></a> 95 <h1 class="heading">PROJECT</h1> 96 <div class="project-contents"> 97 <div class="project-item"> 98 <img src="images/photo14.jpg" alt=""> 99 <p>ホームページサンプル株式会社では最新技術と自然との調和を目指します。革新的な革新的な革新的な技術で世の中を技術で世の中を技術で世の中を動かす企業を目指します。</br></br> 100 101 ホームページサンプル株式会社。ホームページサンプル最新技術と自然との調和を目指します。革新的な技術で世の中を動かす企業を目指します。ホームページサンプル株式会社。ホームページサンプル最新技術と自然との調和を目指し調和を目指し調和を目指します。革新的な技術で世の中を動かす企業を目指します。</p> 102 </div> 103 <div class="project-item"> 104 <img src="images/photo15.jpg" alt=""> 105 <p>ホームページサンプル株式会社では最新技術と自然との調和を目指します。革新的な革新的な革新的な技術で世の中を技術で世の中を技術で世の中を動かす企業を目指します。</br></br> 106 107 ホームページサンプル株式会社。ホームページサンプル最新技術と自然との調和を目指します。革新的な技術で世の中を動かす企業を目指します。ホームページサンプル株式会社。ホームページサンプル最新技術と自然との調和を目指し調和を目指し調和を目指します。革新的な技術で世の中を動かす企業を目指します。</p> 108 </div> 109 110 </div> 111 112 </div> 113 <a id="company"><div class="conpany-wrappar"></a> 114 <h1 class="heading">COMPANY</h1> 115 <div class="conpany-contents"> 116 <p class="adress">〒103-1234</br> 117 見本県見本市仮区見本町1-3-5</br> 118 119 TEL 01234-567-8901</br> 120 121 e-Mail info@example.com</br> 122 123 営業時間 10:00〜20:00(水曜定休)</br> 124 125 ※都合により休業する場合がございます 126 </p> 127 <div class="ggmap"> 128 <iframe src="https://www.google.com/maps/embed?pb=!1m14!1m8!1m3!1d12794.37516750043!2d136.931998!3d36.708298!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x0%3A0x45b484ff8fb88473!2z44GE44Gq44G75YyW5bel77yI5qCq77yJIOWvjOWxseW3peWgtA!5e0!3m2!1sja!2sus!4v1624311571496!5m2!1sja!2sus" width="200" height="200" style="border:0;" allowfullscreen="" loading="lazy"></iframe> 129 </div> 130 131 132 </div> 133 134 </div> 135 </div> 136 <footer> 137 <p>Copyright(c) 2016 Sample Inc. All Rights Reserved. Design by <a href="#"><span>http://f-tpl.com</a></span></p> 138 </footer> 139 140</body> 141</html>

CSS

1/* ハンバーガーメニュー↓↓*/ 2.menu-btn { 3 position: fixed; 4 top: 10px; 5 right: 8px; 6 display: flex; 7 height: 40px; 8 width: 40px; 9 justify-content: center; 10 align-items: center; 11 z-index: 90; 12 background-color: rgb(0, 0, 0) 13} 14.menu-btn span, 15.menu-btn span:before, 16.menu-btn span:after { 17 content: ''; 18 display: block; 19 height: 2px; 20 width: 18px; 21 background-color: #ffffff; 22 position: absolute; 23 transition: 0.3s; 24} 25.menu-btn span:before { 26 bottom: 6px; 27} 28.menu-btn span:after { 29 top: 6px; 30} 31 32input[type="checkbox"]:checked ~ .menu-btn span { 33 background-color: rgba(255, 255, 255, 0);/*メニューオープン時は真ん中の線を透明にする*/ 34 transition: 0.1s; 35} 36input[type="checkbox"]:checked ~ .menu-btn span::before { 37 bottom: 0; 38 transform: rotate(135deg); 39 40} 41input[type="checkbox"]:checked ~ .menu-btn span::after { 42 top: 0; 43 transform: rotate(-135deg); 44} 45 46#menu-btn-check{ 47 position: absolute; 48 right: -100px; 49 top: 0px; 50 transform: scale(1.5); 51 opacity: 0; 52 53} 54/* ハンバーガーメニュー↑↑*/ 55nav{ 56 text-align: left; 57 background-color: black; 58 transition: 0.1s; 59 z-index: 10; 60 display: none; 61} 62.header-menu li{ 63 padding: 16px 0; 64 border-bottom: 1px solid white; 65} 66.header-menu li a{ 67 font-family: 'Modern Antiqua', 'Noto Sans JP',serif; 68 font-size: 14px; 69} 70.header-menu li a:hover{ 71 text-decoration: underline; 72} 73.header-menu .fas{ 74padding: 0 10px; 75} 76.header-icon{ 77 padding: 15px 0 5px 0; 78 border-bottom: 1px solid white; 79} 80.header-icon .fab{ 81 padding: 0 10px; 82} 83 84#drawer-btn{ 85 position: absolute; 86 right: -100px; 87 top: 20px; 88 transform: scale(1.5); 89 opacity: 0; 90 z-index: 1000; 91}

jQuery

1<script> 2 $(function(){ 3 /* ここからコードを書く */ 4 $(".menu-btn").on("click", function(){ 5 $("nav").slideToggle(); 6 $("nav").toggleclass("open"); 7 }); 8 $(".header-menu li a").on("click", function(){ 9 $("nav").slideToggle(); 10 $("nav").toggleclass(); 11 12 }); 13 14 }); 15 </script>

試したこと

ハンバーガーメニュー内のリンクとハンバーガーメニューを実装の際のチェックボックスと紐づければいいのかと思い色々試しましたが、そうするとハンバーガーメニューの動きが上手く作動しなかったりと中々上手くいきませんでした。

補足情報(FW/ツールのバージョンなど)

jQueryの読み込みソースは下記です

<script src="https://code.jquery.com/jquery-3.6.0.min.js" integrity="sha256-/xUj+3OJU5yExlq6GSYGSHk7tPXikynS7ogEvDej/m4=" crossorigin="anonymous"></script>

jQueryを少し訂正しました。jQueryは今回初めて使うので、コードの抜け漏れ等ありましたら教えて下さい。その他のCSSやHTMLも覚えて間もないので間違えてましたらご教授お願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

CSSにcloseクラスのスタイルが書かれていませんので記述して下さい

投稿2021/07/17 00:18

yuki84web

総合スコア1857

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問