mirror of
https://github.com/servo/servo.git
synced 2025-06-24 09:04:33 +01:00
81 lines
2.8 KiB
HTML
81 lines
2.8 KiB
HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1 plus MathML 2.0 plus SVG 1.1//EN" "http://www.w3.org/2002/04/xhtml-math-svg/xhtml-math-svg.dtd">
|
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
<head>
|
|
<title>CSS Test: Absolutely positioned inline replaced element with 'direction' as left-to-right, 'auto' specified for 'margin-left', 'margin-right', 'right' and 'height'</title>
|
|
<link rel="author" title="Microsoft" href="http://www.microsoft.com/" />
|
|
<link rel="reviewer" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/" /> <!-- 2012-09-07 -->
|
|
<link rel="help" href="http://www.w3.org/TR/CSS21/visudet.html#abs-replaced-width" />
|
|
<link rel="match" href="absolute-replaced-width-024-ref.xht" />
|
|
|
|
<meta name="flags" content="nonHTML svg" />
|
|
<meta name="assert" content="Computed value of 'auto' for 'margin-left' or margin-right' on absolutely positioned inline replaced element becomes a used value of '0'." />
|
|
<style type="text/css">
|
|
#div1
|
|
{
|
|
border: solid black;
|
|
direction: ltr;
|
|
height: 288px;
|
|
position: absolute;
|
|
width: auto;
|
|
}
|
|
|
|
/*
|
|
The svg's containing block is div#div1 which
|
|
has width: auto. Therefore, shrink-to-fit width
|
|
will apply to div#div1.
|
|
Its non-positioned content is its
|
|
inner div which requires a
|
|
minimum of 288px. Therefore,
|
|
div#div1 shrink-to-fit width
|
|
will compute to 288px.
|
|
*/
|
|
|
|
svg
|
|
{
|
|
height: 100px;
|
|
margin-left: auto;
|
|
margin-right: auto;
|
|
left: 88px;
|
|
position: absolute;
|
|
right: auto;
|
|
}
|
|
|
|
/*
|
|
|
|
88px : left
|
|
+
|
|
0px (set) : margin-left
|
|
+
|
|
300px : width (pre-defined fallback when intrinsic values are not defined)
|
|
+
|
|
0px (set) : margin-right
|
|
+
|
|
(solve) : right
|
|
=========================
|
|
388px : width of containing block (div#div1 width is 288px)
|
|
|
|
Therefore, used right offset must be -100px so that the
|
|
constraining equation gets balanced.
|
|
|
|
*/
|
|
|
|
div div
|
|
{
|
|
background: orange;
|
|
height: 100px;
|
|
margin-left: 88px;
|
|
margin-top: 100px;
|
|
width: 200px;
|
|
}
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<p>Test passes if the blue and orange rectangles have the same width and the blue rectangle is in the upper-right corner of an hollow black square.</p>
|
|
<div id="div1">
|
|
<svg:svg version="1.1" xmlns:svg="http://www.w3.org/2000/svg" height="50" baseProfile="full">
|
|
<svg:rect x="0" y="0" width="200" height="100" fill="blue" />
|
|
</svg:svg>
|
|
<div></div>
|
|
</div>
|
|
</body>
|
|
</html>
|