ellipsis-font-fallback.html 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151
  1. <!DOCTYPE HTML>
  2. <!--
  3. Any copyright is dedicated to the Public Domain.
  4. http://creativecommons.org/licenses/publicdomain/
  5. Test: fallback to three ASCII periods when ellipsis is unavailable in the font
  6. -->
  7. <html><head>
  8. <title>text-overflow: ellipsis fallback</title>
  9. <style type="text/css">
  10. @font-face {
  11. /* This font has glyphs for ASCII period, upper-case X and space. */
  12. font-family: TestEllipsisFallback;
  13. src: url(TestEllipsisFallback.woff);
  14. }
  15. html,body {
  16. color:black; background-color:white; font-size:16px; padding:0; margin:0; font-family: TestEllipsisFallback;
  17. }
  18. .rtl {
  19. direction:rtl;
  20. }
  21. .ltr {
  22. direction:ltr;
  23. }
  24. .rlo {
  25. unicode-bidi: bidi-override; direction: rtl;
  26. }
  27. .lro {
  28. unicode-bidi: bidi-override; direction: ltr;
  29. }
  30. .o {
  31. text-overflow: ellipsis ellipsis;
  32. color:blue;
  33. }
  34. .o span {
  35. color:black;
  36. }
  37. .s {
  38. width:10em;
  39. }
  40. .s2 {
  41. width:10em;
  42. }
  43. .s3 {
  44. width:6em;
  45. }
  46. .s4 {
  47. width:8em;
  48. }
  49. .s5 {
  50. width:5em;
  51. }
  52. .s6 {
  53. width:1em;
  54. }
  55. .s7 {
  56. width:6em;
  57. }
  58. .p {
  59. overflow: hidden;
  60. white-space:nowrap;
  61. }
  62. .r {
  63. text-align:right;
  64. }
  65. .c {
  66. margin-left:-0.5em;
  67. margin-right:-0.5em;
  68. }
  69. #test1a { top:0em; left:0; position:absolute; }
  70. #test1b { top:2em; left:0; position:absolute; }
  71. #test1c { top:4em; left:0; position:absolute; }
  72. #test1d { top:6em; left:0; position:absolute; }
  73. #test2a { top:0em; left:15em; position:absolute; }
  74. #test2b { top:2em; left:15em; position:absolute; }
  75. #test2c { top:4em; left:15em; position:absolute; }
  76. #test2d { top:6em; left:15em; position:absolute; }
  77. #test3a { top: 8em; left:0; position:absolute; }
  78. #test3b { top:10em; left:0; position:absolute; }
  79. #test3c { top:12em; left:0; position:absolute; }
  80. #test3d { top:14em; left:0; position:absolute; }
  81. #test4a { top: 8em; left:15em; position:absolute; }
  82. #test4b { top:10em; left:15em; position:absolute; }
  83. #test4c { top:12em; left:15em; position:absolute; }
  84. #test4d { top:14em; left:15em; position:absolute; }
  85. #test5a { top:16em; left:0; position:absolute; }
  86. #test5b { top:18em; left:0; position:absolute; }
  87. #test5c { top:20em; left:0; position:absolute; }
  88. #test5d { top:22em; left:0; position:absolute; }
  89. #test6a { top:16em; left:15em; position:absolute; }
  90. #test6b { top:18em; left:15em; position:absolute; }
  91. #test6c { top:20em; left:15em; position:absolute; }
  92. #test6d { top:22em; left:15em; position:absolute; }
  93. #test7a { top:24em; left:0; position:absolute; }
  94. #test7b { top:26em; left:0; position:absolute; }
  95. #test7c { top:28em; left:0; position:absolute; }
  96. #test7d { top:30em; left:0; position:absolute; }
  97. </style>
  98. </head>
  99. <body>
  100. <div style="position: absolute; top:20px; left:50px;">
  101. <!-- start + end marker -->
  102. <div id="test1a"><div class="s ltr"><div class="p o"><span class="c lro">XXXXXXXXXXXX</span></div></div></div>
  103. <div id="test1b"><div class="s rtl"><div class="p o"><span class="c lro">XXXXXXXXXXXX</span></div></div></div>
  104. <div id="test1c"><div class="s ltr"><div class="p o"><span class="c rlo">XXXXXXXXXXXX</span></div></div></div>
  105. <div id="test1d"><div class="s rtl"><div class="p o"><span class="c rlo">XXXXXXXXXXXX</span></div></div></div>
  106. <!-- end marker -->
  107. <div id="test2a"><div class="s2 ltr"><div class="p o"><span class="lro">XXXXXXXXXXXX</span></div></div></div>
  108. <div id="test2b"><div class="s2 rtl"><div class="p o"><span class="lro">XXXXXXXXXXXX</span></div></div></div>
  109. <div id="test2c"><div class="s2 ltr"><div class="p o"><span class="rlo">XXXXXXXXXXXX</span></div></div></div>
  110. <div id="test2d"><div class="s2 rtl"><div class="p o"><span class="rlo">XXXXXXXXXXXX</span></div></div></div>
  111. <!-- start marker -->
  112. <div id="test3a"><div class="s3 ltr"><div class="p o"><span class="c lro">XXXXXX</span></div></div></div>
  113. <div id="test3b"><div class="s3 rtl"><div class="p o"><span class="c lro">XXXXXX</span></div></div></div>
  114. <div id="test3c"><div class="s3 ltr"><div class="p o"><span class="c rlo">XXXXXX</span></div></div></div>
  115. <div id="test3d"><div class="s3 rtl"><div class="p o"><span class="c rlo">XXXXXX</span></div></div></div>
  116. <!-- start + end marker, no characters fit, marker is clipped -->
  117. <div id="test6a"><div class="s6 ltr"><div class="p o"><span class="c lro">XXXXXXXXXXXX</span></div></div></div>
  118. <div id="test6b"><div class="s6 rtl"><div class="p o"><span class="c lro">XXXXXXXXXXXX</span></div></div></div>
  119. <div id="test6c"><div class="s6 ltr"><div class="p o"><span class="c rlo">XXXXXXXXXXXX</span></div></div></div>
  120. <div id="test6d"><div class="s6 rtl"><div class="p o"><span class="c rlo">XXXXXXXXXXXX</span></div></div></div>
  121. <!-- start marker, all characters overlapped by marker -->
  122. <div id="test7a"><div class="s7 ltr"><div class="p o"><span class="c lro">XXX</span></div></div></div>
  123. <div id="test7b"><div class="s7 rtl"><div class="p o"><span class="c lro">XXX</span></div></div></div>
  124. <div id="test7c"><div class="s7 ltr"><div class="p o"><span class="c rlo">XXX</span></div></div></div>
  125. <div id="test7d"><div class="s7 rtl"><div class="p o"><span class="c rlo">XXX</span></div></div></div>
  126. </div>
  127. </body>
  128. </html>