summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/css/css-writing-modes/sizing-orthog-htb-in-vlr-021.xht
blob: 3d1d1983d9fe47241891c3e9b324823349e40a22 (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
<!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 definite-sized 'vertical-lr' 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-vlr-015-ref.xht" />

  <meta name="DC.date.created" content="2016-12-20T09: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 '400px'. Since the width of the containing block is definite in this test, then constrain is the width of such containing block which is, in this test, 400px. This test presumes that the initial containing block's width is greater than 400px. In this test, the max-content will be less than the width of the 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&nbsp;am&nbsp;a&nbsp;text&nbsp;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-vlr 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' its max-content inline-size
  is narrower than max(min-content, constraint)

  -->

  <style type="text/css"><![CDATA[
  html
    {
      writing-mode: vertical-lr;
    }

  body
    {
      font-size: 16px;
      line-height: 1.25; /* therefore, each line box is 20px tall */
      margin-left: 0px;
      margin-right: 0px;
    }

  div#sized-400px-vlr-containing-block
    {
      width: 400px;
    }

  div#ortho-block-htb
    {
      border: blue solid 3px;
      width: auto;
      writing-mode: horizontal-tb;
    }
  ]]></style>

 </head>

 <body>

  <div id="sized-400px-vlr-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>