0

私のブラウザのデフォルト設定についてはwidth、デフォルト値100%height取得し、デフォルト値を取得しますauto

知られているように、垂直方向と水平方向の既定の効果は大きく異なります。ボックスの幅 (<div>たとえば、使用される要素によってもちろん結果が変わります) は、デフォルトで周囲のコンテナー ブロック要素の 100% になります。そして、高さは明らかにテキストの高さに等しくなります。

しかし、 を設定すると、とのwidth: auto;両方が同じ値を持つことになり、効果は依然として非常に異なります (実際、幅に違いはありません)。widthheightauto

(私は Windows 7 で最新バージョンの Google Chrome を使用していますが、大きな違いはありません。ここではブラウザーに大きな違いはありません。)

widthここでの私の質問は、これらの 2 つの非常によく似た比率と に、heightなぜこのような違いがあるのか​​ということです。auto値が2つとは非常に異なる結果をもたらすような大きな違いはありますか?

ある要素から別の要素へのデフォルトの効果と同じ効果を得るのは非常に大変です。つまり、100% の高さの効果と、テキスト幅に収まる幅の効果を得るには、非常に難しく、追加の作業や回避策が必要です。私が探しているのは、これら 2 つの比率とそのauto価値をよりよく理解することです。良いソースとリンクがあれば、うれしいです。

4

2 に答える 2

1

簡単に言うと、auto従来の CSS で高さと幅を評価する方法は互いに大きく異なります。これは、ノーマル フローが機能する方法の結果として機能しなくなります。

幅と高さが値のような値から使用される値に変換される方法については、CSS 2.1 仕様のセクション 10 でauto詳しく説明されています。

于 2013-07-16T13:36:44.387 に答える