0

CSS を使用して、特定の HTML タグが常に特定のクラスを持つように指定することは可能ですか? 何かのようなもの:

p {
  class: fun;
}

h3 {
  class: fun;
}

.fun {
  font-family: "Comic Sans"
}

(これはおそらく決して良い考えではないことを認識しています。主に学術的な理由で疑問に思っています)

javascript/jquery を使用せずにこれを実現したいのですが、CSS と HTML のみを使用してください。

アップデート

各要素にスタイル仕様を配置する方法を知っています - 私が望むのは、.css ファイル内の 1 か所でクラスを変更し、そのクラスを持つ他のすべての要素に変更することなく適用できるようにすることです。任意の HTML。CSSファイルから、デフォルトで特定のタグのすべてに適用されるクラスが必要です。(繰り返しますが、これは良い設計ではないことに気付きました-それが可能かどうか知りたいだけです)。

4

5 に答える 5

3

実際、このコードは機能するはずです:

p, h3, .fun { font-family: "Comic Sans"; }

ただし、ケースが「別のケース」であり、上記のコードが探していた答えではない場合は、Lessを使用して解決できます。

以下のように、この場合の css 関数を書いてみてください。

.fun{
    font-family: "Comic Sans";
}

p{ .fun(); }
h3{ .fun(); }

Lessを使用すると、関数を作成できます。うまくいけば便利です。

于 2013-07-12T01:30:39.393 に答える
2

次のように同じ効果を得ることができます。

p, h3, .fun {
  font-family: "Comic Sans"
}

javascript/jquery を使用せずにこれを実現したい - CSS と HTML のみを使用する

CSS を使用してクラスを設定することはできません。<p>HTML を使用してそれを行うことはできますが、自動化することはできません。クラスを手動で各またはに追加したくないと思います<h3>

于 2013-07-12T01:16:23.860 に答える
1

いいえ、CSS や CSS プリプロセッサでは不可能です。

これを実現するには、HTML プリプロセッサ (XSLT など) が必要です。

于 2013-07-12T07:40:19.790 に答える
1

同様に、標準の CSS を使用して

p, h3 {
  font-family: "Comic Sans"
}

それ以外の場合は、LESS とその mixin 機能のようなものを使用できます: http://lesscss.org/#-mixins

于 2013-07-12T01:16:14.007 に答える
0

そのために JavaScript が必要な CSS でクラスを設定することはできません。

var h = document.getElementsByTagName("h3")

for ( I=0; I<h.length; I++) {
    h[I].classList.add("fun")
}

または、次のように HTML を記述できます。

<fun>This is fun!</fun>

そして、次のように CSS でターゲットに設定します。

fun{ 
    font-family:Hectiva;
}
于 2013-07-12T02:03:13.097 に答える