4 <script src=
"../../resources/js-test.js"></script>
5 <p>This test checks
<a href=
"http://dev.w3.org/html5/spec/Overview.html#bidirectional-text">the default rules for direction and unicode-bidi CSS properties
</a>.
</p>
6 <div id=
"container"></div>
7 <div id=
"console"></div>
10 var container
= document
.getElementById('container');
12 function styleOf(name
, attributes
) {
13 var element
= document
.createElement(name
);
14 for (var name
in attributes
) {
15 var value
= attributes
[name
];
16 element
.setAttribute(name
, value
);
18 container
.appendChild(element
);
19 return getComputedStyle(element
);
23 ['div', {}, 'ltr', '-webkit-isolate'],
24 ['div', {'dir': 'ltr'}, 'ltr', 'embed'],
25 ['div', {'dir': 'rtl'}, 'rtl', 'embed'],
26 ['div', {'dir': 'auto'}, 'ltr', '-webkit-isolate'],
27 ['div', {'dir': ''}, 'ltr', 'embed'],
29 ['span', {}, 'ltr', 'normal'],
30 ['span', {'dir': 'ltr'}, 'ltr', 'embed'],
31 ['span', {'dir': 'rtl'}, 'rtl', 'embed'],
32 ['span', {'dir': 'auto'}, 'ltr', '-webkit-isolate'],
33 ['span', {'dir': ''}, 'ltr', 'embed'],
35 ['bdi', {}, 'ltr', '-webkit-isolate'],
36 ['bdi', {'dir': 'ltr'}, 'ltr', '-webkit-isolate'],
37 ['bdi', {'dir': 'rtl'}, 'rtl', '-webkit-isolate'],
38 ['bdi', {'dir': 'auto'}, 'ltr', '-webkit-isolate'],
39 ['bdi', {'dir': ''}, 'ltr', '-webkit-isolate'],
41 ['output', {}, 'ltr', '-webkit-isolate'],
42 ['output', {'dir': 'ltr'}, 'ltr', '-webkit-isolate'],
43 ['output', {'dir': 'rtl'}, 'rtl', '-webkit-isolate'],
44 ['output', {'dir': 'auto'}, 'ltr', '-webkit-isolate'],
45 ['output', {'dir': ''}, 'ltr', '-webkit-isolate'],
47 ['bdo', {}, 'ltr', 'bidi-override'],
48 ['bdo', {'dir': 'ltr'}, 'ltr', 'bidi-override'],
49 ['bdo', {'dir': 'rtl'}, 'rtl', 'bidi-override'],
50 ['bdo', {'dir': 'auto'}, 'ltr', 'bidi-override -webkit-isolate'],
51 ['bdo', {'dir': ''}, 'ltr', 'bidi-override'],
53 ['textarea', {}, 'ltr', 'normal'],
54 ['textarea', {'dir': 'ltr'}, 'ltr', 'embed'],
55 ['textarea', {'dir': 'rtl'}, 'rtl', 'embed'],
56 ['textarea', {'dir': 'auto'}, 'ltr', '-webkit-plaintext'],
57 ['textarea', {'dir': ''}, 'ltr', 'embed'],
59 ['pre', {}, 'ltr', 'normal'],
60 ['pre', {'dir': 'ltr'}, 'ltr', 'embed'],
61 ['pre', {'dir': 'rtl'}, 'rtl', 'embed'],
62 ['pre', {'dir': 'auto'}, 'ltr', '-webkit-plaintext'],
63 ['pre', {'dir': ''}, 'ltr', 'embed'],
64 ].forEach(function (test
) {
65 shouldBe('styleOf("' + test
[0] + '", ' + JSON
.stringify(test
[1]) + ').direction', '"' + test
[2] + '"');
66 container
.innerHTML
= '';
67 shouldBe('styleOf("' + test
[0] + '", ' + JSON
.stringify(test
[1]) + ').unicodeBidi', '"' + test
[3] + '"');
68 container
.innerHTML
= '';