File: default-properties-on-the-math-root.html

package info (click to toggle)
thunderbird 1%3A115.16.0esr-1~deb12u1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 3,476,252 kB
  • sloc: cpp: 6,972,150; javascript: 5,209,211; ansic: 3,507,222; python: 1,137,609; asm: 432,531; xml: 205,149; java: 175,761; sh: 116,485; makefile: 22,152; perl: 13,971; objc: 12,561; yacc: 4,583; pascal: 2,840; lex: 1,720; ruby: 1,075; exp: 762; sql: 666; awk: 580; php: 436; lisp: 430; sed: 70; csh: 10
file content (57 lines) | stat: -rw-r--r-- 1,889 bytes parent folder | download | duplicates (20)
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
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Default properties on the &lt;math&gt; root</title>
<link rel="help" href="https://w3c.github.io/mathml-core/#the-top-level-math-element">
<link rel="help" href="https://w3c.github.io/mathml-core/#user-agent-stylesheet">
<meta name="assert" content="Test properties on the math root set by the UA stylesheet.">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<style>
  math {
      font-size: 100px;
  }
  .styled {
      direction: rtl;
      writing-mode: vertical-lr;
      text-indent: .5em;
      letter-spacing: .5em;
      line-height: .5em;
      word-spacing: .5em;
      font-style: italic;
      font-weight: bold;
  }
</style>

</head>
<body>
  <div id="log"></div>
  <div class="styled">
    <math id="ua"></math>
    <math id="author" class="styled"></math>
  </div>

  <script>
    function getProperty(id, property) {
        return window.getComputedStyle(document.getElementById(id))[property];
    }
    [
        // Property name, value when specified from the UA, from the author.
        ["direction", "ltr", "rtl"],
        ["writing-mode", "horizontal-tb", "horizontal-tb"], // MathML Core level 1 only supports horizontal mode.
        ["text-indent", "0px", "50px"],
        ["letter-spacing", "normal", "50px"],
        ["line-height", "normal", "50px"],
        ["word-spacing", "0px", "50px"],
        ["font-style", "normal", "italic"],
        ["font-weight", "400", "700"]
    ].forEach(([name, ua_value, author_value]) => {
        test(function () {
            assert_equals(getProperty("ua", name), ua_value, "when specified from the UA sheet");
            assert_equals(getProperty("author", name), author_value, "when specified by the author");
        }, `Value of ${name} on the <math> root`);
    });
  </script>
</body>
</html>