blob: 0a569b1fe2842f0eb86990153d52ec1121d8f3d2 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>CSS Writing Modes Test: sizing of orthogonal 'horizontal-tb' block with 'auto' inline size inside auto-sized 'vertical-rl' containing block</title>
<link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/" />
<link rel="help" href="https://www.w3.org/TR/css-writing-modes-3/#orthogonal-auto" />
<link rel="match" href="sizing-orthog-htb-in-vrl-003-ref.xht" />
<meta name="DC.date.created" content="2016-12-19T09:54:03+11:00" scheme="W3CDTF" />
<meta name="DC.date.modified" content="2017-01-03T09:54:03+11:00" scheme="W3CDTF" />
<meta name="assert" content="In this test, the inline size of the orthogonal block is 'auto' and its containing block's block size is also 'auto'. Since the width of the containing block is indefinite in this test, then constrain is the width of initial containing block which is, in this test, equal to the width of the viewport. In this test, the max-content will be less than the width of the initial containing block. Therefore the inline size of div#ortho-block-htb will be its max-content." />
<!--
shrink-to-fit formula min(max-content, max(min-content, constraint))
max-content inline size: narrowest inline size needed to fit its contents
if none of the soft wrap opportunities within the box were taken. Eg:
max-content of "I am a text sentence." is "I am a text sentence."
https://www.w3.org/TR/css-sizing-3/#max-content-inline-size
min-content inline size of the box: longest word in a sentence or longest non-breakable
inline box (inline replaced or inline-block). Eg: min-content of "I am a text sentence."
is "sentence."
https://www.w3.org/TR/css-sizing-3/#min-content-inline-size
contraint: min(available space, initial containing block's size)
available space: this is either a measurement of its containing block
(if that is definite) or an infinite size (when it is indefinite).
https://drafts.csswg.org/css-sizing-4/#available
- - - - - - - - - - - - -
Inside this batch of 24 sizing-orthog-htb-in-vrl tests:
001-012 : body has 100px margin-left and 100px margin-right
013-024 : body has no horizontal margins
Inside each sub-batch of 12 tests:
001-006: containing block's width is 'auto' therefore indefinite
007-012: containing block's width is 400px therefore definite
Inside each sub-sub-batch of 6 tests:
001-003: containing block has 1 sentence before and after
004-006: containing block has no sentence before and no sentence after
Inside each sub-sub-sub-batch of 3 tests:
001: orthogonal block's width is 'auto'
002: orthogonal block's width is 'auto' and its min-content
inline size (1 very long word) is wider than constraint
003: orthogonal block's width is 'auto' and its max-content inline size
is narrower than max(min-content, constraint)
-->
<style type="text/css"><![CDATA[
html
{
writing-mode: vertical-rl;
}
body
{
font-size: 16px;
line-height: 1.25; /* therefore, each line box is 20px tall */
margin-left: 100px;
margin-right: 100px;
}
div#auto-sized-vrl-containing-block
{
width: auto;
/*
'width: auto' causes the measurement of the orthogonal
box's containing block to be indefinite
*/
}
div#ortho-block-htb
{
border: blue solid 3px;
width: auto;
writing-mode: horizontal-tb;
}
]]></style>
</head>
<body>
<div id="auto-sized-vrl-containing-block">
<p id="sentence-before">Sentence before.</p>
<div id="ortho-block-htb">123456789012345</div>
<p id="sentence-after">Sentence after.</p>
</div>
</body>
</html>
|