0

http://www.smashingmagazine.com/2009/08/17/taming-advanced-css-selectors/の投稿内

「特異性」のルールを定義する文脈では、次のように述べられています。

たとえば、ブログの投稿であるすべての div 要素の背景色を変更する場合は、class 属性が「post-」で始まるすべての div を対象とする属性セレクターを使用できます。

div[class*="post"] {
  background-color: #333;
  }

これは、class 属性に「posts」という単語が含まれるすべての div 要素に、任意の位置で一致します。

...

私の質問は、上記の例を次のように拡張することです。

** ...ブログの投稿であるすべての div 要素の背景色を変更します。ただし、anon ユーザーによる投稿は次のようになります... **

【何に似てる?】

どうも

4

1 に答える 1

2

まず、これは CSS で特定のクラスを持つ要素を選択する正しい方法ではありません。それ.が目的です:

div.post {
  background-color: #333;
}

私はその記事をざっと見ただけですが、他の構文を推奨する理由がわかりません。より多くの入力が必要であることに加えて、Internet Explorer 6 では機能せず、熟練した CSS 作成者を完全に混乱させるでしょう。

実際の質問に関しては、匿名ユーザーによる投稿をどのようにスタイルするかは、それらがどのようにマークアップされているかに完全に依存します。たとえば、そのような投稿が HTML で次のようになっているとします。

<div class="post anonymous">...</div>

次に、次のような別のスタイル ルールを追加するだけです。

div.anonymous {
  background-color: purple;
}

重要な質問は、これらのスタイル ルールがスタイルシート内でどのような順序で表示されるかということです。最後に表示される場合.anonymousは、それが適用される場合に優先されます。したがって、 と の両方の.postルール.anonymousが適用されても<div>.anonymous色は後から来るので優先されます。(もちろん、これらのルールを別の順序で並べると、その逆になります。)

于 2009-08-25T01:54:09.043 に答える