7

仕様を引用するには:

ブロックレベル ボックスは、ブロック フォーマット コンテキストに参加するボックスです。各ブロック レベル要素は、子孫ボックスと生成されたコンテンツを含む主要なブロック レベル ボックスを生成し、任意の配置スキームに関与するボックスでもあります。一部のブロック レベル要素は、主要なボックスに加えて追加のボックスを生成する場合があります: 'list-item' 要素。これらの追加のボックスは、主要なボックスに対して配置されます。

それらは本質的に同じものですか?

4

2 に答える 2

11

プリンシパル ブロック レベル ボックスは、要素に適用されるスタイル ルールによって直接影響を受ける特定の要素によって生成されるブロック レベル ボックスです。

ほとんどの要素は、1 つのボックスのみを生成します。これらの要素について、関連する他のボックスがないため、基本的に同じものです。

ただし、要素は、リスト項目などの表示タイプに応じて、複数のボックスを生成できます。このような要素のスタイルを宣言すると、通常、スタイルは主要なボックスに適用され、生成される追加のボックスはそれに応じてレンダリングされます。

たとえば、リスト アイテムには、主要なボックスに加えてマーカー ボックスがあります。を指定するlist-style-position: outsideと、リスト マーカーは主要なボックスの境界の外側に配置されますが、主要なボックスの背景と境界線は影響を受けません。マーカー ボックスは引き続き主要なボックスの子孫であるため、 などの継承可能なプロパティがマーカーに適用されることに注意してください(これが、テキストとその箇条書きマーカーの両方を赤くするcolor理由です)。color: red

他のほとんどのブロック レベル要素は、含む場合display: block 除外する場合display: table(セクション 17.4を参照) は、単にそれらのコンテンツに対して主要なブロック ボックスを生成するだけであり、本質的に単なる「ブロック ボックス」になりますが、それらの要素に対してのみです。

つまり、すべてのプリンシパル ブロック レベル ボックスはブロック レベル ボックスですが、すべてのブロック レベル ボックスがプリンシパルであるとは限りません (例:匿名ブロック ボックス) 。また、インライン ブロックを含むインライン要素は、プリンシパル ボックス自体を生成せず、プリンシパル インライン ボックスなどもありません。

于 2013-02-27T14:27:19.810 に答える
0

主なブロックは本質的にあなたの「マークアップ」が表すものです.機械的な目的のために、いくつかの「主な」要素は他の要素を正しくレンダリングする必要があります.たとえば、テキストエリア)

于 2013-02-27T14:33:50.907 に答える