前提・実現したいこと
ここに質問の内容を詳しく書いてください。
HTML&CSS でiSaraのHPを作成しています。
その中のQ&Aのjqがわからないので質問させていただきました。
発生している問題・エラーメッセージ
:hoverを指定しているのですが、jqでtext-decoration:none;にした後に、hoverが機能しなくなりました。
該当のソースコード
html{ <div class="main_block16-list"> <div class="main_block16-list-top"> <a><span class="far fa-question-circle"></span>○○○○</a> <i class="fas fa-chevron-down"></i> </div> <div class="main_block16-list-bottom open"> <p>○○○○</p> </div> </div> }
css { .main_block16-list-top a { text-decoration: none; color: black; width: 1200px; text-align: left; } .main_block16-list-top a:hover { text-decoration: underline; } }
jQ { $('.main_block16-list').click(function(){ var $bottom = $(this).find('.main_block16-list-bottom'); $(this).find('a').css('text-decoration' , 'underline'); $('.main_block16-list').not(this).find('a').css('text-decoration' , 'none'); $('.main_block16-list-top').find('a').hover(function(){ $(this).find('a').css('text-decoration' , 'underline'); },function(){ $(this).find('a').css('text-decoration' , 'none'); }); if ($bottom.hasClass('open')) { $bottom.slideUp(300); $bottom.removeClass('open'); $(this).find('i').attr('class' , 'fas fa-chevron-down'); } else { $bottom.slideDown(300); $bottom.addClass('open'); $(this).find('i').attr('class' , 'fas fa-chevron-up'); } }); }
試したこと
内容としましては、:hoverでは個々にunderlineを反応。
click(function{})ではclickした物以外はunderlineがnoneの状態。
補足情報(FW/ツールのバージョンなど)
わかりずらいですが、要はjQのclickを採用した際に、cssの:hoverが反応しなくなりました。
text-decoration:none;を採用するとそれ以降は反応しないので対処の仕方、もしくはiSaraの
模範解答があれば教えていただきたいと思います。
※前述が不足していて申し訳ないのですが、isaraの内容としては、
clickした対象のunderlineは、clickした対象以外をclickしないとそのまま(underlineがあるまま)になっており、かつ、hoverはずっと機能している状態になっております。