0

次のコードを使用して、Web ページを中央揃えにしています。

#parent{
      margin:0 auto;
      width: 960px;  
}
<div id="parent">
          <!--more code goes here-->
</div>

プロパティがすべての子に移動したdiv'sため、中央揃えになりました。私はCSSコーダーではありませんが、親div要素を親divのみに固執させるトリックがあることを覚えています。助けてください。ありがとう

4

4 に答える 4

2
#parent{
    margin: 0 auto;
    width: 960px;  
}

#parent * {
    margin: 0;
    width: auto;
}
于 2012-09-29T23:07:23.077 に答える
1
#parent{
      margin:0 auto;
      width: 960px;  
}
#child{
      margin:0;
      width: 960px;  
}
<div id="parent">
<div id="child">
          <!--more code goes here-->
</div>
</div>

うまくいくでしょう?

于 2012-09-29T23:07:20.853 に答える
0

子供にプロパティを継承させないようにするために私が通常行うことは、1人の親と2人の子供を持つことです。私は子供たちのそれぞれのために同じdivを作ります。次に、それらのdivの1つに、他の子に持たせたくないプロパティ、opacityまたは他の子を与えます。その後、通常の子レイアウトdivとコンテンツを子番号2に配置します。これにより、望ましくないプロパティが兄弟プロパティになり、継承されなくなります。

于 2012-09-29T23:08:04.443 に答える
0

marginおよびwidthプロパティは継承されません(値の使用を除くinherit)。ただし、内部要素はデフォルトで外部要素内に視覚的に表示されるため、これらのプロパティを継承したように見える場合があります。実際には、egmargin-leftは 0 (デフォルト) ですが、これは要素がその親と同じ水平位置から始まることを意味します。同様に、widthauto幅が設定されていないブロック要素用であり、これは利用可能な水平方向のスペースを意味します。

問題の修正方法は、問題の内容によって異なります。これらのプロパティには継承の問題はありません。しかし、ブラウザ ウィンドウの左端から開始する中央の要素の子などを作成したい場合は、負のマージンを設定するか、絶対配置を使用する必要があります。

などの他の多くのプロパティでcolorは、プロパティが要素自体に設定されていない場合、要素はその親からプロパティを継承します。継承が望ましくない場合は、内側の要素にプロパティを設定します。トリックはありません。これがCSSの仕組みです。

于 2012-09-30T07:39:26.777 に答える