summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/mathml/relations/css-styling/displaystyle-011.html
blob: a0bfc29ae5fd4088c70c50a2c9c46ae7d7443a26 (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
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
<!DOCTYPE html>
<html>
  <head>
    <title>displaystyle</title>
    <meta charset="utf-8">
    <link rel="help" href="https://w3c.github.io/mathml-core/#the-displaystyle-and-scriptlevel-attributes">
    <link rel="help" href="https://w3c.github.io/mathml-core/#style-change-mstyle">
    <link rel="help" href="https://w3c.github.io/mathml-core/#fractions-mfrac">
    <link rel="help" href="https://w3c.github.io/mathml-core/#radicals-msqrt-mroot">
    <link rel="help" href="https://w3c.github.io/mathml-core/#subscripts-and-superscripts-msub-msup-msubsup">
    <link rel="help" href="https://w3c.github.io/mathml-core/#underscripts-and-overscripts-munder-mover-munderover">
    <link rel="help" href="https://w3c.github.io/mathml-core/#prescripts-and-tensor-indices-mmultiscripts">
    <link rel="help" href="https://w3c.github.io/mathml-core/#table-or-matrix-mtable">
    <link rel="help" href="https://w3c.github.io/mathml-core/#operator-fence-separator-or-accent-mo">
    <link rel="match" href="displaystyle-011-ref.html"/>
    <meta name="assert" content="Test the effect on displaystyle and movablelimits">
    <link rel="stylesheet" href="/fonts/ahem.css">
    <style>
      math {
          font: 25px Ahem;
      }
    </style>
  </head>
  <body>

    <!-- Test displaystyle on mstyle -->
    <math>
      <mstyle displaystyle="true">
        <munder><mo movablelimits="true">O</mo><mo>O</mo></munder>
      </mstyle>
      <mstyle displaystyle="false">
        <munder><mo movablelimits="true">O</mo><mo>O</mo></munder>
      </mstyle>
    </math>

    <!-- The mfrac element sets displaystyle to "false", or if it was already
         false increments scriptlevel by 1, within numerator and denominator.
      -->
    <math>
      <mstyle displaystyle="true">
        <mfrac>
          <munder><mo movablelimits="true">O</mo><mo>O</mo></munder>
          <munder><mo movablelimits="true">O</mo><mo>O</mo></munder>
        </mfrac>
      </mstyle>
    </math>

    <!--    The mroot element increments scriptlevel by 2, and sets
            displaystyle to "false", within index, but leaves both attributes
            unchanged within base.
            The msqrt element leaves both attributes unchanged within its
            argument. -->
    <math>
      <mstyle displaystyle="true">
        <mroot>
          <munder><mo movablelimits="true">O</mo><mo>O</mo></munder>
          <munder><mo movablelimits="true">O</mo><mo>O</mo></munder>
        </mroot>
        <msqrt>
          <munder><mo movablelimits="true">O</mo><mo>O</mo></munder>
        </msqrt>
      </mstyle>
    </math>

<!--
    The msub element [...] increments scriptlevel by 1, and sets displaystyle to
   "false", within subscript, but leaves both attributes unchanged within base.

   The msup element [...] increments scriptlevel by 1, and sets displaystyle to
   "false", within superscript, but leaves both attributes unchanged within
   base.

   The msubsup element [...] increments scriptlevel by 1, and sets displaystyle
   to "false", within subscript and superscript, but leaves both attributes
   unchanged within base.

   The mmultiscripts element increments scriptlevel by 1, and sets displaystyle
   to "false", within each of its arguments except base, but leaves both
   attributes unchanged within base.
   -->
    <math>
      <mstyle displaystyle="true">
        <msub>
          <munder><mo movablelimits="true">O</mo><mo>O</mo></munder>
          <munder><mo movablelimits="true">O</mo><mo>O</mo></munder>
        </msub>
        <msup>
          <munder><mo movablelimits="true">O</mo><mo>O</mo></munder>
          <munder><mo movablelimits="true">O</mo><mo>O</mo></munder>
        </msup>
        <msubsup>
          <munder><mo movablelimits="true">O</mo><mo>O</mo></munder>
          <munder><mo movablelimits="true">O</mo><mo>O</mo></munder>
          <munder><mo movablelimits="true">O</mo><mo>O</mo></munder>
        </msubsup>
        <mmultiscripts>
          <munder><mo movablelimits="true">O</mo><mo>O</mo></munder>
          <munder><mo movablelimits="true">O</mo><mo>O</mo></munder>
          <munder><mo movablelimits="true">O</mo><mo>O</mo></munder>
          <mprescripts/>
          <munder><mo movablelimits="true">O</mo><mo>O</mo></munder>
          <munder><mo movablelimits="true">O</mo><mo>O</mo></munder>
        </mmultiscripts>
      </mstyle>
    </math>

<!--
   The munder element [...] always sets displaystyle to "false" within the
   underscript, but increments scriptlevel by 1 only when accentunder is
   "false". Within base, it always leaves both attributes unchanged.

   The mover element [...] always sets displaystyle to "false" within
   overscript, but increments scriptlevel by 1 only when accent is "false".
   Within base, it always leaves both attributes unchanged.

   The munderover [..] always sets displaystyle to "false" within underscript
   and overscript, but increments scriptlevel by 1 only when accentunder or
   accent, respectively, are "false". Within base, it always leaves both
   attributes unchanged.
-->
    <math>
      <mstyle displaystyle="true">
        <munder>
          <munder><mo movablelimits="true">O</mo><mo>O</mo></munder>
          <munder><mo movablelimits="true">O</mo><mo>O</mo></munder>
        </munder>
        <mover>
          <munder><mo movablelimits="true">O</mo><mo>O</mo></munder>
          <munder><mo movablelimits="true">O</mo><mo>O</mo></munder>
        </mover>
        <munderover>
          <munder><mo movablelimits="true">O</mo><mo>O</mo></munder>
          <munder><mo movablelimits="true">O</mo><mo>O</mo></munder>
          <munder><mo movablelimits="true">O</mo><mo>O</mo></munder>
        </munderover>
      </mstyle>
    </math>

<!--
   The displaystyle attribute is allowed on the mtable element to set the
   inherited value of the attribute. If the attribute is not present, the
   mtable element sets displaystyle to "false" within the table elements.
-->
    <math>
      <mstyle displaystyle="false">
        <mtable displaystyle="true">
          <mtr>
            <mtd>
              <munder><mo movablelimits="true">O</mo><mo>O</mo></munder>
            </mtd>
          </mtr>
        </mtable>
      </mstyle>
      <mstyle displaystyle="true">
        <mtable>
          <mtr>
            <mtd>
              <munder><mo movablelimits="true">O</mo><mo>O</mo></munder>
            </mtd>
          </mtr>
        </mtable>
      </mstyle>
    </math>

    <script src="/mathml/support/feature-detection.js"></script>
    <script>MathMLFeatureDetection.ensure_for_match_reftest("has_movablelimits");</script>
  </body>
</html>