OLD | NEW |
1 <style> | 1 <style> |
2 p.first-letter:first-letter { color: red; } | 2 p.first-letter:first-letter { color: red; } |
3 </style> | 3 </style> |
4 <div id="container"> | 4 <div id="container"> |
5 <p id="description"></p> | 5 <p id="description"></p> |
6 <p id="sample" class="first-letter"><span>0123456</span></p> | 6 <p id="sample" class="first-letter"><span>0123456</span></p> |
7 </div> | 7 </div> |
8 <div id="console"></div> | 8 <div id="console"></div> |
9 <script src="../../../../fast/js/resources/js-test-pre.js"></script> | 9 <script src="../../../../resources/js-test.js"></script> |
10 <script> | 10 <script> |
11 description('caretRangeFromPoint() should work with :first-letter style'); | 11 description('caretRangeFromPoint() should work with :first-letter style'); |
12 function $(id) { return document.getElementById(id); } | 12 function $(id) { return document.getElementById(id); } |
13 | 13 |
14 var middle = $('sample').offsetTop + $('sample').offsetHeight / 2; | 14 var middle = $('sample').offsetTop + $('sample').offsetHeight / 2; |
15 var left = $('sample').offsetLeft; | 15 var left = $('sample').offsetLeft; |
16 var numberOfChars = $('sample').firstChild.firstChild.length; | 16 var numberOfChars = $('sample').firstChild.firstChild.length; |
17 var charWidth = $('sample').firstChild.offsetWidth / numberOfChars; | 17 var charWidth = $('sample').firstChild.offsetWidth / numberOfChars; |
18 var x = left; | 18 var x = left; |
19 for (var i = 0; i < numberOfChars; ++i) { | 19 for (var i = 0; i < numberOfChars; ++i) { |
20 var range = document.caretRangeFromPoint(x + 3, middle); | 20 var range = document.caretRangeFromPoint(x + 3, middle); |
21 shouldBe('range.startOffset', i.toString()); | 21 shouldBe('range.startOffset', i.toString()); |
22 x += charWidth; | 22 x += charWidth; |
23 } | 23 } |
24 | 24 |
25 if (window.testRunner) | 25 if (window.testRunner) |
26 $('container').outerHTML = ''; | 26 $('container').outerHTML = ''; |
27 </script> | 27 </script> |
OLD | NEW |