前提・実現したいこと
hover 時に背景色とフォント色を変更したい。
|hover|背景色|フォント色|イメージ|
|:--|:--:|--:|
|前|薄グレー|黒|
|
|後|濃グレー|白||
発生している問題
hover 時に
背景色はすぐに切り替わるが、(○)
フォント色はすぐに切り替わらない(×)。
(リンク表示文字列にカーソルを近づけるとフォント色も切り替わる)
|hover|背景色|フォント色|イメージ|
|:--|:--:|--:|
|後|○濃グレー|×黒||
hover 範囲の問題でしょうか? (padding 領域に効いていないのでしょうか?)
該当のソースコード
css
1tr.indexLevel1 { 2 background-color: #dedede; 3} 4.indexLevel1 td { 5 border-width: 0px 0px 0px 10pt; 6 border-style: none none none solid; 7 border-color: black black black crimson; 8 border-radius: 1px; 9 padding:.4em; 10 line-height:1.4; 11 font-size:1.1em; 12 transition: all 1.0s ease; 13} 14td.indexLink:hover { 15 background-color: gray; 16 color: white; 17} 18tr.indexLevel1 a:hover { 19 background-color: gray; 20 color: white; 21} 22tr.indexLevel1 a { 23 display: block; 24 width: 100%; 25 height:100%; 26} 27 28.indexLevel2 { 29 border-left: 7px solid #1abc9c; 30 padding: 16px 0 13px 13px; 31} 32 33a:link { color:black; text-decoration:none; } 34a:hover { color:#cc141c; background:#eeeded; } 35a:hover span { color:#cc141c; } 36.en { font-family: Karla, Century Gothic, Futura,sans-serif; } 37
html
1<table width="100%" cellspacing="0"> 2 <tbody> 3 <tr class="indexLevel1"> 4 <td> 5 <a href="#"> 6 <h3><strong>■Index  見出し【リンクあり】</strong></h3> 7 </a> 8 </td> 9 </tr> 10 </tbody> 11</table> 12<br> 13<table width="100%" cellspacing="0"> 14 <tbody> 15 <tr class="indexLevel1"> 16 <td> 17 <h3><strong>■見出し【リンクなし】</strong></h3> 18 </td> 19 </tr> 20 </tbody> 21</table>
JavaScript
1 window.addEventListener('DOMContentLoaded', function (){ 2 const cIndex = document.querySelectorAll('.indexLevel1 > td'); 3 for (let i = 0; i < cIndex.length; i++) { 4 if (cIndex[i].querySelectorAll('a').length > 0) { 5 cIndex[i].classList.add('indexLink'); 6 } 7 } 8 }); 9
試したこと
リンクのブロック指定。
display:block;
height:100%;
補足情報(FW/ツールのバージョンなど)
ターゲットブラウザ: Internet Explorer 11
回答4件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/05/07 06:09
2020/05/07 06:33
2020/05/07 08:51 編集
2020/05/07 10:31
2020/05/07 12:00
2020/05/07 12:08
2020/05/07 12:33