0

次のような同じ css で 2 つの div を作成することは可能ですか。

.Navig1, .Navig11 a {
  display: block;
  height: 15px;
  width: 70px;
  background-color: {color: Navig Bg 1};
  text-align: center;
  font-size: 8px;
  line-height: 15px;
  color: #FFF;
}

スタイルコードが長すぎないようにしたいので、これら2つは同じように見えるが、ホバーすると異なる必要があるため、これでうまくいくと思っていましたが、このコードは機能しません。どこで間違いを犯していますか?

4

4 に答える 4

4

はい、それは可能です:

.Navig1 a, .Navig11 a {
  display:block;
  height:15px;
  width:70px;
  background-color:#000;
  text-align:center;
  font-size:8px;
  line-height:15px;
  color:#FFF;
}

.Navig1 a:hover {
  /*css property*/
}

.Navig11 a:hover {
  /*other css property*/
}
于 2012-11-24T14:55:37.940 に答える
0

cssは「プログラム可能」ではありません。「ここのセクションXに含まれているスタイルを使用する」と言う変数やメソッドはありません。

ただし、このブロックからbgcolor定義を削除して、新しい定義を作成することで修正できます。

.Navig1, .Navig11 a {
    ... as before ...
}

.Navig1, .Navig11 {
    background-color: #xxx;
}
于 2012-11-24T14:54:15.163 に答える
0

あなたはあなたが望むことをすることができます:

.Navig1, .Navig11 a {
    /* Common Styles */
}

.Navig1:hover {
    /* Navig1 Specific Styles on Hover */
}

.Navig11 a:hover {
    /* Navig1 a Specific Styles on Hover */
}

しかし、他の回答者が述べたように、あなたはCSSを破っています。背景色はどうなりますか?

于 2012-11-24T14:55:26.850 に答える
0

html も提供していただくと、目的を達成しやすくなります。CSS クラスを 2 つ持つ必要はありません。単一の CSS クラスを使用して、ページ上の複数の要素のスタイルを設定できます。

mynav というクラスで 2 つのセットを持つ複数の div コンテナーがある場合:

<div class="mynav"></div>
<div></div>
<div class="mynav"></div>

次に、1 つの CSS クラスが両方に影響します。

div.mynav a {
    display: block;
    height: 15px;
    width: 70px;
    text-align: center;
    font-size: 8px;
    line-height: 15px;
    color: #fff;
}

div.mynav a:hover {
    /* new css */
}

バリエーションが必要な場合は、実行中のアクションに応じて要素がどのように変化するかについてのルールを作成するだけです。

必要に応じて、1 つの要素に対して複数のクラスを使用することも検討してください。あなたのdivは次のようになります:

<div class="mynav someotherclass"></div>

あなたがやっていることには、いくつかの単純な Javascript が最善の解決策であることがわかるかもしれません。

于 2012-11-24T15:05:51.997 に答える