0

以前はセレクターを使用していましたが、変更をページ上のすべての に適用するため#footer aに削除した後、 のクラスの div 内のものを除き、次のセレクターが割り当てられたリンクはありません: , , (Google Chrome 要素インスペクターにも表示されます)#footer<a>.navbara:not(.navbar a)a:not(.navbar a):hovera:not(.navbar a):active

私が言おうとしていることを表すために、2 つの jsFiddles を作成しました。

  1. 最初のバージョンの作業例
  2. 壊れた、新しいコード

もう一度修正する必要があるため、1 つの div を除くページ全体に適用されます。

4

1 に答える 1

2

a:not(.navbar a)CSSではできません。

awill が常に直接ネストされていることがわかっていて、.navbarそれを除外したい場合は、代わりにa選択できます:not(.navbar) > aaしかし、ネスト レベルが任意であり、内の任意のネストを除外したい.navbar場合は、そのための CSS セレクターを作成するのにおそらく問題が生じるでしょう。のようなもの:not(.navbar) aは、ツリーの上位にある他の要素と常に一致する可能性があります。うまくいかない理由の別の例については、この回答を参照してください。

これに対する最も簡単な解決策は、効果をすべてのa要素に適用してから、 で元に戻すことです.navbar a

.navbar a {
  text-shadow:none;
  padding:0;
  -webkit-transition-property: none;
  -moz-transition-property: none;
  -o-transition-property: none;
  transition-property: none;
}

jsFiddle プレビュー

于 2013-01-12T15:34:53.283 に答える