2
nav ul {
}

nav ul li {
    margin-left: 7px;
}

nav.ul li a, a:link, a:visited {
    float: left;
    padding: 7px;
    margin-left: 15px;
    color: #ffffff;
    text-decoration: none;
    font-weight: bold;
}

nav ul li a:hover {
}

上記のコードで要素のスタイルを設定したいだけです<nav></nav>

<a href="">ただし、現在はnav 要素の外側にもスタイルを設定しています。それが私が望むものであることを確認するにはどうすればよいですか?

4

5 に答える 5

5

navあなたが持っているルールは、これを除いて、要素内でのみ適用されます:

nav.ul li a, a:link, a:visited {

この規則は と に適用されa:linkますa:visited。あなたはこれを求めている:

nav.ul li a, nav.ul li a:link, nav.ul li a:visited {
于 2012-07-09T01:32:30.277 に答える
3

これは、次の行が正しくないためです。

nav.ul li a, a:link, a:visited {

そのはず:

nav ul li a, nav ul li a:link, nav ul li a:visited {

カンマ (,) の後は、a先行するセレクターが指定されていないため、CSS はすべてのタグに適用されます。nav ulまた、最初の部分にピリオド (.) があります。

于 2012-07-09T01:32:49.630 に答える
1

ルールを変更します:

nav.ul li a, a:link, a:visited

に:

nav.ul li a, nav.ul li a:link, nav.ul li a:visited

カンマ区切りの間の nav.ul li の部分を省略することで、nav.ul li の外側のリンクに効果的に適用されます。

于 2012-07-09T01:32:01.260 に答える
1

あなたのコードは、子孫セレクターを使用せずに a:link と a:visited をターゲットにしています。以下を使用すると、問題が解決するはずです。

nav ul li a, nav ul li a:link, nav ul li a:visited {
    float: left;
    padding: 7px;
    margin-left: 15px;
    color: #ffffff;
    text-decoration: none;
    font-weight: bold;
}
于 2012-07-09T01:32:33.960 に答える
0

すべてのセレクターの前にnav ul li.

nav ul li a, nav ul li a:link, nav ul li a:visited {
    float: left;
    padding: 7px;
    margin-left: 15px;
    color: #ffffff;
    text-decoration: none;
    font-weight: bold;
}
于 2012-07-09T01:31:40.513 に答える