ナビゲーションメニューで、ホバーしたらアンダーラインをふわっと表示させ、クリックするとアンダーライン表示を固定する方法を知りたいです。
以下のコードだと、クリックした後にカーソルを離すとアンダーラインが消えてしまいます。
html
1<ul> 2<li><a href="#">HOME</a></li> 3<li><a href="#">ABOUT</a></li> 4<li><a href="#">ADDRESS</a></li> 5<li><a href="#">CONTACT</a></li> 6</ul>
jQuery
1$('ul li a').click(function(){ 2 $('ul li a').removeClass('underline'); 3 $(this).addClass('underline'); 4});
css
1ul li a { 2 position: relative; 3} 4 5ul li a.underline:after { 6 position: absolute; 7 content: ''; 8 width: 100%; 9 height: 1px; 10 background-color: #000000; 11 left: 0; 12 bottom: -1px; 13} 14 15ul li a:after { 16 position: absolute; 17 content: ''; 18 width: 100%; 19 height: 1px; 20 background-color: #000000; 21 left: 0; 22 bottom: -1px; 23 transition: 0.5s; 24 opacity: 0; 25} 26 27ul li a:hover:after { 28 opacity: 1; 29}
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/08/14 10:38