0
<li class="red">
<p><a href="#">Home</a></p>
</li>

CSS では、li 要素の背景色を変更したいのですが、テキストの色も変更する必要があります。問題は、li 要素にカーソルを合わせた後でも、色を変更するために、さらに進んで実際にテキストに触れなければならないことです。

これが機能するかどうか、私は驚くでしょう。

4

3 に答える 3

0

<p>最初にタグ を削除します

li.red > a:hover {  
    color: red;  
}
于 2013-02-07T06:50:18.033 に答える
0
li:hover {
   background-color: blue;
}

li:hover p,
li:hover a {
   color: yellow;
}
于 2013-02-07T06:50:18.753 に答える
0

考慮すべきことが2つあります。

  1. <p></p>ブロックレベルの要素です。インライン要素内では使用されません。この場合、<li></li>

  2. <a></a>タグをブロックレベルの要素にするだけです。

したがって、コードは次のようになります。

<ul>
    <li class="red">
       <a href="#">Home</a>
    </li>
</ul>

次に、次のようなCSSを思い付くことができます。

.red a:hover {
   padding: 10px 20px;
   display: block;
   background-color: #9900;
   color: #FFFFFF;
}
于 2013-02-07T06:54:14.503 に答える