ハンバーガーメニューを設置しており、ページ内リンクがあるのですが、
ハンバーガーメニュー内のリンクをクリックするとハンバーガーメニューが閉じないため、ページ移動したという感じがしません。
メニュークリックと同時にハンバーガーメニューを閉じるよう設定したいです。
HTML
1<div class="toggle_2" style="z-index: 600;"><a href="tel:0000000"><img src="img/tel.png" alt="" class="sp_tel"></a><a href="https://lin.ee/eJP7DPR"><img src="img/img.png" alt="" class="sp_line"></a> 2<a href="https://www."><img src="img/inst.png" alt="" class="sp_inst"></a></div> 3<div class="toggle" id="navToggle"> 4<span class="toggle__bar"></span> 5</div> 6<nav class="menu_area"> 7<ul> 8<li><a href="index.html">テキスト</a></li> 9<li><a href="a.html">テキスト</a></li> 10<li><a href="a.html">テキスト</a></li> 11<li><a href="c.html">テキスト</a></li> 12<li><a href="#d">テキスト</a></li> 13<li><a href="#e">テキスト</a></li> 14</ul> 15</nav> 16
css
1ハンバーガーに必要なcss */ 2body{ 3position: relative; 4} 5.menu_area, 6.container{ 7position: absolute; 8width: 100%; 9} 10.menu_area{ 11text-align: right; 12height: 100vh; 13// background: $sub; 14opacity: 0; 15& > ul{ 16float: right; 17padding: 100px 10px 0; 18margin: 0; 19text-align: left; 20font-size: 1.8rem; 21font-weight: bold; 22text-align: center; 23width: 100%; 24a{ 25color: #000 26} 27& > li{ 28display: block; 29padding: 15px 10px; 30} 31} 32&.open{ 33position: fixed; 34opacity: 1; 35} 36} 37.container { 38background: #fff; 39min-height: 100vh; 40transition: .5s; 41@media (max-width: 749px){ 42height:100%; 43} 44&.open{ 45// transform: translateX(-200px); 46transform: translateX(-100%); 47} 48} 49.toggle{ 50width: 40px; 51height: 30px; 52cursor: pointer; 53position: fixed; 54z-index: 2; 55top: 15px; 56right: 10px; 57z-index: 600; 58&bar{ width: 100%; height: 2px; background: $text; position: absolute; top: 0; left: 0; transform-origin: left; transition: .5s; } &:before, &:after{ background: $text; position: absolute; content: ""; width: 100%; height: 2px; transition: .5s; } &:before{ top: 50%; left: 0; } &:after{ bottom: 0; left: 0; transform-origin: left; } &.open{ z-index: 1; .togglebar{ 59transform: rotate(45deg); 60} 61&:before{ 62opacity: 0; 63} 64&:after{ 65transform: rotate(-45deg); 66} 67} 68} 69.toggle_2{ 70position: fixed; 71z-index: 2; 72top: 16px; 73left: 80px; 74} 75.sp_line { 76width:110px; 77margin-left: 5px; 78&:hover{ 79opacity:0.5; 80} 81} 82.sp_tel { 83width:26px; 84&:hover{ 85opacity:0.5; 86} 87} 88.sp_inst { 89width:28px; 90&:hover{ 91opacity:0.5; 92} 93} 94 95overlay{ 96transition: .5s; 97&.open{ 98transform: translateX(-200px); 99cursor: pointer; 100width: 100%; 101position: fixed; 102top: 0; 103left: 0; 104height: 100vh; 105z-index: 1; 106} 107} 108.fixbody{ 109overflow: hidden !important; 110} 111.tr_t { 112text-align: center!important; 113display: contents!important; 114font-size:2rem!important; 115font-weight:bold!important; 116}
ご教授お願いいたします。 cssはsassで書いています。 JSは使っておりません。
あなたの回答
tips
プレビュー