зеркало из https://github.com/mozilla/pjs.git
Bug 659828 - Part 1: Apply table margins to the outer table frame instead of the inner table frame (also fixes bug 87277); r=dbaron
Outer table frames act as CSS2.1 table wrapper boxes. We used to lay them out without taking their margins into the account, which meant that their width was always equal to the available width. This breaks horizontal positioning of absolutely positioned kids of a table frame. The main purpose of this patch is to apply the margins of tables to their outer frame, instead of the inner frame. This means that the inner table frame will always have a zero margin, which means that a lot of the stuff which used to rely on the fact that table margins are applied to the inner frame need to change. In particular, in order to get the computed margins of a table, we used to query the inner table frame, and this patch corrects that. Also, when shrink wrapping tables, we used to not take the margins of the inner table frame into account, which is fixed by this patch too. nsBlockReflowState:: ComputeReplacedBlockOffsetsForFloats also needed to be changed to read the margin values from the outer frame too. Also, as part of this patch, we start to respect the CSS2.1 margin model for captions on all sides. This means that in particular, the top/bottom margins on the top-outside and bottom-outside captions will not be collapsed with the top/bottom margins of the table, and that the margins of the caption element contribute to the width and height of the outer table frame. The 427129-table-caption reftest has been modified to match this new behavior. Another side effect of this bug is fixing bug 87277, and the reftests for that bug are marked as passing in this patch.
This commit is contained in:
Родитель
9b88bc40f5
Коммит
8e0b5e9b27
|
@ -6976,97 +6976,25 @@ nsBlockFrame::WidthToClearPastFloats(nsBlockReflowState& aState,
|
|||
aState.mContentArea.width);
|
||||
|
||||
ReplacedElementWidthToClear result;
|
||||
// A table outer frame is an exception in that it is a block child
|
||||
// that is not a containing block for its children.
|
||||
if (aFrame->GetType() == nsGkAtoms::tableOuterFrame) {
|
||||
nsIFrame *innerTable = aFrame->GetFirstPrincipalChild();
|
||||
nsIFrame *caption = aFrame->GetFirstChild(kCaptionList);
|
||||
aState.ComputeReplacedBlockOffsetsForFloats(aFrame, aFloatAvailableSpace,
|
||||
leftOffset, rightOffset);
|
||||
nscoord availWidth = aState.mContentArea.width - leftOffset - rightOffset;
|
||||
|
||||
nsMargin tableMargin, captionMargin;
|
||||
{
|
||||
nsCSSOffsetState tableOS(innerTable, aState.mReflowState.rendContext,
|
||||
aState.mContentArea.width);
|
||||
tableMargin = tableOS.mComputedMargin;
|
||||
}
|
||||
|
||||
if (caption) {
|
||||
nsCSSOffsetState captionOS(caption, aState.mReflowState.rendContext,
|
||||
aState.mContentArea.width);
|
||||
captionMargin = captionOS.mComputedMargin;
|
||||
}
|
||||
|
||||
PRUint8 captionSide;
|
||||
if (!caption ||
|
||||
((captionSide = caption->GetStyleTableBorder()->mCaptionSide)
|
||||
== NS_STYLE_CAPTION_SIDE_TOP ||
|
||||
captionSide == NS_STYLE_CAPTION_SIDE_BOTTOM)) {
|
||||
result.marginLeft = tableMargin.left;
|
||||
result.marginRight = tableMargin.right;
|
||||
} else if (captionSide == NS_STYLE_CAPTION_SIDE_TOP_OUTSIDE ||
|
||||
captionSide == NS_STYLE_CAPTION_SIDE_BOTTOM_OUTSIDE) {
|
||||
// FIXME: This doesn't treat the caption and table independently,
|
||||
// since we adjust by only the smaller margin, and the table outer
|
||||
// frame doesn't know about it.
|
||||
result.marginLeft = NS_MIN(tableMargin.left, captionMargin.left);
|
||||
result.marginRight = NS_MIN(tableMargin.right, captionMargin.right);
|
||||
} else {
|
||||
NS_ASSERTION(captionSide == NS_STYLE_CAPTION_SIDE_LEFT ||
|
||||
captionSide == NS_STYLE_CAPTION_SIDE_RIGHT,
|
||||
"unexpected caption-side");
|
||||
if (captionSide == NS_STYLE_CAPTION_SIDE_LEFT) {
|
||||
result.marginLeft = captionMargin.left;
|
||||
result.marginRight = tableMargin.right;
|
||||
} else {
|
||||
result.marginLeft = tableMargin.left;
|
||||
result.marginRight = captionMargin.right;
|
||||
}
|
||||
}
|
||||
|
||||
aState.ComputeReplacedBlockOffsetsForFloats(aFrame, aFloatAvailableSpace,
|
||||
leftOffset, rightOffset,
|
||||
&result);
|
||||
|
||||
// result.marginLeft has already been subtracted from leftOffset (etc.)
|
||||
nscoord availWidth = aState.mContentArea.width - leftOffset - rightOffset;
|
||||
// Force the outer frame to shrink-wrap (otherwise it just sizes to
|
||||
// the available width unconditionally).
|
||||
result.borderBoxWidth =
|
||||
aFrame->ComputeSize(aState.mReflowState.rendContext,
|
||||
nsSize(aState.mContentArea.width,
|
||||
NS_UNCONSTRAINEDSIZE),
|
||||
availWidth,
|
||||
nsSize(offsetState.mComputedMargin.LeftRight(),
|
||||
offsetState.mComputedMargin.TopBottom()),
|
||||
nsSize(offsetState.mComputedBorderPadding.LeftRight() -
|
||||
offsetState.mComputedPadding.LeftRight(),
|
||||
offsetState.mComputedBorderPadding.TopBottom() -
|
||||
offsetState.mComputedPadding.TopBottom()),
|
||||
nsSize(offsetState.mComputedPadding.LeftRight(),
|
||||
offsetState.mComputedPadding.TopBottom()),
|
||||
PR_TRUE).width +
|
||||
offsetState.mComputedBorderPadding.LeftRight() -
|
||||
(result.marginLeft + result.marginRight);
|
||||
} else {
|
||||
aState.ComputeReplacedBlockOffsetsForFloats(aFrame, aFloatAvailableSpace,
|
||||
leftOffset, rightOffset);
|
||||
nscoord availWidth = aState.mContentArea.width - leftOffset - rightOffset;
|
||||
|
||||
// We actually don't want the min width here; see bug 427782; we only
|
||||
// want to displace if the width won't compute to a value small enough
|
||||
// to fit.
|
||||
// All we really need here is the result of ComputeSize, and we
|
||||
// could *almost* get that from an nsCSSOffsetState, except for the
|
||||
// last argument.
|
||||
nsSize availSpace(availWidth, NS_UNCONSTRAINEDSIZE);
|
||||
nsHTMLReflowState reflowState(aState.mPresContext, aState.mReflowState,
|
||||
aFrame, availSpace);
|
||||
result.borderBoxWidth = reflowState.ComputedWidth() +
|
||||
reflowState.mComputedBorderPadding.LeftRight();
|
||||
// Use the margins from offsetState rather than reflowState so that
|
||||
// they aren't reduced by ignoring margins in overconstrained cases.
|
||||
result.marginLeft = offsetState.mComputedMargin.left;
|
||||
result.marginRight = offsetState.mComputedMargin.right;
|
||||
}
|
||||
// We actually don't want the min width here; see bug 427782; we only
|
||||
// want to displace if the width won't compute to a value small enough
|
||||
// to fit.
|
||||
// All we really need here is the result of ComputeSize, and we
|
||||
// could *almost* get that from an nsCSSOffsetState, except for the
|
||||
// last argument.
|
||||
nsSize availSpace(availWidth, NS_UNCONSTRAINEDSIZE);
|
||||
nsHTMLReflowState reflowState(aState.mPresContext, aState.mReflowState,
|
||||
aFrame, availSpace);
|
||||
result.borderBoxWidth = reflowState.ComputedWidth() +
|
||||
reflowState.mComputedBorderPadding.LeftRight();
|
||||
// Use the margins from offsetState rather than reflowState so that
|
||||
// they aren't reduced by ignoring margins in overconstrained cases.
|
||||
result.marginLeft = offsetState.mComputedMargin.left;
|
||||
result.marginRight = offsetState.mComputedMargin.right;
|
||||
return result;
|
||||
}
|
||||
|
||||
|
|
|
@ -168,10 +168,7 @@ void
|
|||
nsBlockReflowState::ComputeReplacedBlockOffsetsForFloats(nsIFrame* aFrame,
|
||||
const nsRect& aFloatAvailableSpace,
|
||||
nscoord& aLeftResult,
|
||||
nscoord& aRightResult,
|
||||
nsBlockFrame::
|
||||
ReplacedElementWidthToClear
|
||||
*aReplacedWidth)
|
||||
nscoord& aRightResult)
|
||||
{
|
||||
// The frame is clueless about the float manager and therefore we
|
||||
// only give it free space. An example is a table frame - the
|
||||
|
@ -188,28 +185,18 @@ nsBlockReflowState::ComputeReplacedBlockOffsetsForFloats(nsIFrame* aFrame,
|
|||
leftOffset = 0;
|
||||
rightOffset = 0;
|
||||
} else {
|
||||
// We pass in aReplacedWidth to make handling outer table frames
|
||||
// work correctly. For outer table frames, we need to subtract off
|
||||
// the margin that's going to be at the edge of them, since we're
|
||||
// dealing with margin that it's really the child's responsibility
|
||||
// to place.
|
||||
nsMargin frameMargin;
|
||||
nsCSSOffsetState os(aFrame, mReflowState.rendContext, mContentArea.width);
|
||||
NS_ASSERTION(!aReplacedWidth ||
|
||||
aFrame->GetType() == nsGkAtoms::tableOuterFrame ||
|
||||
(aReplacedWidth->marginLeft == os.mComputedMargin.left &&
|
||||
aReplacedWidth->marginRight == os.mComputedMargin.right),
|
||||
"unexpected aReplacedWidth");
|
||||
frameMargin = os.mComputedMargin;
|
||||
|
||||
nscoord leftFloatXOffset = aFloatAvailableSpace.x - mContentArea.x;
|
||||
leftOffset = NS_MAX(leftFloatXOffset, os.mComputedMargin.left) -
|
||||
(aReplacedWidth ? aReplacedWidth->marginLeft
|
||||
: os.mComputedMargin.left);
|
||||
leftOffset = NS_MAX(leftFloatXOffset, frameMargin.left) -
|
||||
frameMargin.left;
|
||||
leftOffset = NS_MAX(leftOffset, 0); // in case of negative margin
|
||||
nscoord rightFloatXOffset =
|
||||
mContentArea.XMost() - aFloatAvailableSpace.XMost();
|
||||
rightOffset = NS_MAX(rightFloatXOffset, os.mComputedMargin.right) -
|
||||
(aReplacedWidth ? aReplacedWidth->marginRight
|
||||
: os.mComputedMargin.right);
|
||||
rightOffset = NS_MAX(rightFloatXOffset, frameMargin.right) -
|
||||
frameMargin.right;
|
||||
rightOffset = NS_MAX(rightOffset, 0); // in case of negative margin
|
||||
}
|
||||
aLeftResult = leftOffset;
|
||||
|
@ -285,19 +272,9 @@ nsBlockReflowState::ComputeBlockAvailSpace(nsIFrame* aFrame,
|
|||
}
|
||||
}
|
||||
else {
|
||||
nsBlockFrame::ReplacedElementWidthToClear replacedWidthStruct;
|
||||
nsBlockFrame::ReplacedElementWidthToClear *replacedWidth = nsnull;
|
||||
if (aFrame->GetType() == nsGkAtoms::tableOuterFrame) {
|
||||
replacedWidth = &replacedWidthStruct;
|
||||
replacedWidthStruct =
|
||||
nsBlockFrame::WidthToClearPastFloats(*this, aFloatAvailableSpace.mRect,
|
||||
aFrame);
|
||||
}
|
||||
|
||||
nscoord leftOffset, rightOffset;
|
||||
ComputeReplacedBlockOffsetsForFloats(aFrame, aFloatAvailableSpace.mRect,
|
||||
leftOffset, rightOffset,
|
||||
replacedWidth);
|
||||
leftOffset, rightOffset);
|
||||
aResult.x = mContentArea.x + leftOffset;
|
||||
aResult.width = mContentArea.width - leftOffset - rightOffset;
|
||||
}
|
||||
|
|
|
@ -152,14 +152,11 @@ public:
|
|||
void ReconstructMarginAbove(nsLineList::iterator aLine);
|
||||
|
||||
// Caller must have called GetAvailableSpace for the correct position
|
||||
// (which need not be the current mY). Callers need only pass
|
||||
// aReplacedWidth for outer table frames.
|
||||
// (which need not be the current mY).
|
||||
void ComputeReplacedBlockOffsetsForFloats(nsIFrame* aFrame,
|
||||
const nsRect& aFloatAvailableSpace,
|
||||
nscoord& aLeftResult,
|
||||
nscoord& aRightResult,
|
||||
nsBlockFrame::ReplacedElementWidthToClear
|
||||
*aReplacedWidth = nsnull);
|
||||
nscoord& aRightResult);
|
||||
|
||||
// Caller must have called GetAvailableSpace for the current mY
|
||||
void ComputeBlockAvailSpace(nsIFrame* aFrame,
|
||||
|
|
|
@ -1835,7 +1835,9 @@ nsHTMLReflowState::InitConstraints(nsPresContext* aPresContext,
|
|||
NS_ASSERTION(mComputedHeight == NS_UNCONSTRAINEDSIZE ||
|
||||
mComputedHeight >= 0, "Bogus height");
|
||||
|
||||
if (isBlock && !IsSideCaption(frame, mStyleDisplay))
|
||||
// Exclude inline tables from the block margin calculations
|
||||
if (isBlock && !IsSideCaption(frame, mStyleDisplay) &&
|
||||
frame->GetStyleDisplay()->mDisplay != NS_STYLE_DISPLAY_INLINE_TABLE)
|
||||
CalculateBlockSideMargins(availableWidth, mComputedWidth);
|
||||
}
|
||||
}
|
||||
|
@ -1947,6 +1949,10 @@ nsCSSOffsetState::InitOffsets(nscoord aContainingBlockWidth,
|
|||
mComputedPadding.SizeTo(0,0,0,0);
|
||||
mComputedBorderPadding = tableFrame->GetIncludedOuterBCBorder();
|
||||
}
|
||||
|
||||
// The margin is inherited to the outer table frame via
|
||||
// the ::-moz-table-outer rule in ua.css.
|
||||
mComputedMargin.SizeTo(0, 0, 0, 0);
|
||||
} else if (frameType == nsGkAtoms::scrollbarFrame) {
|
||||
// scrollbars may have had their width or height smashed to zero
|
||||
// by the associated scrollframe, in which case we must not report
|
||||
|
|
|
@ -38,21 +38,21 @@
|
|||
|
||||
-->
|
||||
|
||||
<div style="width: 335px">
|
||||
<div style="width: 405px">
|
||||
<div class="contain">
|
||||
<div class="t" style="margin-left: 56px"></div>
|
||||
<div class="caption" style="margin-left: 116px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 334px">
|
||||
<div style="width: 404px">
|
||||
<div class="contain">
|
||||
<div class="t" style="margin-left: 56px"></div>
|
||||
<div class="caption" style="margin-left: 116px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 333px">
|
||||
<div style="width: 403px">
|
||||
<div class="contain">
|
||||
<div class="pushed"></div>
|
||||
<div class="t" style="margin-left: 55px"></div>
|
||||
|
@ -60,21 +60,21 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 334px">
|
||||
<div style="width: 405px">
|
||||
<div class="contain">
|
||||
<div class="caption" style="margin-left: 116px"></div>
|
||||
<div class="t" style="margin-left: 56px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 333px">
|
||||
<div style="width: 404px">
|
||||
<div class="contain">
|
||||
<div class="caption" style="margin-left: 116px"></div>
|
||||
<div class="t" style="margin-left: 56px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 332px">
|
||||
<div style="width: 403px">
|
||||
<div class="contain">
|
||||
<div class="pushed"></div>
|
||||
<div class="caption" style="margin-left: 116px"></div>
|
||||
|
@ -82,21 +82,21 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 334px">
|
||||
<div style="width: 406px">
|
||||
<div class="contain">
|
||||
<div class="t" style="margin-left: 57px"></div>
|
||||
<div class="caption" style="margin-left: 117px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 333px">
|
||||
<div style="width: 405px">
|
||||
<div class="contain">
|
||||
<div class="t" style="margin-left: 57px"></div>
|
||||
<div class="caption" style="margin-left: 117px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 332px">
|
||||
<div style="width: 404px">
|
||||
<div class="contain">
|
||||
<div class="pushed"></div>
|
||||
<div class="t" style="margin-left: 57px"></div>
|
||||
|
@ -104,148 +104,170 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 330px">
|
||||
<div style="width: 401px">
|
||||
<div class="contain">
|
||||
<div class="caption" style="margin-left: 56px"></div>
|
||||
<div class="caption" style="margin-left: 112px"></div>
|
||||
<div class="t" style="margin-left: 56px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 329px">
|
||||
<div style="width: 400px">
|
||||
<div class="contain">
|
||||
<div class="caption" style="margin-left: 56px"></div>
|
||||
<div class="caption" style="margin-left: 112px"></div>
|
||||
<div class="t" style="margin-left: 56px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 328px">
|
||||
<div style="width: 399px">
|
||||
<div class="contain">
|
||||
<div class="pushed"></div>
|
||||
<div class="caption" style="margin-left: 56px"></div>
|
||||
<div class="caption" style="margin-left: 112px"></div>
|
||||
<div class="t" style="margin-left: 56px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 331px">
|
||||
<div style="width: 401px">
|
||||
<div class="contain">
|
||||
<div class="t" style="margin-left: 56px"></div>
|
||||
<div class="caption" style="margin-left: 57px"></div>
|
||||
<div class="caption" style="margin-left: 112px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 330px">
|
||||
<div style="width: 400px">
|
||||
<div class="contain">
|
||||
<div class="t" style="margin-left: 56px"></div>
|
||||
<div class="caption" style="margin-left: 57px"></div>
|
||||
<div class="caption" style="margin-left: 112px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 329px">
|
||||
<div style="width: 399px">
|
||||
<div class="contain">
|
||||
<div class="pushed"></div>
|
||||
<div class="t" style="margin-left: 55px"></div>
|
||||
<div class="caption" style="margin-left: 56px"></div>
|
||||
<div class="caption" style="margin-left: 111px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 331px">
|
||||
<div style="width: 400px">
|
||||
<div class="contain">
|
||||
<div class="t" style="margin-left: 57px"></div>
|
||||
<div class="caption" style="margin-left: 56px"></div>
|
||||
<div class="t" style="margin-left: 56px"></div>
|
||||
<div class="caption" style="margin-left: 111px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 330px">
|
||||
<div style="width: 399px">
|
||||
<div class="contain">
|
||||
<div class="t" style="margin-left: 57px"></div>
|
||||
<div class="caption" style="margin-left: 56px"></div>
|
||||
<div class="t" style="margin-left: 56px"></div>
|
||||
<div class="caption" style="margin-left: 111px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 329px">
|
||||
<div style="width: 398px">
|
||||
<div class="contain">
|
||||
<div class="pushed"></div>
|
||||
<div class="t" style="margin-left: 56px"></div>
|
||||
<div class="caption" style="margin-left: 55px"></div>
|
||||
<div class="caption" style="margin-left: 111px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 330px">
|
||||
<div style="width: 400px">
|
||||
<div class="contain">
|
||||
<div class="caption" style="margin-left: 56px"></div>
|
||||
<div class="caption" style="margin-left: 111px"></div>
|
||||
<div class="t" style="margin-left: 56px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 329px">
|
||||
<div style="width: 399px">
|
||||
<div class="contain">
|
||||
<div class="caption" style="margin-left: 56px"></div>
|
||||
<div class="caption" style="margin-left: 111px"></div>
|
||||
<div class="t" style="margin-left: 56px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 328px">
|
||||
<div style="width: 398px">
|
||||
<div class="contain">
|
||||
<div class="pushed"></div>
|
||||
<div class="caption" style="margin-left: 55px"></div>
|
||||
<div class="caption" style="margin-left: 110px"></div>
|
||||
<div class="t" style="margin-left: 55px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 331px">
|
||||
<div style="width: 402px">
|
||||
<div class="contain">
|
||||
<div class="t" style="margin-left: 57px"></div>
|
||||
<div class="caption" style="margin-left: 56px"></div>
|
||||
<div class="caption" style="margin-left: 113px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 330px">
|
||||
<div style="width: 401px">
|
||||
<div class="contain">
|
||||
<div class="t" style="margin-left: 57px"></div>
|
||||
<div class="caption" style="margin-left: 56px"></div>
|
||||
<div class="caption" style="margin-left: 113px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 329px">
|
||||
<div style="width: 400px">
|
||||
<div class="contain">
|
||||
<div class="pushed"></div>
|
||||
<div class="t" style="margin-left: 57px"></div>
|
||||
<div class="caption" style="margin-left: 56px"></div>
|
||||
<div class="caption" style="margin-left: 113px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 331px">
|
||||
<div style="width: 402px">
|
||||
<div class="contain">
|
||||
<div class="caption" style="margin-left: 57px"></div>
|
||||
<div class="caption" style="margin-left: 113px"></div>
|
||||
<div class="t" style="margin-left: 56px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 330px">
|
||||
<div style="width: 401px">
|
||||
<div class="contain">
|
||||
<div class="caption" style="margin-left: 57px"></div>
|
||||
<div class="caption" style="margin-left: 113px"></div>
|
||||
<div class="t" style="margin-left: 56px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 329px">
|
||||
<div style="width: 400px">
|
||||
<div class="contain">
|
||||
<div class="pushed"></div>
|
||||
<div class="caption" style="margin-left: 57px"></div>
|
||||
<div class="caption" style="margin-left: 113px"></div>
|
||||
<div class="t" style="margin-left: 56px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 656px">
|
||||
<div class="contain">
|
||||
<div class="side caption" style="margin-left: 155px"></div
|
||||
><div class="side t" style="margin-left: 100px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 655px">
|
||||
<div class="contain">
|
||||
<div class="side caption" style="margin-left: 155px"></div
|
||||
><div class="side t" style="margin-left: 100px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 654px">
|
||||
<div class="contain">
|
||||
<div class="pushed"></div>
|
||||
<div class="side caption" style="margin-left: 155px"></div
|
||||
><div class="side t" style="margin-left: 100px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 657px">
|
||||
<div class="contain">
|
||||
<div class="side caption" style="margin-left: 56px"></div
|
||||
<div class="side caption" style="margin-left: 156px"></div
|
||||
><div class="side t" style="margin-left: 100px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 656px">
|
||||
<div class="contain">
|
||||
<div class="side caption" style="margin-left: 56px"></div
|
||||
<div class="side caption" style="margin-left: 156px"></div
|
||||
><div class="side t" style="margin-left: 100px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -253,43 +275,21 @@
|
|||
<div style="width: 655px">
|
||||
<div class="contain">
|
||||
<div class="pushed"></div>
|
||||
<div class="side caption" style="margin-left: 55px"></div
|
||||
><div class="side t" style="margin-left: 100px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 657px">
|
||||
<div class="contain">
|
||||
<div class="side caption" style="margin-left: 56px"></div
|
||||
><div class="side t" style="margin-left: 100px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 656px">
|
||||
<div class="contain">
|
||||
<div class="side caption" style="margin-left: 56px"></div
|
||||
><div class="side t" style="margin-left: 100px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 655px">
|
||||
<div class="contain">
|
||||
<div class="pushed"></div>
|
||||
<div class="side caption" style="margin-left: 56px"></div
|
||||
<div class="side caption" style="margin-left: 156px"></div
|
||||
><div class="side t" style="margin-left: 100px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 658px">
|
||||
<div class="contain">
|
||||
<div class="side caption" style="margin-left: 57px"></div
|
||||
<div class="side caption" style="margin-left: 157px"></div
|
||||
><div class="side t" style="margin-left: 100px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 657px">
|
||||
<div class="contain">
|
||||
<div class="side caption" style="margin-left: 57px"></div
|
||||
<div class="side caption" style="margin-left: 157px"></div
|
||||
><div class="side t" style="margin-left: 100px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -297,7 +297,7 @@
|
|||
<div style="width: 656px">
|
||||
<div class="contain">
|
||||
<div class="pushed"></div>
|
||||
<div class="side caption" style="margin-left: 57px"></div
|
||||
<div class="side caption" style="margin-left: 157px"></div
|
||||
><div class="side t" style="margin-left: 100px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -368,208 +368,208 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 338px">
|
||||
<div style="width: 425px">
|
||||
<div class="contain rtl">
|
||||
<div class="t" style="margin-left: 65px"></div>
|
||||
<div class="caption" style="margin-left: -15px"></div>
|
||||
<div class="t" style="margin-left: 152px"></div>
|
||||
<div class="caption" style="margin-left: 72px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 337px">
|
||||
<div style="width: 424px">
|
||||
<div class="contain rtl">
|
||||
<div class="t" style="margin-left: 64px"></div>
|
||||
<div class="caption" style="margin-left: -16px"></div>
|
||||
<div class="t" style="margin-left: 151px"></div>
|
||||
<div class="caption" style="margin-left: 71px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 336px">
|
||||
<div style="width: 423px">
|
||||
<div class="contain rtl">
|
||||
<div class="pushed"></div>
|
||||
<div class="t" style="margin-left: 64px"></div>
|
||||
<div class="caption" style="margin-left: -16px"></div>
|
||||
<div class="t" style="margin-left: 151px"></div>
|
||||
<div class="caption" style="margin-left: 71px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 337px">
|
||||
<div style="width: 425px">
|
||||
<div class="contain rtl">
|
||||
<div class="caption" style="margin-left: -16px"></div>
|
||||
<div class="t" style="margin-left: 64px"></div>
|
||||
<div class="caption" style="margin-left: 72px"></div>
|
||||
<div class="t" style="margin-left: 152px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 336px">
|
||||
<div style="width: 424px">
|
||||
<div class="contain rtl">
|
||||
<div class="caption" style="margin-left: -17px"></div>
|
||||
<div class="t" style="margin-left: 63px"></div>
|
||||
<div class="caption" style="margin-left: 71px"></div>
|
||||
<div class="t" style="margin-left: 151px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 335px">
|
||||
<div style="width: 423px">
|
||||
<div class="contain rtl">
|
||||
<div class="pushed"></div>
|
||||
<div class="caption" style="margin-left: -18px"></div>
|
||||
<div class="t" style="margin-left: 62px"></div>
|
||||
<div class="caption" style="margin-left: 70px"></div>
|
||||
<div class="t" style="margin-left: 150px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 337px">
|
||||
<div style="width: 426px">
|
||||
<div class="contain rtl">
|
||||
<div class="t" style="margin-left: 63px"></div>
|
||||
<div class="caption" style="margin-left: -17px"></div>
|
||||
<div class="t" style="margin-left: 152px"></div>
|
||||
<div class="caption" style="margin-left: 72px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 336px">
|
||||
<div style="width: 425px">
|
||||
<div class="contain rtl">
|
||||
<div class="t" style="margin-left: 62px"></div>
|
||||
<div class="caption" style="margin-left: -18px"></div>
|
||||
<div class="t" style="margin-left: 151px"></div>
|
||||
<div class="caption" style="margin-left: 71px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 335px">
|
||||
<div style="width: 424px">
|
||||
<div class="contain rtl">
|
||||
<div class="pushed"></div>
|
||||
<div class="t" style="margin-left: 61px"></div>
|
||||
<div class="caption" style="margin-left: -19px"></div>
|
||||
<div class="t" style="margin-left: 150px"></div>
|
||||
<div class="caption" style="margin-left: 70px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 330px">
|
||||
<div style="width: 418px">
|
||||
<div class="contain rtl">
|
||||
<div class="caption" style="margin-left: 57px"></div>
|
||||
<div class="t" style="margin-left: 57px"></div>
|
||||
<div class="caption" style="margin-left: 72px"></div>
|
||||
<div class="t" style="margin-left: 145px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 329px">
|
||||
<div style="width: 417px">
|
||||
<div class="contain rtl">
|
||||
<div class="caption" style="margin-left: 56px"></div>
|
||||
<div class="t" style="margin-left: 56px"></div>
|
||||
<div class="caption" style="margin-left: 71px"></div>
|
||||
<div class="t" style="margin-left: 144px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 328px">
|
||||
<div style="width: 416px">
|
||||
<div class="contain rtl">
|
||||
<div class="pushed"></div>
|
||||
<div class="caption" style="margin-left: 55px"></div>
|
||||
<div class="t" style="margin-left: 55px"></div>
|
||||
<div class="caption" style="margin-left: 70px"></div>
|
||||
<div class="t" style="margin-left: 143px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 331px">
|
||||
<div style="width: 418px">
|
||||
<div class="contain rtl">
|
||||
<div class="t" style="margin-left: 58px"></div>
|
||||
<div class="caption" style="margin-left: 57px"></div>
|
||||
<div class="t" style="margin-left: 145px"></div>
|
||||
<div class="caption" style="margin-left: 72px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 330px">
|
||||
<div style="width: 417px">
|
||||
<div class="contain rtl">
|
||||
<div class="t" style="margin-left: 57px"></div>
|
||||
<div class="caption" style="margin-left: 56px"></div>
|
||||
<div class="t" style="margin-left: 144px"></div>
|
||||
<div class="caption" style="margin-left: 71px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 329px">
|
||||
<div style="width: 416px">
|
||||
<div class="contain rtl">
|
||||
<div class="pushed"></div>
|
||||
<div class="t" style="margin-left: 57px"></div>
|
||||
<div class="caption" style="margin-left: 56px"></div>
|
||||
<div class="t" style="margin-left: 144px"></div>
|
||||
<div class="caption" style="margin-left: 71px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 331px">
|
||||
<div style="width: 417px">
|
||||
<div class="contain rtl">
|
||||
<div class="t" style="margin-left: 57px"></div>
|
||||
<div class="caption" style="margin-left: 58px"></div>
|
||||
<div class="t" style="margin-left: 144px"></div>
|
||||
<div class="caption" style="margin-left: 72px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 330px">
|
||||
<div style="width: 416px">
|
||||
<div class="contain rtl">
|
||||
<div class="t" style="margin-left: 56px"></div>
|
||||
<div class="caption" style="margin-left: 57px"></div>
|
||||
<div class="t" style="margin-left: 143px"></div>
|
||||
<div class="caption" style="margin-left: 71px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 329px">
|
||||
<div style="width: 415px">
|
||||
<div class="contain rtl">
|
||||
<div class="pushed"></div>
|
||||
<div class="t" style="margin-left: 56px"></div>
|
||||
<div class="caption" style="margin-left: 57px"></div>
|
||||
<div class="t" style="margin-left: 142px"></div>
|
||||
<div class="caption" style="margin-left: 70px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 330px">
|
||||
<div style="width: 417px">
|
||||
<div class="contain rtl">
|
||||
<div class="caption" style="margin-left: 57px"></div>
|
||||
<div class="t" style="margin-left: 57px"></div>
|
||||
<div class="caption" style="margin-left: 72px"></div>
|
||||
<div class="t" style="margin-left: 144px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 329px">
|
||||
<div style="width: 416px">
|
||||
<div class="contain rtl">
|
||||
<div class="caption" style="margin-left: 56px"></div>
|
||||
<div class="t" style="margin-left: 56px"></div>
|
||||
<div class="caption" style="margin-left: 71px"></div>
|
||||
<div class="t" style="margin-left: 143px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 328px">
|
||||
<div style="width: 415px">
|
||||
<div class="contain rtl">
|
||||
<div class="pushed"></div>
|
||||
<div class="caption" style="margin-left: 56px"></div>
|
||||
<div class="t" style="margin-left: 56px"></div>
|
||||
<div class="caption" style="margin-left: 71px"></div>
|
||||
<div class="t" style="margin-left: 143px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 331px">
|
||||
<div style="width: 419px">
|
||||
<div class="contain rtl">
|
||||
<div class="t" style="margin-left: 57px"></div>
|
||||
<div class="caption" style="margin-left: 58px"></div>
|
||||
<div class="t" style="margin-left: 145px"></div>
|
||||
<div class="caption" style="margin-left: 72px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 330px">
|
||||
<div style="width: 418px">
|
||||
<div class="contain rtl">
|
||||
<div class="t" style="margin-left: 56px"></div>
|
||||
<div class="caption" style="margin-left: 57px"></div>
|
||||
<div class="t" style="margin-left: 144px"></div>
|
||||
<div class="caption" style="margin-left: 71px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 329px">
|
||||
<div style="width: 417px">
|
||||
<div class="contain rtl">
|
||||
<div class="pushed"></div>
|
||||
<div class="t" style="margin-left: 55px"></div>
|
||||
<div class="caption" style="margin-left: 56px"></div>
|
||||
<div class="t" style="margin-left: 143px"></div>
|
||||
<div class="caption" style="margin-left: 70px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 331px">
|
||||
<div style="width: 419px">
|
||||
<div class="contain rtl">
|
||||
<div class="caption" style="margin-left: 57px"></div>
|
||||
<div class="t" style="margin-left: 58px"></div>
|
||||
<div class="caption" style="margin-left: 72px"></div>
|
||||
<div class="t" style="margin-left: 146px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 330px">
|
||||
<div style="width: 418px">
|
||||
<div class="contain rtl">
|
||||
<div class="caption" style="margin-left: 56px"></div>
|
||||
<div class="t" style="margin-left: 57px"></div>
|
||||
<div class="caption" style="margin-left: 71px"></div>
|
||||
<div class="t" style="margin-left: 145px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 329px">
|
||||
<div style="width: 417px">
|
||||
<div class="contain rtl">
|
||||
<div class="pushed"></div>
|
||||
<div class="caption" style="margin-left: 55px"></div>
|
||||
<div class="t" style="margin-left: 56px"></div>
|
||||
<div class="caption" style="margin-left: 70px"></div>
|
||||
<div class="t" style="margin-left: 144px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 673px">
|
||||
<div class="contain rtl">
|
||||
<!-- margins showing up in the wrong places? -->
|
||||
<div class="side caption" style="margin-left: 100px"></div
|
||||
<div class="side caption" style="margin-left: 201px"></div
|
||||
><div class="side t" style="margin-left: 72px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -577,7 +577,7 @@
|
|||
<div style="width: 672px">
|
||||
<div class="contain rtl">
|
||||
<!-- margins showing up in the wrong places? -->
|
||||
<div class="side caption" style="margin-left: 100px"></div
|
||||
<div class="side caption" style="margin-left: 200px"></div
|
||||
><div class="side t" style="margin-left: 72px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -586,7 +586,7 @@
|
|||
<div class="contain rtl">
|
||||
<div class="pushed"></div>
|
||||
<!-- margins showing up in the wrong places? -->
|
||||
<div class="side caption" style="margin-left: 100px"></div
|
||||
<div class="side caption" style="margin-left: 199px"></div
|
||||
><div class="side t" style="margin-left: 72px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -594,7 +594,7 @@
|
|||
<div style="width: 674px">
|
||||
<div class="contain rtl">
|
||||
<!-- margins showing up in the wrong places? -->
|
||||
<div class="side caption" style="margin-left: 100px"></div
|
||||
<div class="side caption" style="margin-left: 201px"></div
|
||||
><div class="side t" style="margin-left: 73px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -602,7 +602,7 @@
|
|||
<div style="width: 673px">
|
||||
<div class="contain rtl">
|
||||
<!-- margins showing up in the wrong places? -->
|
||||
<div class="side caption" style="margin-left: 100px"></div
|
||||
<div class="side caption" style="margin-left: 200px"></div
|
||||
><div class="side t" style="margin-left: 73px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -611,7 +611,7 @@
|
|||
<div class="contain rtl">
|
||||
<div class="pushed"></div>
|
||||
<!-- margins showing up in the wrong places? -->
|
||||
<div class="side caption" style="margin-left: 100px"></div
|
||||
<div class="side caption" style="margin-left: 199px"></div
|
||||
><div class="side t" style="margin-left: 73px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -619,7 +619,7 @@
|
|||
<div style="width: 675px">
|
||||
<div class="contain rtl">
|
||||
<!-- margins showing up in the wrong places? -->
|
||||
<div class="side caption" style="margin-left: 100px"></div
|
||||
<div class="side caption" style="margin-left: 201px"></div
|
||||
><div class="side t" style="margin-left: 74px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -627,7 +627,7 @@
|
|||
<div style="width: 674px">
|
||||
<div class="contain rtl">
|
||||
<!-- margins showing up in the wrong places? -->
|
||||
<div class="side caption" style="margin-left: 100px"></div
|
||||
<div class="side caption" style="margin-left: 200px"></div
|
||||
><div class="side t" style="margin-left: 74px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -636,29 +636,29 @@
|
|||
<div class="contain rtl">
|
||||
<div class="pushed"></div>
|
||||
<!-- margins showing up in the wrong places? -->
|
||||
<div class="side caption" style="margin-left: 100px"></div
|
||||
<div class="side caption" style="margin-left: 199px"></div
|
||||
><div class="side t" style="margin-left: 74px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 673px">
|
||||
<div style="width: 674px">
|
||||
<div class="contain rtl">
|
||||
<div class="side t" style="margin-left: 101px"></div
|
||||
><div class="side caption" style="margin-left: 100px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 672px">
|
||||
<div style="width: 673px">
|
||||
<div class="contain rtl">
|
||||
<div class="side t" style="margin-left: 100px"></div
|
||||
><div class="side caption" style="margin-left: 100px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 671px">
|
||||
<div style="width: 672px">
|
||||
<div class="contain rtl">
|
||||
<div class="pushed"></div>
|
||||
<div class="side t" style="margin-left: 99px"></div
|
||||
<div class="side t" style="margin-left: 100px"></div
|
||||
><div class="side caption" style="margin-left: 100px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -46,7 +46,7 @@
|
|||
|
||||
-->
|
||||
|
||||
<div style="width: 335px">
|
||||
<div style="width: 405px">
|
||||
<div class="contain">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -57,7 +57,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 334px">
|
||||
<div style="width: 404px">
|
||||
<div class="contain">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -68,7 +68,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 333px">
|
||||
<div style="width: 403px">
|
||||
<div class="contain">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -79,7 +79,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 334px">
|
||||
<div style="width: 405px">
|
||||
<div class="contain">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -90,7 +90,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 333px">
|
||||
<div style="width: 404px">
|
||||
<div class="contain">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -101,7 +101,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 332px">
|
||||
<div style="width: 403px">
|
||||
<div class="contain">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -112,7 +112,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 334px">
|
||||
<div style="width: 406px">
|
||||
<div class="contain">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -123,7 +123,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 333px">
|
||||
<div style="width: 405px">
|
||||
<div class="contain">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -134,7 +134,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 332px">
|
||||
<div style="width: 404px">
|
||||
<div class="contain">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -145,7 +145,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 330px">
|
||||
<div style="width: 401px">
|
||||
<div class="contain">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -156,7 +156,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 329px">
|
||||
<div style="width: 400px">
|
||||
<div class="contain">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -167,7 +167,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 328px">
|
||||
<div style="width: 399px">
|
||||
<div class="contain">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -178,7 +178,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 331px">
|
||||
<div style="width: 401px">
|
||||
<div class="contain">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -189,7 +189,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 330px">
|
||||
<div style="width: 400px">
|
||||
<div class="contain">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -200,7 +200,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 329px">
|
||||
<div style="width: 399px">
|
||||
<div class="contain">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -211,7 +211,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 331px">
|
||||
<div style="width: 400px">
|
||||
<div class="contain">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -222,7 +222,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 330px">
|
||||
<div style="width: 399px">
|
||||
<div class="contain">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -233,7 +233,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 329px">
|
||||
<div style="width: 398px">
|
||||
<div class="contain">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -244,7 +244,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 330px">
|
||||
<div style="width: 400px">
|
||||
<div class="contain">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -255,7 +255,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 329px">
|
||||
<div style="width: 399px">
|
||||
<div class="contain">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -266,7 +266,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 328px">
|
||||
<div style="width: 398px">
|
||||
<div class="contain">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -277,7 +277,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 331px">
|
||||
<div style="width: 402px">
|
||||
<div class="contain">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -288,7 +288,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 330px">
|
||||
<div style="width: 401px">
|
||||
<div class="contain">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -299,7 +299,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 329px">
|
||||
<div style="width: 400px">
|
||||
<div class="contain">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -310,7 +310,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 331px">
|
||||
<div style="width: 402px">
|
||||
<div class="contain">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -321,7 +321,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 330px">
|
||||
<div style="width: 401px">
|
||||
<div class="contain">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -332,7 +332,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 329px">
|
||||
<div style="width: 400px">
|
||||
<div class="contain">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -343,17 +343,6 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 657px">
|
||||
<div class="contain">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
<table class="t" style="margin: 0 100px 0 100px; caption-side: left">
|
||||
<caption style="margin: 0 100px 0 55px"></caption>
|
||||
<tr><td></td></tr>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 656px">
|
||||
<div class="contain">
|
||||
<div class="fl"></div>
|
||||
|
@ -376,6 +365,17 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 654px">
|
||||
<div class="contain">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
<table class="t" style="margin: 0 100px 0 100px; caption-side: left">
|
||||
<caption style="margin: 0 100px 0 55px"></caption>
|
||||
<tr><td></td></tr>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 657px">
|
||||
<div class="contain">
|
||||
<div class="fl"></div>
|
||||
|
@ -541,7 +541,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 338px">
|
||||
<div style="width: 425px">
|
||||
<div class="contain rtl">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -552,7 +552,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 337px">
|
||||
<div style="width: 424px">
|
||||
<div class="contain rtl">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -563,7 +563,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 336px">
|
||||
<div style="width: 423px">
|
||||
<div class="contain rtl">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -574,7 +574,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 337px">
|
||||
<div style="width: 425px">
|
||||
<div class="contain rtl">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -585,7 +585,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 336px">
|
||||
<div style="width: 424px">
|
||||
<div class="contain rtl">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -596,7 +596,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 335px">
|
||||
<div style="width: 423px">
|
||||
<div class="contain rtl">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -607,7 +607,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 337px">
|
||||
<div style="width: 426px">
|
||||
<div class="contain rtl">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -618,7 +618,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 336px">
|
||||
<div style="width: 425px">
|
||||
<div class="contain rtl">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -629,7 +629,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 335px">
|
||||
<div style="width: 424px">
|
||||
<div class="contain rtl">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -640,7 +640,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 330px">
|
||||
<div style="width: 418px">
|
||||
<div class="contain rtl">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -651,7 +651,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 329px">
|
||||
<div style="width: 417px">
|
||||
<div class="contain rtl">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -662,7 +662,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 328px">
|
||||
<div style="width: 416px">
|
||||
<div class="contain rtl">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -673,7 +673,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 331px">
|
||||
<div style="width: 418px">
|
||||
<div class="contain rtl">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -684,7 +684,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 330px">
|
||||
<div style="width: 417px">
|
||||
<div class="contain rtl">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -695,7 +695,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 329px">
|
||||
<div style="width: 416px">
|
||||
<div class="contain rtl">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -706,7 +706,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 331px">
|
||||
<div style="width: 417px">
|
||||
<div class="contain rtl">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -717,7 +717,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 330px">
|
||||
<div style="width: 416px">
|
||||
<div class="contain rtl">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -728,7 +728,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 329px">
|
||||
<div style="width: 415px">
|
||||
<div class="contain rtl">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -739,7 +739,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 330px">
|
||||
<div style="width: 417px">
|
||||
<div class="contain rtl">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -750,7 +750,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 329px">
|
||||
<div style="width: 416px">
|
||||
<div class="contain rtl">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -761,7 +761,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 328px">
|
||||
<div style="width: 415px">
|
||||
<div class="contain rtl">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -772,7 +772,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 331px">
|
||||
<div style="width: 419px">
|
||||
<div class="contain rtl">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -783,7 +783,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 330px">
|
||||
<div style="width: 418px">
|
||||
<div class="contain rtl">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -794,7 +794,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 329px">
|
||||
<div style="width: 417px">
|
||||
<div class="contain rtl">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -805,7 +805,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 331px">
|
||||
<div style="width: 419px">
|
||||
<div class="contain rtl">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -816,7 +816,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 330px">
|
||||
<div style="width: 418px">
|
||||
<div class="contain rtl">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -827,7 +827,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 329px">
|
||||
<div style="width: 417px">
|
||||
<div class="contain rtl">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
|
@ -937,6 +937,17 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 674px">
|
||||
<div class="contain rtl">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
<table class="t" style="margin: 0 72px 0 100px; caption-side: right">
|
||||
<caption style="margin: 0 100px 0 100px"></caption>
|
||||
<tr><td></td></tr>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 673px">
|
||||
<div class="contain rtl">
|
||||
<div class="fl"></div>
|
||||
|
@ -959,17 +970,6 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 671px">
|
||||
<div class="contain rtl">
|
||||
<div class="fl"></div>
|
||||
<div class="fr"></div>
|
||||
<table class="t" style="margin: 0 72px 0 100px; caption-side: right">
|
||||
<caption style="margin: 0 100px 0 100px"></caption>
|
||||
<tr><td></td></tr>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="width: 674px">
|
||||
<div class="contain rtl">
|
||||
<div class="fl"></div>
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
<head>
|
||||
<title>Testcase for table + caption vertical margins (bug 478614)</title>
|
||||
<style type="text/css">
|
||||
body {margin-top: 0} /* Don't let collapsing of the body's top margin interfere with positioning */
|
||||
caption {margin-top: 150px}
|
||||
table {width:100px}
|
||||
</style>
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
<head>
|
||||
<title>Testcase for table + caption vertical margins (bug 478614)</title>
|
||||
<style type="text/css">
|
||||
body {margin-top: 0} /* Don't let collapsing of the body's top margin interfere with positioning */
|
||||
caption {margin-top: 50px;}
|
||||
table {margin-top: 100px; width:100px}
|
||||
</style>
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
<head>
|
||||
<title>Testcase for table + caption vertical margins (bug 478614)</title>
|
||||
<style type="text/css">
|
||||
body {margin-top: 0} /* Don't let collapsing of the body's top margin interfere with positioning */
|
||||
caption {margin-top: 50px; caption-side:top}
|
||||
table {margin-top: 100px; width:100px}
|
||||
</style>
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
<head>
|
||||
<title>Testcase for table + caption vertical margins (bug 478614)</title>
|
||||
<style type="text/css">
|
||||
body {margin-top: 0} /* Don't let collapsing of the body's top margin interfere with positioning */
|
||||
caption { caption-side:bottom;}
|
||||
table {100px; width:100px;}
|
||||
</style>
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
<head>
|
||||
<title>Testcase for table + caption vertical margins (bug 478614)</title>
|
||||
<style type="text/css">
|
||||
body {margin-top: 0} /* Don't let collapsing of the body's top margin interfere with positioning */
|
||||
caption {margin-bottom: 100px; caption-side:bottom;}
|
||||
table {margin-bottom: 100px; width:100px;}
|
||||
</style>
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
<head>
|
||||
<title>Testcase for table + caption vertical margins (bug 478614)</title>
|
||||
<style type="text/css">
|
||||
body {margin-top: 0} /* Don't let collapsing of the body's top margin interfere with positioning */
|
||||
caption {margin-top: 160px;margin-bottom:50px}
|
||||
table {width:100px}
|
||||
</style>
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
<head>
|
||||
<title>Testcase for table + caption vertical margins (bug 478614)</title>
|
||||
<style type="text/css">
|
||||
body {margin-top: 0} /* Don't let collapsing of the body's top margin interfere with positioning */
|
||||
caption {margin-top: 60px;margin-bottom:50px}
|
||||
table {margin-top: 100px; width:100px}
|
||||
</style>
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
<head>
|
||||
<title>Testcase for table + caption vertical margins (bug 478614)</title>
|
||||
<style type="text/css">
|
||||
body {margin-top: 0} /* Don't let collapsing of the body's top margin interfere with positioning */
|
||||
caption {margin-top:50px; caption-side:bottom}
|
||||
table {width:100px}
|
||||
</style>
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
<head>
|
||||
<title>Testcase for table + caption vertical margins (bug 478614)</title>
|
||||
<style type="text/css">
|
||||
body {margin-top: 0} /* Don't let collapsing of the body's top margin interfere with positioning */
|
||||
caption {margin-bottom: 100px;margin-top:50px; caption-side:bottom}
|
||||
table {margin-bottom: 100px; width:100px}
|
||||
</style>
|
||||
|
|
|
@ -3,7 +3,8 @@
|
|||
<head>
|
||||
<title>Testcase for table + caption vertical margins (bug 478614)</title>
|
||||
<style type="text/css">
|
||||
caption {margin-top: 100px;margin-bottom:50px;caption-side:top-outside}
|
||||
body {margin-top: 0} /* Don't let collapsing of the body's top margin interfere with positioning */
|
||||
caption {margin-top: 150px;caption-side:top-outside}
|
||||
table { width:100px}
|
||||
</style>
|
||||
</head>
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
<head>
|
||||
<title>Testcase for table + caption vertical margins (bug 478614)</title>
|
||||
<style type="text/css">
|
||||
body {margin-top: 0} /* Don't let collapsing of the body's top margin interfere with positioning */
|
||||
caption {margin-top: 100px;caption-side:top-outside}
|
||||
table {margin-top: 50px; width:100px}
|
||||
</style>
|
||||
|
|
|
@ -3,13 +3,16 @@
|
|||
<head>
|
||||
<title>Testcase for table + caption vertical margins (bug 478614)</title>
|
||||
<style type="text/css">
|
||||
body {margin-top: 0} /* Don't let collapsing of the body's top margin interfere with positioning */
|
||||
caption {margin-top: 50px;caption-side:bottom-outside}
|
||||
table {width:100px}
|
||||
table {width:100px;}
|
||||
div {margin-top: 150px;}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<table><caption>caption</caption>
|
||||
<tr><td>td</td></tr>
|
||||
</table>
|
||||
<div>block</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
@ -3,7 +3,8 @@
|
|||
<head>
|
||||
<title>Testcase for table + caption vertical margins (bug 478614)</title>
|
||||
<style type="text/css">
|
||||
caption {margin-top: 50px;caption-side:bottom-outside}
|
||||
body {margin-top: 0} /* Don't let collapsing of the body's top margin interfere with positioning */
|
||||
caption {margin-top: 50px; margin-bottom: 100px; caption-side:bottom-outside}
|
||||
table {margin-bottom: 50px; width:100px}
|
||||
</style>
|
||||
</head>
|
||||
|
@ -11,5 +12,6 @@ table {margin-bottom: 50px; width:100px}
|
|||
<table><caption>caption</caption>
|
||||
<tr><td>td</td></tr>
|
||||
</table>
|
||||
<div>block</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
@ -0,0 +1,11 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<style>
|
||||
img { display: block; margin-left: 200px; height: 100px; width: 100px; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<img src="../bugs/solidblue.png">
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,13 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<style>
|
||||
div { float: left; width: 200px; height: 200px; }
|
||||
img { display: block; margin-left: 100px; height: 100px; width: 100px; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div></div>
|
||||
<img src="../bugs/solidblue.png">
|
||||
</body>
|
||||
</html>
|
|
@ -1,3 +1,4 @@
|
|||
== border-box-wrap-around-float.html border-box-wrap-around-float-ref.html
|
||||
== other-float-outside-rule-3-left.html other-float-outside-rule-3-left-ref.html
|
||||
== other-float-outside-rule-3-right.html other-float-outside-rule-3-right-ref.html
|
||||
fails == other-float-outside-rule-3-left-2.html other-float-outside-rule-3-left-2-ref.html # bug 616334
|
||||
|
|
|
@ -138,32 +138,32 @@ fails-if(Android&&layersOpenGL) == block-sibling-2-dyn.html block-sibling-2-ref2
|
|||
== block-overflow-5c.html block-overflow-5c-ref2.html
|
||||
== block-overflow-5d.html block-overflow-5-ref.html
|
||||
== block-overflow-5d.html block-overflow-5-ref2.html
|
||||
fails == table-sibling-1a.html table-sibling-1-ref.html # Bug 87277
|
||||
fails != table-sibling-1a.html table-sibling-1-noref.html # Bug 87277
|
||||
fails == table-sibling-1b.html table-sibling-1-ref.html # Bug 87277
|
||||
fails != table-sibling-1b.html table-sibling-1-noref.html # Bug 87277
|
||||
fails == table-sibling-1c.html table-sibling-1-ref.html # Bug 87277
|
||||
fails != table-sibling-1c.html table-sibling-1-noref2.html # Bug 87277
|
||||
fails == table-sibling-2a.html table-sibling-2-ref.html # Bug 87277
|
||||
fails != table-sibling-2a.html table-sibling-2-noref.html # Bug 87277
|
||||
fails == table-sibling-2b.html table-sibling-2-ref.html # Bug 87277
|
||||
fails != table-sibling-2b.html table-sibling-2-noref.html # Bug 87277
|
||||
fails == table-sibling-2c.html table-sibling-2-ref.html # Bug 87277
|
||||
fails != table-sibling-2c.html table-sibling-2-noref2.html # Bug 87277
|
||||
fails == table-sibling-1a-dyn.html table-sibling-1-ref.html # Bug 87277
|
||||
fails != table-sibling-1a-dyn.html table-sibling-1-noref.html # Bug 87277
|
||||
fails == table-sibling-1b-dyn.html table-sibling-1-ref.html # Bug 87277
|
||||
fails != table-sibling-1b-dyn.html table-sibling-1-noref.html # Bug 87277
|
||||
fails == table-sibling-1c-dyn.html table-sibling-1-ref.html # Bug 87277
|
||||
fails != table-sibling-1c-dyn.html table-sibling-1-noref2.html # Bug 87277
|
||||
fails == table-sibling-2a-dyn.html table-sibling-2-ref.html # Bug 87277
|
||||
fails != table-sibling-2a-dyn.html table-sibling-2-noref.html # Bug 87277
|
||||
fails == table-sibling-2b-dyn.html table-sibling-2-ref.html # Bug 87277
|
||||
fails != table-sibling-2b-dyn.html table-sibling-2-noref.html # Bug 87277
|
||||
fails == table-sibling-2c-dyn.html table-sibling-2-ref.html # Bug 87277
|
||||
fails != table-sibling-2c-dyn.html table-sibling-2-noref2.html # Bug 87277
|
||||
fails == table-sibling-3-dyn.html table-sibling-3-ref.html # Bug 87277
|
||||
fails != table-sibling-3-dyn.html table-sibling-3-noref.html # Bug 87277
|
||||
== table-sibling-1a.html table-sibling-1-ref.html
|
||||
!= table-sibling-1a.html table-sibling-1-noref.html
|
||||
== table-sibling-1b.html table-sibling-1-ref.html
|
||||
!= table-sibling-1b.html table-sibling-1-noref.html
|
||||
== table-sibling-1c.html table-sibling-1-ref.html
|
||||
!= table-sibling-1c.html table-sibling-1-noref2.html
|
||||
== table-sibling-2a.html table-sibling-2-ref.html
|
||||
!= table-sibling-2a.html table-sibling-2-noref.html
|
||||
== table-sibling-2b.html table-sibling-2-ref.html
|
||||
!= table-sibling-2b.html table-sibling-2-noref.html
|
||||
== table-sibling-2c.html table-sibling-2-ref.html
|
||||
!= table-sibling-2c.html table-sibling-2-noref2.html
|
||||
== table-sibling-1a-dyn.html table-sibling-1-ref.html
|
||||
!= table-sibling-1a-dyn.html table-sibling-1-noref.html
|
||||
== table-sibling-1b-dyn.html table-sibling-1-ref.html
|
||||
!= table-sibling-1b-dyn.html table-sibling-1-noref.html
|
||||
== table-sibling-1c-dyn.html table-sibling-1-ref.html
|
||||
!= table-sibling-1c-dyn.html table-sibling-1-noref2.html
|
||||
== table-sibling-2a-dyn.html table-sibling-2-ref.html
|
||||
!= table-sibling-2a-dyn.html table-sibling-2-noref.html
|
||||
== table-sibling-2b-dyn.html table-sibling-2-ref.html
|
||||
!= table-sibling-2b-dyn.html table-sibling-2-noref.html
|
||||
== table-sibling-2c-dyn.html table-sibling-2-ref.html
|
||||
!= table-sibling-2c-dyn.html table-sibling-2-noref2.html
|
||||
== table-sibling-3-dyn.html table-sibling-3-ref.html
|
||||
!= table-sibling-3-dyn.html table-sibling-3-noref.html
|
||||
== table-caption-1a.html table-caption-1-ref.html
|
||||
== table-caption-1b.html table-caption-1-ref.html
|
||||
== table-caption-2a.html table-caption-2-ref.html
|
||||
|
|
|
@ -3424,7 +3424,12 @@ nsComputedDOMStyle::GetMarginWidthFor(mozilla::css::Side aSide)
|
|||
} else {
|
||||
AssertFlushedPendingReflows();
|
||||
|
||||
val->SetAppUnits(mInnerFrame->GetUsedMargin().Side(aSide));
|
||||
// For tables, GetUsedMargin always returns an empty margin, so we
|
||||
// should read the margin from the outer table frame instead.
|
||||
val->SetAppUnits(mOuterFrame->GetUsedMargin().Side(aSide));
|
||||
NS_ASSERTION(mOuterFrame == mInnerFrame ||
|
||||
mInnerFrame->GetUsedMargin() == nsMargin(0, 0, 0, 0),
|
||||
"Inner tables must have zero margins");
|
||||
}
|
||||
|
||||
return val;
|
||||
|
|
|
@ -58,7 +58,7 @@
|
|||
|
||||
*|*::-moz-table-outer {
|
||||
display: inherit !important; /* table or inline-table */
|
||||
margin: 0 ! important;
|
||||
margin: inherit ! important;
|
||||
padding: 0 ! important;
|
||||
border: none ! important;
|
||||
float: inherit;
|
||||
|
|
|
@ -1502,6 +1502,9 @@ nsTableFrame::IntrinsicWidthOffsets(nsRenderingContext* aRenderingContext)
|
|||
IntrinsicWidthOffsetData result =
|
||||
nsHTMLContainerFrame::IntrinsicWidthOffsets(aRenderingContext);
|
||||
|
||||
result.hMargin = 0;
|
||||
result.hPctMargin = 0;
|
||||
|
||||
if (IsBorderCollapse()) {
|
||||
result.hPadding = 0;
|
||||
result.hPctPadding = 0;
|
||||
|
@ -2337,6 +2340,14 @@ nsTableFrame::GetUsedPadding() const
|
|||
return nsMargin(0,0,0,0);
|
||||
}
|
||||
|
||||
/* virtual */ nsMargin
|
||||
nsTableFrame::GetUsedMargin() const
|
||||
{
|
||||
// The margin is inherited to the outer table frame via
|
||||
// the ::-moz-table-outer rule in ua.css.
|
||||
return nsMargin(0, 0, 0, 0);
|
||||
}
|
||||
|
||||
// Destructor function for BCPropertyData properties
|
||||
static void
|
||||
DestroyBCProperty(void* aPropertyValue)
|
||||
|
|
|
@ -193,6 +193,7 @@ public:
|
|||
|
||||
virtual nsMargin GetUsedBorder() const;
|
||||
virtual nsMargin GetUsedPadding() const;
|
||||
virtual nsMargin GetUsedMargin() const;
|
||||
|
||||
// Get the offset from the border box to the area where the row groups fit
|
||||
nsMargin GetChildAreaOffset(const nsHTMLReflowState* aReflowState) const;
|
||||
|
|
|
@ -536,7 +536,6 @@ ChildShrinkWrapWidth(nsRenderingContext *aRenderingContext,
|
|||
nsSize aCBSize, nscoord aAvailableWidth,
|
||||
nscoord *aMarginResult = nsnull)
|
||||
{
|
||||
// The outer table's children do not use it as a containing block.
|
||||
nsCSSOffsetState offsets(aChildFrame, aRenderingContext, aCBSize.width);
|
||||
nsSize size = aChildFrame->ComputeSize(aRenderingContext, aCBSize,
|
||||
aAvailableWidth,
|
||||
|
@ -561,9 +560,10 @@ nsTableOuterFrame::ComputeAutoSize(nsRenderingContext *aRenderingContext,
|
|||
nsSize aMargin, nsSize aBorder,
|
||||
nsSize aPadding, bool aShrinkWrap)
|
||||
{
|
||||
if (!aShrinkWrap)
|
||||
return nsHTMLContainerFrame::ComputeAutoSize(aRenderingContext, aCBSize,
|
||||
aAvailableWidth, aMargin, aBorder, aPadding, aShrinkWrap);
|
||||
nscoord kidAvailableWidth = aAvailableWidth - aMargin.width;
|
||||
NS_ASSERTION(aBorder == nsSize(0, 0) &&
|
||||
aPadding == nsSize(0, 0),
|
||||
"Table outer frames cannot hae borders or paddings");
|
||||
|
||||
// When we're shrink-wrapping, our auto size needs to wrap around the
|
||||
// actual size of the table, which (if it is specified as a percent)
|
||||
|
@ -575,20 +575,20 @@ nsTableOuterFrame::ComputeAutoSize(nsRenderingContext *aRenderingContext,
|
|||
nscoord width;
|
||||
if (captionSide == NO_SIDE) {
|
||||
width = ChildShrinkWrapWidth(aRenderingContext, InnerTableFrame(),
|
||||
aCBSize, aAvailableWidth);
|
||||
aCBSize, kidAvailableWidth);
|
||||
} else if (captionSide == NS_STYLE_CAPTION_SIDE_LEFT ||
|
||||
captionSide == NS_STYLE_CAPTION_SIDE_RIGHT) {
|
||||
nscoord capWidth = ChildShrinkWrapWidth(aRenderingContext,
|
||||
mCaptionFrames.FirstChild(),
|
||||
aCBSize, aAvailableWidth);
|
||||
aCBSize, kidAvailableWidth);
|
||||
width = capWidth + ChildShrinkWrapWidth(aRenderingContext,
|
||||
InnerTableFrame(), aCBSize,
|
||||
aAvailableWidth - capWidth);
|
||||
kidAvailableWidth - capWidth);
|
||||
} else if (captionSide == NS_STYLE_CAPTION_SIDE_TOP ||
|
||||
captionSide == NS_STYLE_CAPTION_SIDE_BOTTOM) {
|
||||
nscoord margin;
|
||||
width = ChildShrinkWrapWidth(aRenderingContext, InnerTableFrame(),
|
||||
aCBSize, aAvailableWidth, &margin);
|
||||
aCBSize, kidAvailableWidth, &margin);
|
||||
nscoord capWidth = ChildShrinkWrapWidth(aRenderingContext,
|
||||
mCaptionFrames.FirstChild(), aCBSize,
|
||||
width - margin);
|
||||
|
@ -599,10 +599,10 @@ nsTableOuterFrame::ComputeAutoSize(nsRenderingContext *aRenderingContext,
|
|||
captionSide == NS_STYLE_CAPTION_SIDE_BOTTOM_OUTSIDE,
|
||||
"unexpected caption-side");
|
||||
width = ChildShrinkWrapWidth(aRenderingContext, InnerTableFrame(),
|
||||
aCBSize, aAvailableWidth);
|
||||
aCBSize, kidAvailableWidth);
|
||||
nscoord capWidth = ChildShrinkWrapWidth(aRenderingContext,
|
||||
mCaptionFrames.FirstChild(),
|
||||
aCBSize, aAvailableWidth);
|
||||
aCBSize, kidAvailableWidth);
|
||||
if (capWidth > width)
|
||||
width = capWidth;
|
||||
}
|
||||
|
@ -743,22 +743,14 @@ nsTableOuterFrame::GetCaptionOrigin(PRUint32 aCaptionSide,
|
|||
break;
|
||||
}
|
||||
break;
|
||||
case NS_STYLE_CAPTION_SIDE_BOTTOM_OUTSIDE:
|
||||
case NS_STYLE_CAPTION_SIDE_BOTTOM: {
|
||||
aOrigin.y = aInnerMargin.top + aInnerSize.height + aCaptionMargin.top;
|
||||
} break;
|
||||
case NS_STYLE_CAPTION_SIDE_BOTTOM_OUTSIDE: {
|
||||
nsCollapsingMargin marg;
|
||||
marg.Include(aCaptionMargin.top);
|
||||
marg.Include(aInnerMargin.bottom);
|
||||
nscoord collapseMargin = marg.get();
|
||||
aOrigin.y = aInnerMargin.top + aInnerSize.height + collapseMargin;
|
||||
} break;
|
||||
case NS_STYLE_CAPTION_SIDE_TOP_OUTSIDE:
|
||||
case NS_STYLE_CAPTION_SIDE_TOP: {
|
||||
aOrigin.y = aInnerMargin.top + aCaptionMargin.top;
|
||||
} break;
|
||||
case NS_STYLE_CAPTION_SIDE_TOP_OUTSIDE: {
|
||||
aOrigin.y = aCaptionMargin.top;
|
||||
} break;
|
||||
default:
|
||||
NS_NOTREACHED("Unknown caption alignment type");
|
||||
break;
|
||||
|
@ -838,17 +830,11 @@ nsTableOuterFrame::GetInnerOrigin(PRUint32 aCaptionSide,
|
|||
}
|
||||
} break;
|
||||
case NO_SIDE:
|
||||
case NS_STYLE_CAPTION_SIDE_TOP_OUTSIDE:
|
||||
case NS_STYLE_CAPTION_SIDE_TOP: {
|
||||
aOrigin.y = aInnerMargin.top + aCaptionMargin.top + aCaptionSize.height +
|
||||
aCaptionMargin.bottom;
|
||||
} break;
|
||||
case NS_STYLE_CAPTION_SIDE_TOP_OUTSIDE: {
|
||||
nsCollapsingMargin marg;
|
||||
marg.Include(aCaptionMargin.bottom);
|
||||
marg.Include(aInnerMargin.top);
|
||||
nscoord collapseMargin = marg.get();
|
||||
aOrigin.y = aCaptionMargin.top + aCaptionSize.height + collapseMargin;
|
||||
} break;
|
||||
default:
|
||||
NS_NOTREACHED("Unknown caption alignment type");
|
||||
break;
|
||||
|
@ -1048,24 +1034,10 @@ NS_METHOD nsTableOuterFrame::Reflow(nsPresContext* aPresContext,
|
|||
nscoord captionHeight = 0;
|
||||
switch (captionSide) {
|
||||
case NS_STYLE_CAPTION_SIDE_TOP:
|
||||
case NS_STYLE_CAPTION_SIDE_BOTTOM: {
|
||||
captionHeight = captionSize.height + captionMargin.TopBottom();
|
||||
break;
|
||||
}
|
||||
case NS_STYLE_CAPTION_SIDE_TOP_OUTSIDE: {
|
||||
nsCollapsingMargin belowCaptionMargin;
|
||||
belowCaptionMargin.Include(captionMargin.bottom);
|
||||
belowCaptionMargin.Include(innerRS->mComputedMargin.top);
|
||||
captionHeight = captionSize.height + captionMargin.top +
|
||||
belowCaptionMargin.get();
|
||||
break;
|
||||
}
|
||||
case NS_STYLE_CAPTION_SIDE_BOTTOM:
|
||||
case NS_STYLE_CAPTION_SIDE_TOP_OUTSIDE:
|
||||
case NS_STYLE_CAPTION_SIDE_BOTTOM_OUTSIDE: {
|
||||
nsCollapsingMargin aboveCaptionMargin;
|
||||
aboveCaptionMargin.Include(captionMargin.top);
|
||||
aboveCaptionMargin.Include(innerRS->mComputedMargin.bottom);
|
||||
captionHeight = captionSize.height + captionMargin.bottom +
|
||||
aboveCaptionMargin.get();
|
||||
captionHeight = captionSize.height + captionMargin.TopBottom();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
Загрузка…
Ссылка в новой задаче