| Index: LayoutTests/imported/csswg-test/css-writing-modes-3/abs-pos-non-replaced-vrl-110.xht
|
| diff --git a/LayoutTests/imported/csswg-test/css-writing-modes-3/abs-pos-non-replaced-vrl-010.xht b/LayoutTests/imported/csswg-test/css-writing-modes-3/abs-pos-non-replaced-vrl-110.xht
|
| similarity index 59%
|
| copy from LayoutTests/imported/csswg-test/css-writing-modes-3/abs-pos-non-replaced-vrl-010.xht
|
| copy to LayoutTests/imported/csswg-test/css-writing-modes-3/abs-pos-non-replaced-vrl-110.xht
|
| index 2d27a2d8bc0c807efe4c1540dd9d9df07ee4d2fa..5fd89710fffa0f894c0fabaafb2020899020f43c 100644
|
| --- a/LayoutTests/imported/csswg-test/css-writing-modes-3/abs-pos-non-replaced-vrl-010.xht
|
| +++ b/LayoutTests/imported/csswg-test/css-writing-modes-3/abs-pos-non-replaced-vrl-110.xht
|
| @@ -8,22 +8,23 @@
|
|
|
| <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/" />
|
| <link rel="help" href="http://www.w3.org/TR/css-writing-modes-3/#vertical-layout" title="7.1 Principles of Layout in Vertical Writing Modes" />
|
| - <link rel="help" href="http://www.w3.org/TR/CSS21/visudet.html#abs-non-replaced-width" title="10.3.7 Absolutely positioned, non-replaced elements" />
|
| - <link rel="match" href="abs-pos-non-replaced-vlr-009-ref.xht" />
|
| + <link rel="help" href="http://www.w3.org/TR/CSS21/visudet.html#abs-non-replaced-height" title="10.6.4 Absolutely positioned, non-replaced elements" />
|
| + <link rel="match" href="abs-pos-non-replaced-vrl-004-ref.xht" />
|
|
|
| <meta name="flags" content="ahem image" />
|
| - <meta name="assert" content="When 'direction' is 'rtl' and 'left', 'width' and 'right' are 'auto', then set 'right' to the static position, the width becomes shrink-to-fit and then solve for 'left'." />
|
| + <meta name="assert" content="When 'direction' is 'rtl' and 'left', 'width' and 'right' are 'auto' and 'writing-mode' is 'vertical-rl', then set 'right' to the static position, the width is based on the content and then solve for 'left'." />
|
|
|
| <style type="text/css"><![CDATA[
|
| div#containing-block
|
| {
|
| - background: red url("support/bg-red-2col-2row-320x320.png");
|
| + background: red url("support/bg-red-3col-2row-320x320.png");
|
| color: transparent;
|
| direction: rtl;
|
| font: 80px/1 Ahem;
|
| height: 320px;
|
| position: relative;
|
| width: 320px;
|
| + -webkit-writing-mode: vertical-rl;
|
| }
|
|
|
| div#containing-block > span
|
| @@ -34,63 +35,70 @@
|
| position: absolute;
|
| right: auto;
|
| width: auto;
|
| - -webkit-writing-mode: vertical-rl;
|
| }
|
|
|
| /*
|
| "
|
| -If all three of 'left', 'width', and 'right' are 'auto': First set any 'auto' values for 'margin-left' and 'margin-right' to 0. Then, if the 'direction' property of the element establishing the static-position containing block is 'ltr' set 'left' to the static position and apply rule number three below; otherwise, set 'right' to the static position and apply rule number one below.
|
| +Layout calculation rules (such as those in CSS2.1, Section 10.3) that apply to the horizontal dimension in horizontal writing modes instead apply to the vertical dimension in vertical writing modes.
|
| +"
|
| +7.1 Principles of Layout in Vertical Writing Modes
|
| +http://www.w3.org/TR/css-writing-modes-3/#vertical-layout
|
| +
|
| +So here, *right and *left properties are input into the §10.6.4 algorithms where *right properties refer to *top properties in the layout rules and where *left properties refer to *bottom properties in the layout rules.
|
|
|
| -1. 'left' and 'width' are 'auto' and 'right' is not 'auto', then the width is shrink-to-fit. Then solve for 'left'
|
| +"
|
| +If all three of 'top', 'height', and 'bottom' are auto, set 'top' to the static position and apply rule number three below.
|
| +
|
| +3. 'height' and 'bottom' are 'auto' and 'top' is not 'auto', then the height is based on the content per 10.6.7, set 'auto' values for 'margin-top' and 'margin-bottom' to 0, and solve for 'bottom'
|
| "
|
|
|
| 'left' + 'margin-left' + 'border-left-width' + 'padding-left' + 'width' + 'padding-right' + 'border-right-width' + 'margin-right' + 'right' = width of containing block
|
|
|
| So:
|
|
|
| - (solve) : left: auto
|
| + 80px : right: auto: set to static position
|
| +
|
| - 0px : margin-left
|
| + 0px : margin-right
|
| +
|
| - 0px : border-left-width
|
| + 0px : border-right-width
|
| +
|
| - 0px : padding-left
|
| + 0px : padding-right
|
| +
|
| - (shrink-to-fit) : width: auto
|
| + (based on the content) : width: auto
|
| +
|
| - 0px : padding-right
|
| + 0px : padding-left
|
| +
|
| - 0px : border-right-width
|
| + 0px : border-left-width
|
| +
|
| - 0px : margin-right
|
| + 0px : margin-left
|
| +
|
| - 160px : right: auto: set to static position
|
| + (solve) : left: auto
|
| =====================
|
| 320px : width of containing block
|
|
|
| gives us:
|
|
|
| - (solve) : left: auto
|
| + 80px : right: auto: set to static position
|
| +
|
| - 0px : margin-left
|
| + 0px : margin-right
|
| +
|
| - 0px : border-left-width
|
| + 0px : border-right-width
|
| +
|
| - 0px : padding-left
|
| + 0px : padding-right
|
| +
|
| - 80px : (shrink-to-fit) : width: auto
|
| + 80px : (based on the content) : width: auto
|
| +
|
| - 0px : padding-right
|
| + 0px : padding-left
|
| +
|
| - 0px : border-right-width
|
| + 0px : border-left-width
|
| +
|
| - 0px : margin-right
|
| + 0px : margin-left
|
| +
|
| - 160px : right: auto: set to static position
|
| + (solve) : left: auto
|
| =====================
|
| 320px : width of containing block
|
|
|
| -And so computed left value must be 80px .
|
| +And so computed left value must be 160px .
|
| */
|
|
|
| ]]></style>
|
|
|