1

私の質問の2つの部分:

1) CSS で別のコントロールの属性とスタイルを継承する方法はありますか? コントロールには親子階層がなく、まったく異なるタイプのコントロールになる可能性があると仮定します。

いいえ:

#MyFirstControl
{
  width: 100px;
}

#MySecondControl
{
  width: MyFirstControl.styles.width; /* This doesn't work */
}

2) Label タグが他のタグの子であると仮定します。width 属性は、「inherit」または「auto」では機能しません。どうしたの?

いいえ:

<style>
  div
  {
    width: 100px;
  }
</style>

<div>
  <!-- This label does what it wants for width. It's not the width of the containing div -->
  <label style="width: inherit">Some Text</label>
<div>
4

3 に答える 3

2

パート 1: スタイルを制御するために、id ではなくクラス名を使用したい:

.control_a {
  width: 100px;
}

<blah id='MyFirstControl' class='control_a'/>
<blah id='MySecondControl' class='control_a'/>

これにより、任意の数のタグでスタイルを共有できます。また、1 つの要素に複数のクラス名を使用できることに注意してください。

.control_a {
  width: 100px;
}

.red { background: #f00; }    
.blue { background: #00f; }

<blah id='MyFirstControl' class='control_a red'/>
<blah id='MySecondControl' class='control_a blue'/>

これにより、1 つの要素に対してさまざまなスタイルのソースを選択できます。

于 2009-03-13T02:19:27.833 に答える
0

1) CSS では自己参照が許可されていないため、同じスタイルで指定された 2 つの別個の要素の共通の側面を持つことができます。

#MyFirstControl, #MySecondControl
{
  width: 100px;
}

2)私のIDEとブラウザが信じられる場合、そのコンテキストでinheritは有効な値ではありませんがwidth、その理由はわかりません。それがあなたの例がうまくいかない理由かもしれません。

于 2009-11-30T19:25:43.727 に答える