css/css-text

edit

WPT coverage of the tests of css/css-text at the revision 5602b0f210e3. The tests link to their results in the browsers on wpt.fyi. The tentative tests (experimental features) and the reftests are listed separately from the stable tests.

GroupPassingTestsDisabledPass rate
Stable340349097%
Tentative18180100%
Reftests1,5141,559097%
All1,8721,926097%

Failure reasons

The tests that do not pass (failing or disabled), by kind of reason. A test with several reasons counts once per kind.

  • BUG: 1
  • TEST BUG: 46
  • NOT IMPLEMENTED: 4
  • TEST RUNNER: 3

Stable tests

TestResultSubtestsKindDescription
animations/hyphen-no-interpolation.htmlPass168 / 168
animations/hyphenate-limit-chars-interpolation.htmlFail84 / 96TEST BUGthe values interpolated below 0 are clamped to 0 (the range of <integer [0,โˆž]>, as CSS Values requires for the interpolated values): at -0.5 the test expects the computed value of its invalid expected values (-1 -1 -2), the initial value auto; this engine gives 0 0. Chrome and Safari fail these subtests too, Firefox passes them
animations/hyphenate-limit-lines-interpolation.htmlPass96 / 96
animations/letter-spacing-composition.htmlPass30 / 30
animations/letter-spacing-interpolation.htmlPass144 / 144
animations/line-break-no-interpolation.htmlPass42 / 42
animations/tab-size-interpolation.htmlPass210 / 210
animations/text-indent-composition.htmlPass62 / 62
animations/text-indent-interpolation.htmlPass252 / 252
animations/word-spacing-composition.htmlPass30 / 30
animations/word-spacing-interpolation.htmlPass144 / 144
hyphens/hyphenate-limit-lines-dynamic-001.htmlPass1 / 1
i18n/css3-text-line-break-baspglwj-001.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-002.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-003.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-004.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-005.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-006.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-007.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-008.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-009.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-010.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-011.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-012.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-014.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-015.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-016.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-017.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-018.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-019.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-020.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-021.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-022.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-023.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-024.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-025.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-026.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-030.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-031.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-032.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-033.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-034.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-035.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-036.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-037.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-038.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-039.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-040.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-041.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-042.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-043.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-044.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-045.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-046.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-047.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-048.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-049.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-050.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-051.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-052.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-060.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-061.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-062.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-063.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-064.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-065.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-066.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-067.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-068.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-069.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-070.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-071.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-072.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-073.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-074.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-075.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-076.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-077.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-078.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-080.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-081.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-082.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-083.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-084.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-085.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-086.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-090.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-091.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-092.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-093.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-095.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-096.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-097.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-098.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-099.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-100.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-101.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-102.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-103.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-104.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-105.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-106.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-107.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-108.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-109.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-110.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-111.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-112.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-113.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-114.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-115.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-116.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-117.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-118.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-120.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-121.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-122.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-123.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-124.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-125.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-126.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-127.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-128.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-130.htmlPass4 / 4
i18n/css3-text-line-break-baspglwj-131.htmlPass4 / 4
i18n/ja/css-text-line-break-ja-cj-loose.htmlPass51 / 51
i18n/ja/css-text-line-break-ja-cj-normal.htmlPass51 / 51
i18n/ja/css-text-line-break-ja-cj-strict.htmlPass51 / 51
i18n/ja/css-text-line-break-ja-cpm-loose.htmlPass10 / 10
i18n/ja/css-text-line-break-ja-cpm-normal.htmlPass10 / 10
i18n/ja/css-text-line-break-ja-cpm-strict.htmlPass10 / 10
i18n/ja/css-text-line-break-ja-hyphens-loose.htmlPass2 / 2
i18n/ja/css-text-line-break-ja-hyphens-normal.htmlPass2 / 2
i18n/ja/css-text-line-break-ja-hyphens-strict.htmlPass2 / 2
i18n/ja/css-text-line-break-ja-in-loose.htmlPass5 / 5
i18n/ja/css-text-line-break-ja-in-normal.htmlPass5 / 5
i18n/ja/css-text-line-break-ja-in-strict.htmlPass5 / 5
i18n/ja/css-text-line-break-ja-iteration-loose.htmlPass6 / 6
i18n/ja/css-text-line-break-ja-iteration-normal.htmlPass6 / 6
i18n/ja/css-text-line-break-ja-iteration-strict.htmlPass6 / 6
i18n/ja/css-text-line-break-ja-po-loose.htmlPass10 / 10
i18n/ja/css-text-line-break-ja-po-normal.htmlPass10 / 10
i18n/ja/css-text-line-break-ja-po-strict.htmlPass10 / 10
i18n/ja/css-text-line-break-ja-pr-loose.htmlPass8 / 8
i18n/ja/css-text-line-break-ja-pr-normal.htmlFail0 / 8TEST BUGthe test fails in every browser: UAX #14 allows a break between an ideograph and a prefix (ID รท PR), and CSS Text has no tailoring that forbids it
i18n/ja/css-text-line-break-ja-pr-strict.htmlFail0 / 8TEST BUGthe test fails in every browser: UAX #14 allows a break between an ideograph and a prefix (ID รท PR), and CSS Text has no tailoring that forbids it
i18n/other-lang/css-text-line-break-de-cj-loose.htmlPass51 / 51
i18n/other-lang/css-text-line-break-de-cj-normal.htmlPass51 / 51
i18n/other-lang/css-text-line-break-de-cj-strict.htmlPass51 / 51
i18n/other-lang/css-text-line-break-de-cpm-loose.htmlPass10 / 10
i18n/other-lang/css-text-line-break-de-cpm-normal.htmlPass10 / 10
i18n/other-lang/css-text-line-break-de-cpm-strict.htmlPass10 / 10
i18n/other-lang/css-text-line-break-de-hyphens-loose.htmlPass2 / 2
i18n/other-lang/css-text-line-break-de-hyphens-normal.htmlPass2 / 2
i18n/other-lang/css-text-line-break-de-hyphens-strict.htmlPass2 / 2
i18n/other-lang/css-text-line-break-de-in-loose.htmlPass5 / 5
i18n/other-lang/css-text-line-break-de-in-normal.htmlPass5 / 5
i18n/other-lang/css-text-line-break-de-in-strict.htmlPass5 / 5
i18n/other-lang/css-text-line-break-de-iteration-loose.htmlPass6 / 6
i18n/other-lang/css-text-line-break-de-iteration-normal.htmlPass6 / 6
i18n/other-lang/css-text-line-break-de-iteration-strict.htmlPass6 / 6
i18n/other-lang/css-text-line-break-de-po-loose.htmlPass10 / 10
i18n/other-lang/css-text-line-break-de-po-normal.htmlPass10 / 10
i18n/other-lang/css-text-line-break-de-po-strict.htmlPass10 / 10
i18n/other-lang/css-text-line-break-de-pr-loose.htmlPass8 / 8
i18n/other-lang/css-text-line-break-de-pr-normal.htmlPass8 / 8
i18n/other-lang/css-text-line-break-de-pr-strict.htmlPass8 / 8
i18n/unknown-lang/css-text-line-break-cj-loose.htmlPass51 / 51
i18n/unknown-lang/css-text-line-break-cj-normal.htmlPass51 / 51
i18n/unknown-lang/css-text-line-break-cj-strict.htmlPass51 / 51
i18n/unknown-lang/css-text-line-break-cpm-loose.htmlPass10 / 10
i18n/unknown-lang/css-text-line-break-cpm-normal.htmlPass10 / 10
i18n/unknown-lang/css-text-line-break-cpm-strict.htmlPass10 / 10
i18n/unknown-lang/css-text-line-break-hyphens-loose.htmlPass2 / 2
i18n/unknown-lang/css-text-line-break-hyphens-normal.htmlPass2 / 2
i18n/unknown-lang/css-text-line-break-hyphens-strict.htmlPass2 / 2
i18n/unknown-lang/css-text-line-break-in-loose.htmlPass5 / 5
i18n/unknown-lang/css-text-line-break-in-normal.htmlPass5 / 5
i18n/unknown-lang/css-text-line-break-in-strict.htmlPass5 / 5
i18n/unknown-lang/css-text-line-break-iteration-loose.htmlPass6 / 6
i18n/unknown-lang/css-text-line-break-iteration-normal.htmlPass6 / 6
i18n/unknown-lang/css-text-line-break-iteration-strict.htmlPass6 / 6
i18n/unknown-lang/css-text-line-break-po-loose.htmlPass10 / 10
i18n/unknown-lang/css-text-line-break-po-normal.htmlPass10 / 10
i18n/unknown-lang/css-text-line-break-po-strict.htmlPass10 / 10
i18n/unknown-lang/css-text-line-break-pr-loose.htmlPass8 / 8
i18n/unknown-lang/css-text-line-break-pr-normal.htmlPass8 / 8
i18n/unknown-lang/css-text-line-break-pr-strict.htmlPass8 / 8
i18n/zh/css-text-line-break-zh-cj-loose.htmlPass51 / 51
i18n/zh/css-text-line-break-zh-cj-normal.htmlPass51 / 51
i18n/zh/css-text-line-break-zh-cj-strict.htmlPass51 / 51
i18n/zh/css-text-line-break-zh-cpm-loose.htmlPass10 / 10
i18n/zh/css-text-line-break-zh-cpm-normal.htmlPass10 / 10
i18n/zh/css-text-line-break-zh-cpm-strict.htmlPass10 / 10
i18n/zh/css-text-line-break-zh-hyphens-loose.htmlPass2 / 2
i18n/zh/css-text-line-break-zh-hyphens-normal.htmlPass2 / 2
i18n/zh/css-text-line-break-zh-hyphens-strict.htmlPass2 / 2
i18n/zh/css-text-line-break-zh-in-loose.htmlPass5 / 5
i18n/zh/css-text-line-break-zh-in-normal.htmlPass5 / 5
i18n/zh/css-text-line-break-zh-in-strict.htmlPass5 / 5
i18n/zh/css-text-line-break-zh-iteration-loose.htmlPass6 / 6
i18n/zh/css-text-line-break-zh-iteration-normal.htmlPass6 / 6
i18n/zh/css-text-line-break-zh-iteration-strict.htmlPass6 / 6
i18n/zh/css-text-line-break-zh-po-loose.htmlPass10 / 10
i18n/zh/css-text-line-break-zh-po-normal.htmlPass10 / 10
i18n/zh/css-text-line-break-zh-po-strict.htmlPass10 / 10
i18n/zh/css-text-line-break-zh-pr-loose.htmlPass8 / 8
i18n/zh/css-text-line-break-zh-pr-normal.htmlFail0 / 8TEST BUGthe test fails in every browser: UAX #14 allows a break between an ideograph and a prefix (ID รท PR), and CSS Text has no tailoring that forbids it
i18n/zh/css-text-line-break-zh-pr-strict.htmlFail0 / 8TEST BUGthe test fails in every browser: UAX #14 allows a break between an ideograph and a prefix (ID รท PR), and CSS Text has no tailoring that forbids it
inheritance.htmlPass42 / 42
letter-spacing/letter-spacing-trim-start-002.htmlPass2 / 2
line-break/line-break-var-substitution.htmlPass1 / 1
line-breaking/line-breaking-020.htmlPass1 / 1
line-breaking/line-breaking-028.htmlPass4 / 4
line-breaking/line-breaking-029.htmlPass4 / 4
line-breaking/line-breaking-atomic-nowrap-001.htmlPass4 / 4
line-breaking/line-breaking-atomic-nowrap-002.htmlPass1 / 1
overflow-wrap/overflow-wrap-anywhere-span-002.htmlPass1 / 1
overflow-wrap/overflow-wrap-break-word-keep-all-001.htmlPass2 / 2
overflow-wrap/overflow-wrap-break-word-span-002.htmlPass1 / 1
overflow-wrap/overflow-wrap-break-word-white-space-crash-002.htmlPass1 / 1
overflow-wrap/word-wrap-alias.htmlPass2 / 2
parsing/hanging-punctuation-invalid.htmlPass11 / 11
parsing/hanging-punctuation-valid.htmlPass18 / 18
parsing/hyphenate-character-computed.htmlPass5 / 5
parsing/hyphenate-character-invalid.htmlPass7 / 7
parsing/hyphenate-character-valid.htmlPass5 / 5
parsing/hyphenate-limit-chars-computed.htmlPass11 / 11
parsing/hyphenate-limit-chars-invalid.htmlPass8 / 8
parsing/hyphenate-limit-chars-valid.htmlPass11 / 11
parsing/hyphenate-limit-lines-computed.htmlPass5 / 5
parsing/hyphenate-limit-lines-invalid.htmlPass8 / 8
parsing/hyphenate-limit-lines-valid.htmlPass3 / 3
parsing/hyphens-computed.htmlPass3 / 3
parsing/hyphens-invalid.htmlPass3 / 3
parsing/hyphens-valid.htmlPass3 / 3
parsing/letter-spacing-computed.htmlPass9 / 9
parsing/letter-spacing-inherited-computed.htmlPass3 / 3
parsing/letter-spacing-invalid.htmlPass4 / 4
parsing/letter-spacing-valid.htmlPass9 / 9
parsing/line-break-computed.htmlPass5 / 5
parsing/line-break-invalid.htmlPass5 / 5
parsing/line-break-valid.htmlPass5 / 5
parsing/overflow-wrap-computed.htmlPass3 / 3
parsing/overflow-wrap-invalid.htmlPass3 / 3
parsing/overflow-wrap-valid.htmlPass3 / 3
parsing/tab-size-computed.htmlPass10 / 10
parsing/tab-size-invalid.htmlPass4 / 4
parsing/tab-size-valid.htmlPass5 / 5
parsing/text-align-all-invalid.htmlPass5 / 5
parsing/text-align-all-valid.htmlPass7 / 7
parsing/text-align-computed.htmlPass7 / 7
parsing/text-align-invalid.htmlPass5 / 5
parsing/text-align-last-computed.htmlFail7 / 8TEST BUGthe test expects the computed value of text-align-last: match-parent to be match-parent; it "computes as defined" for text-align (https://drafts.csswg.org/css-text-4/#text-align-last-property): to the computed value of the parent, auto here (fails in every browser: Chrome and Firefox do not support the value, Safari returns auto too)
parsing/text-align-last-invalid.htmlPass5 / 5
parsing/text-align-last-valid.htmlPass8 / 8
parsing/text-align-valid.htmlPass8 / 8
parsing/text-autospace-computed.htmlPass32 / 32
parsing/text-autospace-invalid.htmlPass15 / 15
parsing/text-autospace-valid.htmlPass31 / 31
parsing/text-fit-computed.htmlPass10 / 10
parsing/text-fit-invalid.htmlPass6 / 6
parsing/text-fit-valid.htmlPass10 / 10
parsing/text-group-align-invalid.htmlPass11 / 11
parsing/text-group-align-valid.htmlPass11 / 11
parsing/text-indent-computed.htmlPass10 / 10
parsing/text-indent-invalid.htmlPass7 / 7
parsing/text-indent-valid.htmlPass14 / 14
parsing/text-justify-computed-legacy.htmlPass1 / 1
parsing/text-justify-computed.htmlPass4 / 4
parsing/text-justify-invalid.htmlPass3 / 3
parsing/text-justify-valid.htmlPass4 / 4
parsing/text-spacing-computed.htmlFail13 / 16TEST BUGthe normal keyword combinations of text-spacing (normal normal, normal trim-start, trim-start normal) are invalid: the grammar of CSS Text 4 is none \| auto \| <spacing-trim> \|\| <autospace>, and normal is a <spacing-trim>, not an <autospace> (the normal of text-autospace is not part of <autospace>); no browser supports the shorthand
parsing/text-spacing-invalid.htmlPass11 / 11
parsing/text-spacing-trim-computed.htmlPass7 / 7
parsing/text-spacing-trim-invalid.htmlPass9 / 9
parsing/text-spacing-trim-valid.htmlPass7 / 7
parsing/text-spacing-valid.htmlFail12 / 15TEST BUGthe normal keyword combinations of text-spacing (normal normal, normal trim-start, trim-start normal) are invalid: the grammar of CSS Text 4 is none \| auto \| <spacing-trim> \|\| <autospace>, and normal is a <spacing-trim>, not an <autospace> (the normal of text-autospace is not part of <autospace>); no browser supports the shorthand
parsing/text-transform-computed.htmlPass10 / 10
parsing/text-transform-invalid.htmlPass19 / 19
parsing/text-transform-valid.htmlPass19 / 19
parsing/text-wrap-computed.htmlPass17 / 17
parsing/text-wrap-invalid.htmlPass8 / 8
parsing/text-wrap-mode-computed.htmlPass2 / 2
parsing/text-wrap-mode-invalid.htmlPass18 / 18
parsing/text-wrap-mode-valid.htmlPass7 / 7
parsing/text-wrap-pretty.htmlPass14 / 14
parsing/text-wrap-style-computed.htmlPass3 / 3
parsing/text-wrap-style-invalid.htmlPass12 / 12
parsing/text-wrap-style-valid.htmlPass8 / 8
parsing/text-wrap-valid.htmlPass22 / 22
parsing/white-space-collapse-computed.htmlPass4 / 4
parsing/white-space-collapse-invalid.htmlPass6 / 6
parsing/white-space-collapse-valid.htmlPass9 / 9
parsing/white-space-computed.htmlPass6 / 6
parsing/white-space-invalid.htmlPass6 / 6
parsing/white-space-shorthand-text-wrap.htmlPass6 / 6
parsing/white-space-shorthand.htmlPass45 / 45
parsing/white-space-trim-computed.htmlPass7 / 7
parsing/white-space-trim-invalid.htmlPass7 / 7
parsing/white-space-trim-valid.htmlPass11 / 11
parsing/white-space-valid.htmlPass6 / 6
parsing/word-break-computed.htmlPass5 / 5
parsing/word-break-invalid.htmlPass8 / 8
parsing/word-break-valid.htmlPass6 / 6
parsing/word-space-transform-computed.htmlPass5 / 5
parsing/word-space-transform-invalid.htmlPass6 / 6
parsing/word-space-transform-valid.htmlPass7 / 7
parsing/word-spacing-computed.htmlPass9 / 9
parsing/word-spacing-invalid.htmlPass3 / 3
parsing/word-spacing-valid.htmlPass9 / 9
parsing/word-wrap-computed.htmlPass3 / 3
parsing/word-wrap-invalid.htmlPass3 / 3
parsing/word-wrap-valid.htmlPass3 / 3
tab-size/tab-size-computed-value-001.htmlPass11 / 11
tab-size/tab-size.htmlPass1 / 1
text-align/text-align-last-empty-inline.htmlFail0 / 1TEST BUGthe test fails in every browser
text-align/text-align-last-interpolation.htmlPass168 / 168
text-align/text-align-match-parent-002.htmlPass1 / 1
text-align/text-align-webkit-match-parent.htmlPass1 / 1
text-fit/hittest.htmlPass1 / 1
text-fit/line-height.htmlPass4 / 4
text-fit/text-autospace.htmlPass2 / 2
text-fit/text-spacing-trim-fit-width.htmlPass2 / 2
text-indent/percentage-value-intrinsic-size.htmlPass1 / 1
text-justify/text-justify-cjk-ideograph-extensions.htmlPass8 / 8
text-justify/text-justify-interpolation.htmlPass210 / 210
text-spacing-trim/text-spacing-trim-combinations-001.htmlPass1,040 / 1,040
text-transform/math/text-transform-math-auto-003.htmlPass112 / 112
text-transform/text-transform-capitalize-036.htmlPass6 / 6
text-transform/text-transform-full-size-kana-009.htmlPass58 / 58
text-transform/text-transform-georgian.htmlPass8 / 8
text-transform/text-transform-upperlower-107.htmlPass1 / 1
white-space/append-whitespace-only-node-crash-001.htmlPass30 / 30
white-space/text-wrap-balance-001.htmlPass3 / 3
white-space/text-wrap-balance-right-to-left.htmlPass3 / 3
white-space/text-wrap-balance-top-to-bottom.htmlPass3 / 3
white-space/trailing-space-before-block-in-inline-001.htmlPass4 / 4
white-space/trailing-space-before-br-001.htmlPass8 / 8
white-space/trailing-space-in-inline-box.htmlPass3 / 3
white-space/trailing-space-position-001.htmlPass5 / 5
white-space/white-space-collapse-000.htmlPass4 / 4
white-space/white-space-collapse-001.htmlPass8 / 8
white-space/white-space-collapse-002.htmlPass20 / 20
white-space/white-space-intrinsic-size-021.htmlPass192 / 192
white-space/white-space-trim-intrinsic-width.htmlPass8 / 8
word-break/word-break-break-word-crash-001.htmlPass1 / 1
word-spacing/word-spacing-computed-001.htmlPass12 / 12
wrap-inside/wrap-inside-computed.htmlPass6 / 6

Tentative tests

TestResultSubtestsKindDescription
text-justify/distribute-alias.tentative.htmlPass1 / 1
white-space/seg-break-transformation-000.tentative.htmlPass6 / 6
white-space/seg-break-transformation-001.tentative.htmlPass6 / 6
white-space/seg-break-transformation-002.tentative.htmlPass6 / 6
white-space/seg-break-transformation-003.tentative.htmlPass6 / 6
white-space/seg-break-transformation-004.tentative.htmlPass12 / 12
white-space/seg-break-transformation-005.tentative.htmlPass6 / 6
white-space/seg-break-transformation-006.tentative.htmlPass6 / 6
white-space/seg-break-transformation-007.tentative.htmlPass6 / 6
white-space/seg-break-transformation-008.tentative.htmlPass6 / 6
white-space/seg-break-transformation-009.tentative.htmlPass6 / 6
white-space/seg-break-transformation-010.tentative.htmlPass6 / 6
white-space/seg-break-transformation-011.tentative.htmlPass6 / 6
white-space/seg-break-transformation-012.tentative.htmlPass6 / 6
white-space/seg-break-transformation-014.tentative.htmlPass6 / 6
white-space/seg-break-transformation-015.tentative.htmlPass12 / 12
white-space/seg-break-transformation-016.tentative.htmlPass12 / 12
white-space/seg-break-transformation-017.tentative.htmlPass12 / 12

Reftests

TestResultVariantsKindDescription
bidi/bidi-lines-001.htmlPass1 / 1
bidi/bidi-lines-002.htmlPass1 / 1
bidi/bidi-tab-001.htmlPass1 / 1
bidi/empty-span-001.htmlPass1 / 1
boundary-shaping/boundary-shaping-001.htmlPass1 / 1
boundary-shaping/boundary-shaping-002.htmlPass1 / 1
boundary-shaping/boundary-shaping-003.htmlPass1 / 1
boundary-shaping/boundary-shaping-004.htmlPass1 / 1
boundary-shaping/boundary-shaping-005.htmlPass1 / 1
boundary-shaping/boundary-shaping-006.htmlPass1 / 1
boundary-shaping/boundary-shaping-007.htmlPass1 / 1
boundary-shaping/boundary-shaping-008.htmlPass1 / 1
boundary-shaping/boundary-shaping-009.htmlPass1 / 1
boundary-shaping/boundary-shaping-010.htmlPass1 / 1
hanging-punctuation/hanging-punctuation-allow-end-001.xhtPass1 / 1
hanging-punctuation/hanging-punctuation-allow-end-basic.htmlPass1 / 1
hanging-punctuation/hanging-punctuation-allow-end-inlines.htmlPass1 / 1
hanging-punctuation/hanging-punctuation-allow-end.htmlPass1 / 1
hanging-punctuation/hanging-punctuation-block-bound-001.htmlPass1 / 1
hanging-punctuation/hanging-punctuation-first-001.xhtPass1 / 1
hanging-punctuation/hanging-punctuation-first-002.htmlPass1 / 1
hanging-punctuation/hanging-punctuation-first-and-last-together.htmlFail0 / 1TEST BUGthe test is rendered as expected (the parentheses hang), but its reference emulates the hanging with an inline box that has negative margins and relies on the negative inline-end margin to bring back on the line the last word, which overflows it by 1em: as in Chrome and Firefox, the content of an inline box must fit on the line before its negative inline-end margin is applied (WPT css/css-grid/firefox-bug-1881495.html, which Safari fails), so the line of the reference is broken before the last word (Safari, the only browser with hanging-punctuation, is the only one that passes)
hanging-punctuation/hanging-punctuation-first-ascii-quote.htmlPass1 / 1
hanging-punctuation/hanging-punctuation-first-rtl.htmlPass1 / 1
hanging-punctuation/hanging-punctuation-first-whitespace.htmlPass1 / 1
hanging-punctuation/hanging-punctuation-first.htmlPass1 / 1
hanging-punctuation/hanging-punctuation-force-end-001.xhtPass1 / 1
hanging-punctuation/hanging-punctuation-inline-001.htmlPass1 / 1
hanging-punctuation/hanging-punctuation-inline-bound-001.htmlPass1 / 1
hanging-punctuation/hanging-punctuation-last-001.xhtFail0 / 1TEST RUNNERthe reference fits 11 fullwidth characters on a line of 10em thanks to the trimming of the fullwidth punctuation (text-spacing-trim: normal: the opening bracket after the ideographic comma and the closing bracket at the end of the line are set half-width); the Japanese fallback font of the runner (M+ 1p) has no halt feature, so its punctuation is not trimmed (as in Chrome) and the line of the test breaks one character earlier; passes in Chrome only, with a system font that has the feature
hanging-punctuation/hanging-punctuation-last-ascii-quote.htmlPass1 / 1
hanging-punctuation/hanging-punctuation-last-rtl.htmlPass1 / 1
hanging-punctuation/hanging-punctuation-last-whitespace.htmlPass1 / 1
hanging-punctuation/hanging-punctuation-last.htmlPass1 / 1
hanging-punctuation/hanging-punctuation-variable-font-size.htmlPass1 / 1
hanging-punctuation/hanging-punctuation-with-bidi.htmlPass1 / 1
hanging-punctuation/hanging-scrollable-001.htmlPass1 / 1
hyphens/hyphenate-character-001.htmlPass1 / 1
hyphens/hyphenate-character-002.htmlPass1 / 1
hyphens/hyphenate-character-003.htmlPass1 / 1
hyphens/hyphenate-character-004.htmlPass1 / 1
hyphens/hyphenate-character-005.htmlPass1 / 1
hyphens/hyphenate-limit-chars-001.htmlPass1 / 1
hyphens/hyphenate-limit-lines-001.htmlPass1 / 1
hyphens/hyphens-auto-001.htmlPass1 / 1
hyphens/hyphens-auto-002.htmlPass1 / 1
hyphens/hyphens-auto-003.htmlPass1 / 1
hyphens/hyphens-auto-004.htmlFail0 / 1TEST BUGthe reference puts the ideographic spaces (U+3000) after regulation on a line of their own, as Chrome and Safari do; with white-space: normal, "if there remains any sequence of white space, other space separators, and/or preserved tabs at the end of a line", "the UA must hang this sequence (unconditionally)" (https://drafts.csswg.org/css-text-3/#white-space-phase-2): they hang at the end of the second line, after lation, as css/css-text/white-space/trailing-ideographic-space-001.html and -002 require (which this engine passes and every browser fails); Firefox fails this test too
hyphens/hyphens-auto-005.htmlPass1 / 1
hyphens/hyphens-auto-010.htmlPass1 / 1
hyphens/hyphens-auto-control.htmlFail0 / 1TEST RUNNERthe runner has no monospace font with a U+2010 HYPHEN glyph like its U+002D: the bundled monospace font (Cousine) has no U+2010, the hyphen is the U+2010 of a fallback font (Tinos), the reference uses U+002D
hyphens/hyphens-auto-inline-010.htmlPass1 / 1
hyphens/hyphens-auto-last-word-001.htmlPass1 / 1
hyphens/hyphens-auto-min-content.htmlPass1 / 1
hyphens/hyphens-character.htmlPass1 / 1
hyphens/hyphens-manual-010.htmlPass1 / 1
hyphens/hyphens-manual-011.htmlPass1 / 1
hyphens/hyphens-manual-012.htmlPass1 / 1
hyphens/hyphens-manual-013.htmlPass1 / 1
hyphens/hyphens-manual-inline-010.htmlPass1 / 1
hyphens/hyphens-manual-inline-011.htmlPass1 / 1
hyphens/hyphens-manual-inline-012.htmlPass1 / 1
hyphens/hyphens-none-011.htmlPass1 / 1
hyphens/hyphens-none-012.htmlPass1 / 1
hyphens/hyphens-none-013.htmlPass1 / 1
hyphens/hyphens-none-014.htmlPass1 / 1
hyphens/hyphens-none-015.htmlPass1 / 1
hyphens/hyphens-none-shy-on-2nd-line-001.htmlPass1 / 1
hyphens/hyphens-out-of-flow-001.htmlPass1 / 1
hyphens/hyphens-out-of-flow-002.htmlPass1 / 1
hyphens/hyphens-overflow-001.htmlPass1 / 1
hyphens/hyphens-punctuation-001.htmlPass1 / 1
hyphens/hyphens-shaping-001.htmlPass1 / 1
hyphens/hyphens-shaping-002.htmlPass1 / 1
hyphens/hyphens-span-001.htmlPass1 / 1
hyphens/hyphens-span-002.htmlPass1 / 1
hyphens/hyphens-vertical-001.htmlPass1 / 1
hyphens/hyphens-vertical-002.htmlPass1 / 1
hyphens/hyphens-vertical-003.htmlPass1 / 1
hyphens/hyphens-vertical-004.htmlPass1 / 1
hyphens/hyphens-vs-float-clearance-001.htmlPass1 / 1
hyphens/hyphens-vs-float-clearance-002.htmlPass1 / 1
hyphens/i18n/hyphens-i18n-auto-001.htmlFail0 / 1NOT IMPLEMENTEDthe Dutch hyphenation patterns of hyph-utf8 have no hyphenation opportunity before the diminutive suffix of cafeetje (only ca-feetje), so its spelling change at the break (cafรฉ-tje, implemented for the soft hyphens, hyphens-i18n-manual-001) is not used; no browser passes
hyphens/i18n/hyphens-i18n-auto-002.htmlFail0 / 1NOT IMPLEMENTEDthere is no Hungarian hyphenation dictionary (the patterns of hyph-utf8 are under copyleft licenses), so ร–sszeg is not hyphenated automatically (the spelling change ร–sz-szeg is implemented for the soft hyphens, hyphens-i18n-manual-002); no browser passes
hyphens/i18n/hyphens-i18n-auto-003.htmlPass1 / 1
hyphens/i18n/hyphens-i18n-auto-004.htmlPass1 / 1
hyphens/i18n/hyphens-i18n-auto-005.htmlFail0 / 1NOT IMPLEMENTEDthere is no Uyghur hyphenation dictionary (hyph-utf8 has none), so the word is not hyphenated automatically; no browser passes
hyphens/i18n/hyphens-i18n-auto-006.htmlFail0 / 1NOT IMPLEMENTEDthere is no Cree hyphenation dictionary (hyph-utf8 has none), so the syllabics are not hyphenated automatically (the hyphen after the Canadian syllabics is U+1400 CANADIAN SYLLABICS HYPHEN); the runner has no font for the Canadian syllabics; no browser passes
hyphens/i18n/hyphens-i18n-manual-001.htmlPass1 / 1
hyphens/i18n/hyphens-i18n-manual-002.htmlPass1 / 1
hyphens/i18n/hyphens-i18n-manual-003.htmlPass1 / 1
hyphens/i18n/hyphens-i18n-manual-004.htmlPass1 / 1
hyphens/i18n/hyphens-i18n-manual-005.htmlFail0 / 1TEST RUNNERthe Uyghur word fits in the 4ch of the box with the Arabic fallback font of the runner (Scheherazade, narrower than the fonts of the browsers), so it is not broken at the soft hyphen (where the hyphen would be U+0640 ARABIC TATWEEL); no browser passes
hyphens/lang-tag-case-insensitive.htmlPass1 / 1
hyphens/shy-styling-001.htmlPass1 / 1
i18n/css3-text-line-break-opclns-001.htmlPass1 / 1
i18n/css3-text-line-break-opclns-002.htmlPass1 / 1
i18n/css3-text-line-break-opclns-003.htmlPass1 / 1
i18n/css3-text-line-break-opclns-004.htmlPass1 / 1
i18n/css3-text-line-break-opclns-005.htmlPass1 / 1
i18n/css3-text-line-break-opclns-006.htmlPass1 / 1
i18n/css3-text-line-break-opclns-007.htmlPass1 / 1
i18n/css3-text-line-break-opclns-008.htmlPass1 / 1
i18n/css3-text-line-break-opclns-009.htmlPass1 / 1
i18n/css3-text-line-break-opclns-010.htmlPass1 / 1
i18n/css3-text-line-break-opclns-011.htmlPass1 / 1
i18n/css3-text-line-break-opclns-012.htmlPass1 / 1
i18n/css3-text-line-break-opclns-014.htmlPass1 / 1
i18n/css3-text-line-break-opclns-015.htmlPass1 / 1
i18n/css3-text-line-break-opclns-016.htmlPass1 / 1
i18n/css3-text-line-break-opclns-017.htmlPass1 / 1
i18n/css3-text-line-break-opclns-018.htmlPass1 / 1
i18n/css3-text-line-break-opclns-019.htmlPass1 / 1
i18n/css3-text-line-break-opclns-020.htmlPass1 / 1
i18n/css3-text-line-break-opclns-021.htmlPass1 / 1
i18n/css3-text-line-break-opclns-022.htmlPass1 / 1
i18n/css3-text-line-break-opclns-023.htmlPass1 / 1
i18n/css3-text-line-break-opclns-024.htmlPass1 / 1
i18n/css3-text-line-break-opclns-025.htmlPass1 / 1
i18n/css3-text-line-break-opclns-026.htmlPass1 / 1
i18n/css3-text-line-break-opclns-027.htmlPass1 / 1
i18n/css3-text-line-break-opclns-028.htmlPass1 / 1
i18n/css3-text-line-break-opclns-029.htmlPass1 / 1
i18n/css3-text-line-break-opclns-030.htmlPass1 / 1
i18n/css3-text-line-break-opclns-031.htmlPass1 / 1
i18n/css3-text-line-break-opclns-032.htmlPass1 / 1
i18n/css3-text-line-break-opclns-033.htmlPass1 / 1
i18n/css3-text-line-break-opclns-034.htmlPass1 / 1
i18n/css3-text-line-break-opclns-035.htmlPass1 / 1
i18n/css3-text-line-break-opclns-036.htmlPass1 / 1
i18n/css3-text-line-break-opclns-037.htmlPass1 / 1
i18n/css3-text-line-break-opclns-038.htmlPass1 / 1
i18n/css3-text-line-break-opclns-039.htmlPass1 / 1
i18n/css3-text-line-break-opclns-040.htmlPass1 / 1
i18n/css3-text-line-break-opclns-041.htmlPass1 / 1
i18n/css3-text-line-break-opclns-042.htmlPass1 / 1
i18n/css3-text-line-break-opclns-043.htmlPass1 / 1
i18n/css3-text-line-break-opclns-044.htmlPass1 / 1
i18n/css3-text-line-break-opclns-045.htmlPass1 / 1
i18n/css3-text-line-break-opclns-046.htmlPass1 / 1
i18n/css3-text-line-break-opclns-047.htmlPass1 / 1
i18n/css3-text-line-break-opclns-049.htmlPass1 / 1
i18n/css3-text-line-break-opclns-050.htmlPass1 / 1
i18n/css3-text-line-break-opclns-051.htmlPass1 / 1
i18n/css3-text-line-break-opclns-052.htmlPass1 / 1
i18n/css3-text-line-break-opclns-053.htmlPass1 / 1
i18n/css3-text-line-break-opclns-054.htmlPass1 / 1
i18n/css3-text-line-break-opclns-055.htmlPass1 / 1
i18n/css3-text-line-break-opclns-056.htmlPass1 / 1
i18n/css3-text-line-break-opclns-057.htmlPass1 / 1
i18n/css3-text-line-break-opclns-058.htmlPass1 / 1
i18n/css3-text-line-break-opclns-059.htmlPass1 / 1
i18n/css3-text-line-break-opclns-060.htmlPass1 / 1
i18n/css3-text-line-break-opclns-061.htmlPass1 / 1
i18n/css3-text-line-break-opclns-062.htmlPass1 / 1
i18n/css3-text-line-break-opclns-063.htmlPass1 / 1
i18n/css3-text-line-break-opclns-064.htmlPass1 / 1
i18n/css3-text-line-break-opclns-065.htmlPass1 / 1
i18n/css3-text-line-break-opclns-100.htmlPass1 / 1
i18n/css3-text-line-break-opclns-101.htmlPass1 / 1
i18n/css3-text-line-break-opclns-102.htmlPass1 / 1
i18n/css3-text-line-break-opclns-103.htmlPass1 / 1
i18n/css3-text-line-break-opclns-104.htmlPass1 / 1
i18n/css3-text-line-break-opclns-105.htmlPass1 / 1
i18n/css3-text-line-break-opclns-106.htmlPass1 / 1
i18n/css3-text-line-break-opclns-107.htmlPass1 / 1
i18n/css3-text-line-break-opclns-108.htmlPass1 / 1
i18n/css3-text-line-break-opclns-109.htmlPass1 / 1
i18n/css3-text-line-break-opclns-110.htmlPass1 / 1
i18n/css3-text-line-break-opclns-111.htmlPass1 / 1
i18n/css3-text-line-break-opclns-112.htmlPass1 / 1
i18n/css3-text-line-break-opclns-113.htmlPass1 / 1
i18n/css3-text-line-break-opclns-114.htmlPass1 / 1
i18n/css3-text-line-break-opclns-115.htmlPass1 / 1
i18n/css3-text-line-break-opclns-116.htmlPass1 / 1
i18n/css3-text-line-break-opclns-117.htmlPass1 / 1
i18n/css3-text-line-break-opclns-119.htmlPass1 / 1
i18n/css3-text-line-break-opclns-120.htmlPass1 / 1
i18n/css3-text-line-break-opclns-121.htmlPass1 / 1
i18n/css3-text-line-break-opclns-122.htmlPass1 / 1
i18n/css3-text-line-break-opclns-123.htmlPass1 / 1
i18n/css3-text-line-break-opclns-124.htmlPass1 / 1
i18n/css3-text-line-break-opclns-125.htmlPass1 / 1
i18n/css3-text-line-break-opclns-126.htmlPass1 / 1
i18n/css3-text-line-break-opclns-127.htmlPass1 / 1
i18n/css3-text-line-break-opclns-128.htmlPass1 / 1
i18n/css3-text-line-break-opclns-129.htmlPass1 / 1
i18n/css3-text-line-break-opclns-130.htmlPass1 / 1
i18n/css3-text-line-break-opclns-131.htmlPass1 / 1
i18n/css3-text-line-break-opclns-132.htmlPass1 / 1
i18n/css3-text-line-break-opclns-133.htmlPass1 / 1
i18n/css3-text-line-break-opclns-134.htmlPass1 / 1
i18n/css3-text-line-break-opclns-135.htmlPass1 / 1
i18n/css3-text-line-break-opclns-136.htmlPass1 / 1
i18n/css3-text-line-break-opclns-137.htmlPass1 / 1
i18n/css3-text-line-break-opclns-138.htmlPass1 / 1
i18n/css3-text-line-break-opclns-139.htmlPass1 / 1
i18n/css3-text-line-break-opclns-140.htmlPass1 / 1
i18n/css3-text-line-break-opclns-141.htmlPass1 / 1
i18n/css3-text-line-break-opclns-142.htmlPass1 / 1
i18n/css3-text-line-break-opclns-143.htmlPass1 / 1
i18n/css3-text-line-break-opclns-144.htmlPass1 / 1
i18n/css3-text-line-break-opclns-145.htmlPass1 / 1
i18n/css3-text-line-break-opclns-146.htmlPass1 / 1
i18n/css3-text-line-break-opclns-147.htmlPass1 / 1
i18n/css3-text-line-break-opclns-148.htmlPass1 / 1
i18n/css3-text-line-break-opclns-149.htmlPass1 / 1
i18n/css3-text-line-break-opclns-150.htmlPass1 / 1
i18n/css3-text-line-break-opclns-151.htmlPass1 / 1
i18n/css3-text-line-break-opclns-152.htmlPass1 / 1
i18n/css3-text-line-break-opclns-153.htmlPass1 / 1
i18n/css3-text-line-break-opclns-155.htmlPass1 / 1
i18n/css3-text-line-break-opclns-156.htmlPass1 / 1
i18n/css3-text-line-break-opclns-157.htmlPass1 / 1
i18n/css3-text-line-break-opclns-158.htmlPass1 / 1
i18n/css3-text-line-break-opclns-159.htmlPass1 / 1
i18n/css3-text-line-break-opclns-160.htmlPass1 / 1
i18n/css3-text-line-break-opclns-161.htmlPass1 / 1
i18n/css3-text-line-break-opclns-162.htmlPass1 / 1
i18n/css3-text-line-break-opclns-163.htmlPass1 / 1
i18n/css3-text-line-break-opclns-164.htmlPass1 / 1
i18n/css3-text-line-break-opclns-165.htmlPass1 / 1
i18n/css3-text-line-break-opclns-166.htmlPass1 / 1
i18n/css3-text-line-break-opclns-167.htmlPass1 / 1
i18n/css3-text-line-break-opclns-168.htmlPass1 / 1
i18n/css3-text-line-break-opclns-169.htmlPass1 / 1
i18n/css3-text-line-break-opclns-170.htmlPass1 / 1
i18n/css3-text-line-break-opclns-171.htmlPass1 / 1
i18n/css3-text-line-break-opclns-200.htmlPass1 / 1
i18n/css3-text-line-break-opclns-201.htmlPass1 / 1
i18n/css3-text-line-break-opclns-202.htmlPass1 / 1
i18n/css3-text-line-break-opclns-203.htmlPass1 / 1
i18n/css3-text-line-break-opclns-204.htmlPass1 / 1
i18n/css3-text-line-break-opclns-205.htmlPass1 / 1
i18n/css3-text-line-break-opclns-206.htmlPass1 / 1
i18n/css3-text-line-break-opclns-207.htmlPass1 / 1
i18n/css3-text-line-break-opclns-208.htmlPass1 / 1
i18n/css3-text-line-break-opclns-209.htmlPass1 / 1
i18n/css3-text-line-break-opclns-210.htmlPass1 / 1
i18n/css3-text-line-break-opclns-211.htmlPass1 / 1
i18n/css3-text-line-break-opclns-212.htmlPass1 / 1
i18n/css3-text-line-break-opclns-213.htmlPass1 / 1
i18n/css3-text-line-break-opclns-214.htmlPass1 / 1
i18n/css3-text-line-break-opclns-215.htmlPass1 / 1
i18n/css3-text-line-break-opclns-217.htmlPass1 / 1
i18n/css3-text-line-break-opclns-218.htmlPass1 / 1
i18n/css3-text-line-break-opclns-219.htmlPass1 / 1
i18n/css3-text-line-break-opclns-220.htmlPass1 / 1
i18n/css3-text-line-break-opclns-221.htmlPass1 / 1
i18n/css3-text-line-break-opclns-222.htmlPass1 / 1
i18n/css3-text-line-break-opclns-223.htmlPass1 / 1
i18n/css3-text-line-break-opclns-225.htmlPass1 / 1
i18n/css3-text-line-break-opclns-226.htmlPass1 / 1
letter-spacing/letter-spacing-200.htmlFail0 / 1TEST BUGthe test predates text-autospace: with its initial value normal, 1/8ic of inter-script spacing is added between a digit and an ideograph of 12ไธ‰456ไธƒ89 ("this property is additive with the word-spacing and letter-spacing properties"), so 12ไธ‰ and ไธƒ89 are 5.125em wide and do not fit in the 5em box as the reference expects (the lines break next to the ideographs); the rest of the test matches, and the test with text-autospace: no-autospace is identical to its reference (fails in every browser)
letter-spacing/letter-spacing-201.htmlFail0 / 1TEST BUGthe test expects a line to break between a U+200B and the preserved space after it (the space starts the next line, with its letter spacing); UAX #14 (LB7, LB8: ZW SP* รท) only allows the break after the spaces that follow the U+200B, so the space hangs at the end of the line and the next line starts with the x (fails in every browser)
letter-spacing/letter-spacing-202.htmlFail0 / 1TEST BUGthe reference is 2em wide (its two characters have no letter-spacing), the float of the test is 3em wide: two characters and the spacing of 1em between them (the spacing after the last character of a line is not applied, the invisible formatting characters that follow it being ignored), all green. Fails in every browser
letter-spacing/letter-spacing-203.htmlFail0 / 1TEST BUGthe test expects the letter spacing model of the previous drafts of CSS Text 3: the spacing between two characters is the one of the innermost element that contains both of them (rendered inside that element, after the text-empty inline boxes between the characters). The current drafts (https://drafts.csswg.org/css-text-4/#letter-spacing-property) add half of the spacing of each character on each of its sides, which gives other positions at the boundaries of the elements of this test, and note that the tests need to be updated; this engine adds the spacing of the element of a character after it, as the browsers (fails in every browser)
letter-spacing/letter-spacing-204.htmlPass1 / 1
letter-spacing/letter-spacing-205.htmlFail0 / 1TEST BUGthe test expects the letter spacing model of the previous drafts of CSS Text 3: the spacing between two characters is the one of the innermost element that contains both of them (rendered inside that element, after the text-empty inline boxes between the characters). The current drafts (https://drafts.csswg.org/css-text-4/#letter-spacing-property) add half of the spacing of each character on each of its sides, which gives other positions at the boundaries of the elements of this test, and note that the tests need to be updated; this engine adds the spacing of the element of a character after it, as the browsers (fails in every browser)
letter-spacing/letter-spacing-206.htmlFail0 / 1TEST BUGthe test expects the letter spacing model of the previous drafts of CSS Text 3: the spacing between two characters is the one of the innermost element that contains both of them (rendered inside that element, after the text-empty inline boxes between the characters). The current drafts (https://drafts.csswg.org/css-text-4/#letter-spacing-property) add half of the spacing of each character on each of its sides, which gives other positions at the boundaries of the elements of this test, and note that the tests need to be updated; this engine adds the spacing of the element of a character after it, as the browsers (fails in every browser)
letter-spacing/letter-spacing-211.htmlPass1 / 1
letter-spacing/letter-spacing-212.htmlPass1 / 1
letter-spacing/letter-spacing-animating-font-size.htmlPass1 / 1
letter-spacing/letter-spacing-animating-letter-spacing.htmlPass1 / 1
letter-spacing/letter-spacing-bengali-yaphala-001.htmlPass1 / 1
letter-spacing/letter-spacing-bidi-001.htmlPass1 / 1
letter-spacing/letter-spacing-bidi-002.htmlPass1 / 1
letter-spacing/letter-spacing-bidi-003.xhtPass1 / 1
letter-spacing/letter-spacing-bidi-004.xhtFail0 / 1TEST BUGthe test expects the letter spacing model of the previous drafts of CSS Text 3: the spacing between two characters is the one of the innermost element that contains both of them (rendered inside that element, after the text-empty inline boxes between the characters). The current drafts (https://drafts.csswg.org/css-text-4/#letter-spacing-property) add half of the spacing of each character on each of its sides, which gives other positions at the boundaries of the elements of this test, and note that the tests need to be updated; this engine adds the spacing of the element of a character after it, as the browsers (fails in every browser)
letter-spacing/letter-spacing-bidi-005.xhtFail0 / 1TEST BUGthe test expects the letter spacing model of the previous drafts of CSS Text 3: the spacing between two characters is the one of the innermost element that contains both of them (rendered inside that element, after the text-empty inline boxes between the characters). The current drafts (https://drafts.csswg.org/css-text-4/#letter-spacing-property) add half of the spacing of each character on each of its sides, which gives other positions at the boundaries of the elements of this test, and note that the tests need to be updated; this engine adds the spacing of the element of a character after it, as the browsers (fails in every browser)
letter-spacing/letter-spacing-combining-mark-001.htmlPass1 / 1
letter-spacing/letter-spacing-combining-mark-002.htmlPass1 / 1
letter-spacing/letter-spacing-control-chars-001.htmlPass1 / 1
letter-spacing/letter-spacing-cursive-001.htmlPass1 / 1
letter-spacing/letter-spacing-cursive-002.htmlPass1 / 1
letter-spacing/letter-spacing-end-of-line-001.htmlPass1 / 1
letter-spacing/letter-spacing-end-of-line-002.htmlPass1 / 1
letter-spacing/letter-spacing-ligatures-001.htmlPass1 / 1
letter-spacing/letter-spacing-ligatures-002.htmlPass1 / 1
letter-spacing/letter-spacing-ligatures-003.htmlPass1 / 1
letter-spacing/letter-spacing-ligatures-004.htmlPass1 / 1
letter-spacing/letter-spacing-ligatures-005.htmlPass1 / 1
letter-spacing/letter-spacing-nesting-001.htmlFail0 / 1TEST BUGthe test expects the letter spacing model of the previous drafts of CSS Text 3: the spacing between two characters is the one of the innermost element that contains both of them (rendered inside that element, after the text-empty inline boxes between the characters). The current drafts (https://drafts.csswg.org/css-text-4/#letter-spacing-property) add half of the spacing of each character on each of its sides, which gives other positions at the boundaries of the elements of this test, and note that the tests need to be updated; this engine adds the spacing of the element of a character after it, as the browsers (fails in every browser)
letter-spacing/letter-spacing-nesting-002.htmlFail0 / 1TEST BUGthe test expects the letter spacing model of the previous drafts of CSS Text 3: the spacing between two characters is the one of the innermost element that contains both of them (rendered inside that element, after the text-empty inline boxes between the characters). The current drafts (https://drafts.csswg.org/css-text-4/#letter-spacing-property) add half of the spacing of each character on each of its sides, which gives other positions at the boundaries of the elements of this test, and note that the tests need to be updated; this engine adds the spacing of the element of a character after it, as the browsers (fails in every browser)
letter-spacing/letter-spacing-nesting-003.xhtFail0 / 1TEST BUGthe test expects the letter spacing model of the previous drafts of CSS Text 3: the spacing between two characters is the one of the innermost element that contains both of them (rendered inside that element, after the text-empty inline boxes between the characters). The current drafts (https://drafts.csswg.org/css-text-4/#letter-spacing-property) add half of the spacing of each character on each of its sides, which gives other positions at the boundaries of the elements of this test, and note that the tests need to be updated; this engine adds the spacing of the element of a character after it, as the browsers (fails in every browser)
letter-spacing/letter-spacing-percent-001.htmlPass1 / 1
letter-spacing/letter-spacing-trim-start-001.htmlPass1 / 1
line-break/line-break-anywhere-001.htmlPass1 / 1
line-break/line-break-anywhere-002.htmlPass1 / 1
line-break/line-break-anywhere-003.htmlPass1 / 1
line-break/line-break-anywhere-004.htmlPass1 / 1
line-break/line-break-anywhere-005.htmlPass1 / 1
line-break/line-break-anywhere-006.htmlPass1 / 1
line-break/line-break-anywhere-007.htmlPass1 / 1
line-break/line-break-anywhere-008.htmlPass1 / 1
line-break/line-break-anywhere-009.htmlPass1 / 1
line-break/line-break-anywhere-010.htmlPass1 / 1
line-break/line-break-anywhere-011.htmlPass1 / 1
line-break/line-break-anywhere-012.htmlPass1 / 1
line-break/line-break-anywhere-013.htmlPass1 / 1
line-break/line-break-anywhere-014.htmlPass1 / 1
line-break/line-break-anywhere-015.htmlPass1 / 1
line-break/line-break-anywhere-016.htmlPass1 / 1
line-break/line-break-anywhere-017.htmlPass1 / 1
line-break/line-break-anywhere-and-white-space-001.htmlPass1 / 1
line-break/line-break-anywhere-and-white-space-002.htmlPass1 / 1
line-break/line-break-anywhere-and-white-space-003.htmlPass1 / 1
line-break/line-break-anywhere-and-white-space-004.htmlPass1 / 1
line-break/line-break-anywhere-and-white-space-005.htmlPass1 / 1
line-break/line-break-anywhere-and-white-space-006.htmlPass1 / 1
line-break/line-break-anywhere-and-white-space-007.htmlPass1 / 1
line-break/line-break-anywhere-and-white-space-008.htmlPass1 / 1
line-break/line-break-anywhere-and-white-space-009.htmlPass1 / 1
line-break/line-break-anywhere-overrides-uax-behavior-001.htmlPass1 / 1
line-break/line-break-anywhere-overrides-uax-behavior-002.htmlPass1 / 1
line-break/line-break-anywhere-overrides-uax-behavior-003.htmlPass1 / 1
line-break/line-break-anywhere-overrides-uax-behavior-004.htmlPass1 / 1
line-break/line-break-anywhere-overrides-uax-behavior-005.htmlPass1 / 1
line-break/line-break-anywhere-overrides-uax-behavior-006.htmlPass1 / 1
line-break/line-break-anywhere-overrides-uax-behavior-007.htmlPass1 / 1
line-break/line-break-anywhere-overrides-uax-behavior-008.htmlPass1 / 1
line-break/line-break-anywhere-overrides-uax-behavior-009.htmlPass1 / 1
line-break/line-break-anywhere-overrides-uax-behavior-010.htmlPass1 / 1
line-break/line-break-anywhere-overrides-uax-behavior-011.htmlPass1 / 1
line-break/line-break-anywhere-overrides-uax-behavior-012.htmlPass1 / 1
line-break/line-break-anywhere-overrides-uax-behavior-013.htmlPass1 / 1
line-break/line-break-anywhere-overrides-uax-behavior-014.htmlPass1 / 1
line-break/line-break-anywhere-overrides-uax-behavior-015.htmlPass1 / 1
line-break/line-break-anywhere-overrides-uax-behavior-016.htmlPass1 / 1
line-break/line-break-loose-011.xhtPass1 / 1
line-break/line-break-loose-012.xhtPass1 / 1
line-break/line-break-loose-013.xhtPass1 / 1
line-break/line-break-loose-014.xhtPass1 / 1
line-break/line-break-loose-015.xhtPass1 / 1
line-break/line-break-loose-016a.xhtPass1 / 1
line-break/line-break-loose-016b.xhtPass1 / 1
line-break/line-break-loose-017a.xhtPass1 / 1
line-break/line-break-loose-017b.xhtPass1 / 1
line-break/line-break-loose-018.xhtPass1 / 1
line-break/line-break-loose-hyphens-001.htmlPass1 / 1
line-break/line-break-loose-hyphens-002.htmlPass1 / 1
line-break/line-break-loose-hyphens-003.htmlPass1 / 1
line-break/line-break-normal-011.xhtPass1 / 1
line-break/line-break-normal-012.xhtPass1 / 1
line-break/line-break-normal-013.xhtPass1 / 1
line-break/line-break-normal-014.xhtPass1 / 1
line-break/line-break-normal-015a.xhtPass1 / 1
line-break/line-break-normal-015b.xhtPass1 / 1
line-break/line-break-normal-016a.xhtPass1 / 1
line-break/line-break-normal-016b.xhtPass1 / 1
line-break/line-break-normal-017a.xhtPass1 / 1
line-break/line-break-normal-017b.xhtPass1 / 1
line-break/line-break-normal-018.xhtPass1 / 1
line-break/line-break-normal-hyphens-001.htmlPass1 / 1
line-break/line-break-normal-hyphens-002.htmlPass1 / 1
line-break/line-break-normal-hyphens-003.htmlPass1 / 1
line-break/line-break-quotation-double-001.htmlPass1 / 1
line-break/line-break-quotation-double-002.htmlPass1 / 1
line-break/line-break-quotation-double-cjk-001.htmlPass1 / 1
line-break/line-break-quotation-double-cjk-002.htmlPass1 / 1
line-break/line-break-quotation-double-cjk-003.htmlPass1 / 1
line-break/line-break-shaping-001.htmlPass1 / 1
line-break/line-break-strict-011.xhtPass1 / 1
line-break/line-break-strict-012.xhtPass1 / 1
line-break/line-break-strict-013.xhtPass1 / 1
line-break/line-break-strict-014.xhtPass1 / 1
line-break/line-break-strict-015a.xhtPass1 / 1
line-break/line-break-strict-015b.xhtPass1 / 1
line-break/line-break-strict-016a.xhtPass1 / 1
line-break/line-break-strict-016b.xhtPass1 / 1
line-break/line-break-strict-017a.xhtPass1 / 1
line-break/line-break-strict-017b.xhtPass1 / 1
line-break/line-break-strict-018.xhtPass1 / 1
line-break/line-break-strict-hyphens-001.htmlPass1 / 1
line-break/line-break-strict-hyphens-002.htmlPass1 / 1
line-break/line-break-strict-hyphens-003.htmlPass1 / 1
line-breaking/line-breaking-001.htmlPass1 / 1
line-breaking/line-breaking-002.htmlPass1 / 1
line-breaking/line-breaking-003.htmlPass1 / 1
line-breaking/line-breaking-004.htmlPass1 / 1
line-breaking/line-breaking-005.htmlPass1 / 1
line-breaking/line-breaking-006.htmlPass1 / 1
line-breaking/line-breaking-007.htmlPass1 / 1
line-breaking/line-breaking-008.htmlPass1 / 1
line-breaking/line-breaking-009.htmlPass1 / 1
line-breaking/line-breaking-010.htmlPass1 / 1
line-breaking/line-breaking-011.htmlPass1 / 1
line-breaking/line-breaking-012.htmlPass1 / 1
line-breaking/line-breaking-013.htmlPass1 / 1
line-breaking/line-breaking-014.htmlPass1 / 1
line-breaking/line-breaking-015.htmlPass1 / 1
line-breaking/line-breaking-016.htmlPass1 / 1
line-breaking/line-breaking-017.htmlPass1 / 1
line-breaking/line-breaking-018.htmlPass1 / 1
line-breaking/line-breaking-019.htmlPass1 / 1
line-breaking/line-breaking-021.htmlPass1 / 1
line-breaking/line-breaking-022.htmlFail0 / 1TEST BUG&#x85; is replaced by U+2026 by the HTML parser (the numeric character references of the C1 controls are mapped to Windows-1252): there is no U+0085 in the document and no forced line break after the fifth square (the other characters of the classes BK and NL break the lines); fails in every browser
line-breaking/line-breaking-023.htmlPass1 / 1
line-breaking/line-breaking-024.htmlPass1 / 1
line-breaking/line-breaking-025.htmlPass1 / 1
line-breaking/line-breaking-026.htmlPass1 / 1
line-breaking/line-breaking-027.htmlPass1 / 1
line-breaking/line-breaking-030.htmlPass1 / 1
line-breaking/line-breaking-031.htmlPass1 / 1
line-breaking/line-breaking-032.htmlPass1 / 1
line-breaking/line-breaking-atomic-001.htmlPass1 / 1
line-breaking/line-breaking-atomic-002.htmlPass1 / 1
line-breaking/line-breaking-atomic-003.htmlPass1 / 1
line-breaking/line-breaking-atomic-004.htmlPass1 / 1
line-breaking/line-breaking-atomic-005.htmlPass1 / 1
line-breaking/line-breaking-atomic-006.htmlPass1 / 1
line-breaking/line-breaking-atomic-007.htmlPass1 / 1
line-breaking/line-breaking-atomic-008.htmlPass1 / 1
line-breaking/line-breaking-atomic-009.htmlPass1 / 1
line-breaking/line-breaking-atomic-010.htmlPass1 / 1
line-breaking/line-breaking-atomic-011.htmlPass1 / 1
line-breaking/line-breaking-atomic-012.htmlPass1 / 1
line-breaking/line-breaking-atomic-013.htmlPass1 / 1
line-breaking/line-breaking-atomic-014.htmlPass1 / 1
line-breaking/line-breaking-atomic-015.htmlPass1 / 1
line-breaking/line-breaking-atomic-016.htmlFail0 / 1TEST BUGU+034F COMBINING GRAPHEME JOINER is a combining mark (line breaking class CM) since Unicode 15.1, no longer GL: it attaches to the character before it, and there is a soft wrap opportunity between it and the atomic inline (fails in every browser)
line-breaking/line-breaking-atomic-017.htmlFail0 / 1TEST BUGU+034F COMBINING GRAPHEME JOINER is a combining mark (line breaking class CM) since Unicode 15.1, no longer GL: it attaches to the character before it, and there is a soft wrap opportunity between it and the atomic inline (fails in every browser)
line-breaking/line-breaking-atomic-018.htmlPass1 / 1
line-breaking/line-breaking-atomic-019.htmlPass1 / 1
line-breaking/line-breaking-atomic-020.htmlPass1 / 1
line-breaking/line-breaking-atomic-021.htmlPass1 / 1
line-breaking/line-breaking-atomic-022.htmlPass1 / 1
line-breaking/line-breaking-atomic-023.htmlPass1 / 1
line-breaking/line-breaking-atomic-024.htmlPass1 / 1
line-breaking/line-breaking-atomic-025.htmlPass1 / 1
line-breaking/line-breaking-atomic-026.htmlPass1 / 1
line-breaking/line-breaking-atomic-027.htmlPass1 / 1
line-breaking/line-breaking-ic-001.htmlPass1 / 1
line-breaking/line-breaking-ic-002.htmlPass1 / 1
line-breaking/line-breaking-ic-003.htmlPass1 / 1
line-breaking/line-breaking-replaced-001.htmlPass1 / 1
line-breaking/line-breaking-replaced-002.htmlPass1 / 1
line-breaking/line-breaking-replaced-003.htmlPass1 / 1
line-breaking/line-breaking-replaced-004.htmlPass1 / 1
line-breaking/line-breaking-replaced-005.htmlPass1 / 1
line-breaking/line-breaking-replaced-006.htmlPass1 / 1
line-breaking/line-breaking-text-001.htmlFail0 / 1TEST BUGthe reference does not match the test at this revision: it has a second box (Thai, CJK and Latin text broken by <br>) that the test does not have, and its border: 1px silver has no border style where the test draws 1px solid silver borders; the line breaks of the box of the test (abc-def: then break) are the ones of the reference
line-breaking/segment-break-transformation-currency-001.htmlPass1 / 1
line-breaking/segment-break-transformation-ignorable-1.htmlPass1 / 1
line-breaking/segment-break-transformation-punctuation-001.htmlPass1 / 1
line-breaking/segment-break-transformation-punctuation-002.htmlPass1 / 1
line-breaking/segment-break-transformation-punctuation-003.htmlPass1 / 1
line-breaking/segment-break-transformation-removable-1.htmlPass1 / 1
line-breaking/segment-break-transformation-removable-2.htmlPass1 / 1
line-breaking/segment-break-transformation-removable-3.htmlPass1 / 1
line-breaking/segment-break-transformation-removable-4.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-001.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-002.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-003.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-004.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-005.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-006.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-007.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-008.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-009.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-010.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-011.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-012.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-013.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-014.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-015.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-016.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-017.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-018.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-019.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-020.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-021.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-022.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-023.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-024.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-025.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-026.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-027.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-028.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-029.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-030.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-031.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-032.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-033.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-034.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-035.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-036.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-037.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-038.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-039.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-040.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-041.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-042.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-043.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-044.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-045.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-046.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-047.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-048.htmlPass1 / 1
line-breaking/segment-break-transformation-rules-049.htmlPass1 / 1
line-breaking/segment-break-transformation-unremovable-1.htmlPass1 / 1
line-breaking/segment-break-transformation-unremovable-2.htmlPass1 / 1
line-breaking/segment-break-transformation-unremovable-3.htmlPass1 / 1
line-breaking/segment-break-transformation-unremovable-4.htmlPass1 / 1
overflow-wrap/overflow-wrap-001.htmlPass1 / 1
overflow-wrap/overflow-wrap-002.htmlPass1 / 1
overflow-wrap/overflow-wrap-004.htmlPass1 / 1
overflow-wrap/overflow-wrap-anywhere-001.htmlPass1 / 1
overflow-wrap/overflow-wrap-anywhere-002.htmlPass1 / 1
overflow-wrap/overflow-wrap-anywhere-003.htmlPass1 / 1
overflow-wrap/overflow-wrap-anywhere-004.htmlPass1 / 1
overflow-wrap/overflow-wrap-anywhere-005.htmlPass1 / 1
overflow-wrap/overflow-wrap-anywhere-006.htmlPass1 / 1
overflow-wrap/overflow-wrap-anywhere-007.htmlPass1 / 1
overflow-wrap/overflow-wrap-anywhere-008.htmlPass1 / 1
overflow-wrap/overflow-wrap-anywhere-009.htmlPass1 / 1
overflow-wrap/overflow-wrap-anywhere-010.htmlPass1 / 1
overflow-wrap/overflow-wrap-anywhere-011.htmlPass1 / 1
overflow-wrap/overflow-wrap-anywhere-fit-content-001.htmlPass1 / 1
overflow-wrap/overflow-wrap-anywhere-inline-001.htmlPass1 / 1
overflow-wrap/overflow-wrap-anywhere-inline-002.tentative.htmlPass1 / 1
overflow-wrap/overflow-wrap-anywhere-inline-003.tentative.htmlPass1 / 1
overflow-wrap/overflow-wrap-anywhere-inline-004.tentative.htmlPass1 / 1
overflow-wrap/overflow-wrap-anywhere-span-001.htmlPass1 / 1
overflow-wrap/overflow-wrap-break-word-001.htmlPass1 / 1
overflow-wrap/overflow-wrap-break-word-002.htmlPass1 / 1
overflow-wrap/overflow-wrap-break-word-003.htmlPass1 / 1
overflow-wrap/overflow-wrap-break-word-004.htmlPass1 / 1
overflow-wrap/overflow-wrap-break-word-005.htmlPass1 / 1
overflow-wrap/overflow-wrap-break-word-006.htmlPass1 / 1
overflow-wrap/overflow-wrap-break-word-007.htmlPass1 / 1
overflow-wrap/overflow-wrap-break-word-008.htmlPass1 / 1
overflow-wrap/overflow-wrap-break-word-009.htmlPass1 / 1
overflow-wrap/overflow-wrap-break-word-010.htmlPass1 / 1
overflow-wrap/overflow-wrap-break-word-fit-content-001.htmlPass1 / 1
overflow-wrap/overflow-wrap-break-word-span-001.htmlPass1 / 1
overflow-wrap/overflow-wrap-cluster-001.htmlPass1 / 1
overflow-wrap/overflow-wrap-cluster-002.htmlPass1 / 1
overflow-wrap/overflow-wrap-min-content-size-001.htmlPass1 / 1
overflow-wrap/overflow-wrap-min-content-size-002.htmlPass1 / 1
overflow-wrap/overflow-wrap-min-content-size-003.htmlPass1 / 1
overflow-wrap/overflow-wrap-min-content-size-004.htmlPass1 / 1
overflow-wrap/overflow-wrap-min-content-size-005.htmlPass1 / 1
overflow-wrap/overflow-wrap-min-content-size-006.htmlPass1 / 1
overflow-wrap/overflow-wrap-min-content-size-007.htmlPass1 / 1
overflow-wrap/overflow-wrap-min-content-size-008.htmlPass1 / 1
overflow-wrap/overflow-wrap-min-content-size-009.htmlPass1 / 1
overflow-wrap/overflow-wrap-normal-keep-all-001.htmlPass1 / 1
overflow-wrap/overflow-wrap-shaping-001.htmlPass1 / 1
overflow-wrap/overflow-wrap-shaping-002.htmlPass1 / 1
overflow-wrap/word-wrap-001.htmlPass1 / 1
overflow-wrap/word-wrap-002.htmlPass1 / 1
overflow-wrap/word-wrap-004.htmlPass1 / 1
shaping/monospace-contextual-forms-incremental.htmlPass1 / 1
shaping/reference/shaping-000-ref.htmlPass1 / 1
shaping/reference/shaping-001-ref.htmlPass1 / 1
shaping/reference/shaping-002-ref.htmlPass1 / 1
shaping/reference/shaping-003-ref.htmlPass1 / 1
shaping/reference/shaping-008-ref.htmlPass1 / 1
shaping/reference/shaping-009-ref.htmlPass1 / 1
shaping/reference/shaping-010-ref.htmlPass1 / 1
shaping/reference/shaping-011-ref.htmlPass1 / 1
shaping/reference/shaping-012-ref.htmlPass1 / 1
shaping/reference/shaping-014-ref.htmlPass1 / 1
shaping/reference/shaping-016-ref.htmlPass1 / 1
shaping/reference/shaping-020-ref.htmlPass1 / 1
shaping/reference/shaping-021-ref.htmlPass1 / 1
shaping/reference/shaping-022-ref.htmlPass1 / 1
shaping/reference/shaping-023-ref.htmlPass1 / 1
shaping/reference/shaping-024-ref.htmlPass1 / 1
shaping/reference/shaping-025-ref.htmlPass1 / 1
shaping/shaping-000.htmlPass1 / 1
shaping/shaping-001.htmlPass1 / 1
shaping/shaping-002.htmlPass1 / 1
shaping/shaping-003.htmlPass1 / 1
shaping/shaping-004.htmlPass1 / 1
shaping/shaping-005.htmlPass1 / 1
shaping/shaping-006.htmlPass1 / 1
shaping/shaping-007.htmlPass1 / 1
shaping/shaping-008.htmlPass1 / 1
shaping/shaping-009.htmlPass1 / 1
shaping/shaping-010.htmlPass1 / 1
shaping/shaping-011.htmlPass1 / 1
shaping/shaping-012.htmlPass1 / 1
shaping/shaping-013.htmlPass1 / 1
shaping/shaping-014.htmlPass1 / 1
shaping/shaping-016.htmlPass1 / 1
shaping/shaping-017.htmlPass1 / 1
shaping/shaping-018.htmlPass1 / 1
shaping/shaping-020.htmlPass1 / 1
shaping/shaping-021.htmlPass1 / 1
shaping/shaping-022.htmlPass1 / 1
shaping/shaping-023.htmlPass1 / 1
shaping/shaping-024.htmlPass1 / 1
shaping/shaping-025.htmlPass1 / 1
shaping/shaping-arabic-diacritics-001.htmlPass1 / 1
shaping/shaping-arabic-diacritics-002.htmlPass1 / 1
shaping/shaping_lig-000.htmlPass1 / 1
shaping/shaping_lig-001.htmlPass1 / 1
tab-size/tab-min-rendered-width-1.htmlPass1 / 1
tab-size/tab-size-block-ancestor.htmlPass1 / 1
tab-size/tab-size-inheritance-001.htmlPass1 / 1
tab-size/tab-size-inline-001.htmlPass1 / 1
tab-size/tab-size-inline-002.htmlPass1 / 1
tab-size/tab-size-integer-001.htmlPass1 / 1
tab-size/tab-size-integer-002.htmlPass1 / 1
tab-size/tab-size-integer-003.htmlPass1 / 1
tab-size/tab-size-integer-004.htmlPass1 / 1
tab-size/tab-size-integer-005.htmlPass1 / 1
tab-size/tab-size-length-001.htmlPass1 / 1
tab-size/tab-size-length-002.htmlPass1 / 1
tab-size/tab-size-percent-001.htmlPass1 / 1
tab-size/tab-size-spacing-001.htmlPass1 / 1
tab-size/tab-size-spacing-002.htmlPass1 / 1
tab-size/tab-size-spacing-003.htmlPass1 / 1
text-align/text-align-006.htmlPass1 / 1
text-align/text-align-007.htmlPass1 / 1
text-align/text-align-center-last-center.htmlPass1 / 1
text-align/text-align-center-last-default.htmlPass1 / 1
text-align/text-align-center-last-end.htmlPass1 / 1
text-align/text-align-center-last-justify.htmlPass1 / 1
text-align/text-align-center-last-start.htmlPass1 / 1
text-align/text-align-default-last-default.htmlPass1 / 1
text-align/text-align-end-001.htmlPass1 / 1
text-align/text-align-end-002.htmlPass1 / 1
text-align/text-align-end-003.htmlPass1 / 1
text-align/text-align-end-004.htmlPass1 / 1
text-align/text-align-end-005.htmlPass1 / 1
text-align/text-align-end-006.htmlPass1 / 1
text-align/text-align-end-007.htmlPass1 / 1
text-align/text-align-end-008.htmlPass1 / 1
text-align/text-align-end-009.htmlPass1 / 1
text-align/text-align-end-010.htmlPass1 / 1
text-align/text-align-end-014.htmlPass1 / 1
text-align/text-align-end-015.htmlPass1 / 1
text-align/text-align-end-016.htmlPass1 / 1
text-align/text-align-end-017.htmlPass1 / 1
text-align/text-align-end-last-center.htmlPass1 / 1
text-align/text-align-end-last-default.htmlPass1 / 1
text-align/text-align-end-last-end.htmlPass1 / 1
text-align/text-align-end-last-justify.htmlPass1 / 1
text-align/text-align-end-last-start.htmlPass1 / 1
text-align/text-align-justify-001.htmlPass1 / 1
text-align/text-align-justify-002.htmlPass1 / 1
text-align/text-align-justify-003.htmlPass1 / 1
text-align/text-align-justify-004.htmlPass1 / 1
text-align/text-align-justify-005.htmlPass1 / 1
text-align/text-align-justify-006.htmlPass1 / 1
text-align/text-align-justify-bidi-control.htmlPass1 / 1
text-align/text-align-justify-block-in-inline.htmlPass1 / 1
text-align/text-align-justify-last-center.htmlPass1 / 1
text-align/text-align-justify-last-default.htmlPass1 / 1
text-align/text-align-justify-last-end.htmlPass1 / 1
text-align/text-align-justify-last-justify.htmlPass1 / 1
text-align/text-align-justify-last-start.htmlPass1 / 1
text-align/text-align-justify-shy-001.htmlPass1 / 1
text-align/text-align-justify-tabs-001.htmlPass1 / 1
text-align/text-align-justify-tabs-002.htmlPass1 / 1
text-align/text-align-justify-tabs-003.htmlPass1 / 1
text-align/text-align-justify-tabs-004.htmlPass1 / 1
text-align/text-align-justifyall-001.htmlPass1 / 1
text-align/text-align-justifyall-002.htmlPass1 / 1
text-align/text-align-justifyall-003.htmlPass1 / 1
text-align/text-align-justifyall-004.htmlPass1 / 1
text-align/text-align-justifyall-005.htmlPass1 / 1
text-align/text-align-justifyall-006.htmlPass1 / 1
text-align/text-align-last-010.htmlPass1 / 1
text-align/text-align-last-011.htmlPass1 / 1
text-align/text-align-last-015.htmlPass1 / 1
text-align/text-align-last-center.htmlPass1 / 1
text-align/text-align-last-end.htmlPass1 / 1
text-align/text-align-last-justify-block-in-inline.htmlPass1 / 1
text-align/text-align-last-justify-br.htmlPass1 / 1
text-align/text-align-last-justify-rtl.htmlPass1 / 1
text-align/text-align-last-justify.htmlPass1 / 1
text-align/text-align-last-simple.htmlPass1 / 1
text-align/text-align-last-start.htmlPass1 / 1
text-align/text-align-last-wins-001.htmlPass1 / 1
text-align/text-align-match-parent-001.htmlPass1 / 1
text-align/text-align-match-parent-01.htmlPass1 / 1
text-align/text-align-match-parent-02.htmlPass1 / 1
text-align/text-align-match-parent-03.htmlPass1 / 1
text-align/text-align-match-parent-04.htmlPass1 / 1
text-align/text-align-match-parent-05.htmlFail0 / 1TEST BUGthe test expects the last line of an element with text-align: match-parent; text-align-all: left to be aligned to the right, the start of its right-to-left parent; text-align-last: match-parent "computes to its parent's computed value", which is auto, so the last line follows the text-align-all: left of the element (Firefox and Safari pass, Chrome fails)
text-align/text-align-match-parent-root-logical.htmlPass1 / 1
text-align/text-align-match-parent-root-ltr.htmlPass1 / 1
text-align/text-align-match-parent-root-rtl.htmlPass1 / 1
text-align/text-align-start-001.htmlPass1 / 1
text-align/text-align-start-002.htmlPass1 / 1
text-align/text-align-start-003.htmlPass1 / 1
text-align/text-align-start-004.htmlPass1 / 1
text-align/text-align-start-005.htmlPass1 / 1
text-align/text-align-start-006.htmlPass1 / 1
text-align/text-align-start-007.htmlPass1 / 1
text-align/text-align-start-008.htmlPass1 / 1
text-align/text-align-start-009.htmlPass1 / 1
text-align/text-align-start-010.htmlPass1 / 1
text-align/text-align-start-014.htmlPass1 / 1
text-align/text-align-start-015.htmlPass1 / 1
text-align/text-align-start-016.htmlPass1 / 1
text-align/text-align-start-017.htmlPass1 / 1
text-align/text-align-start-last-center.htmlPass1 / 1
text-align/text-align-start-last-default.htmlPass1 / 1
text-align/text-align-start-last-end.htmlPass1 / 1
text-align/text-align-start-last-justify.htmlPass1 / 1
text-align/text-align-start-last-start.htmlPass1 / 1
text-autospace/text-autospace-001.htmlPass1 / 1
text-autospace/text-autospace-002.htmlPass1 / 1
text-autospace/text-autospace-003.htmlPass1 / 1
text-autospace/text-autospace-004.htmlPass1 / 1
text-autospace/text-autospace-break-001.htmlPass1 / 1
text-autospace/text-autospace-combining-marks.htmlPass1 / 1
text-autospace/text-autospace-dynamic-001.htmlPass1 / 1
text-autospace/text-autospace-dynamic-text-001.htmlPass1 / 1
text-autospace/text-autospace-dynamic-text-002.htmlPass1 / 1
text-autospace/text-autospace-dynamic-text-003.htmlPass1 / 1
text-autospace/text-autospace-dynamic-text-004.htmlPass1 / 1
text-autospace/text-autospace-edit-001.htmlPass1 / 1
text-autospace/text-autospace-elements-001.htmlPass1 / 1
text-autospace/text-autospace-elements-002.htmlPass1 / 1
text-autospace/text-autospace-elements-003.htmlPass1 / 1
text-autospace/text-autospace-elements-004.htmlPass1 / 1
text-autospace/text-autospace-elements-005.htmlPass1 / 1
text-autospace/text-autospace-elements-005b.htmlPass1 / 1
text-autospace/text-autospace-elements-006.htmlPass1 / 1
text-autospace/text-autospace-elements-007.htmlPass1 / 1
text-autospace/text-autospace-first-line-001.htmlPass1 / 1
text-autospace/text-autospace-ideogram-alpha-001.htmlPass1 / 1
text-autospace/text-autospace-ideograph-numeric-001.htmlPass1 / 1
text-autospace/text-autospace-ligature-001.htmlPass1 / 1
text-autospace/text-autospace-mixed-001.htmlPass1 / 1
text-autospace/text-autospace-no-001.htmlPass1 / 1
text-autospace/text-autospace-preformatted-001.htmlPass1 / 1
text-autospace/text-autospace-supplementary-ideograph.htmlPass1 / 1
text-autospace/text-autospace-vertical-combine-001.htmlPass1 / 1
text-autospace/text-autospace-vertical-upright-001.htmlPass1 / 1
text-autospace/text-autospace-vs-001.htmlPass1 / 1
text-autospace/text-autospace-zh-001.htmlFail0 / 1TEST BUGthe test expects inter-script spacing between the ideographs and the ASCII punctuation ! and # of a Chinese text; text-autospace: normal is ideograph-alpha ideograph-numeric (https://drafts.csswg.org/css-text-4/#text-autospace-property), which only separates the ideographs from the non-ideographic letters and numerals, and punctuation only has an effect in French (passes in Chrome only)
text-encoding/shaping-join-001.htmlPass1 / 1
text-encoding/shaping-join-002.htmlPass1 / 1
text-encoding/shaping-join-003.htmlPass1 / 1
text-encoding/shaping-no-join-001.htmlPass1 / 1
text-encoding/shaping-no-join-002.htmlPass1 / 1
text-encoding/shaping-no-join-003.htmlPass1 / 1
text-encoding/shaping-tatweel-001.htmlPass1 / 1
text-encoding/shaping-tatweel-002.htmlPass1 / 1
text-encoding/shaping-tatweel-003.htmlPass1 / 1
text-fit/background-image.htmlPass1 / 1
text-fit/columns-consistent.htmlPass1 / 1
text-fit/consistent-blank-line.htmlPass1 / 1
text-fit/grow-consistent.htmlPass1 / 1
text-fit/grow-dynamic.htmlPass1 / 1
text-fit/grow-per-line-all-line-height.htmlPass1 / 1
text-fit/grow-per-line-all.htmlPass1 / 1
text-fit/grow-per-line.htmlPass1 / 1
text-fit/selection-highlight-painting.htmlPass1 / 1
text-fit/shrink-consistent.htmlPass1 / 1
text-fit/shrink-dynamic.htmlPass1 / 1
text-fit/shrink-per-line-all.htmlPass1 / 1
text-fit/spacing.htmlPass1 / 1
text-fit/text-align.htmlPass1 / 1
text-fit/text-box.htmlPass1 / 1
text-fit/text-decoration-skip-ink.htmlPass1 / 1
text-fit/text-decoration-thickness.htmlPass1 / 1
text-fit/text-emphasis.htmlPass1 / 1
text-fit/text-underline-offset.htmlFail0 / 1TEST BUGthe reference of the per-line-all case with text-underline-offset: auto underlines the text of a span of 40px from a block container of 20px, so its underline is at the position of the font at 20px, where the test has a line scaled by 2 whose boxes (also the root inline box, which is the decorating box) have a used font size of 40px: the underline is at the position of the font at 40px (in Blink the automatic underline position does not depend on the font size; the other cases of the test match)
text-fit/vertical-align.htmlPass1 / 1
text-fit/writing-mode.htmlPass1 / 1
text-group-align/text-group-align-center-vlr.htmlPass1 / 1
text-group-align/text-group-align-center.htmlPass1 / 1
text-group-align/text-group-align-end-vlr.htmlPass1 / 1
text-group-align/text-group-align-end.htmlPass1 / 1
text-group-align/text-group-align-left-vlr.htmlPass1 / 1
text-group-align/text-group-align-left.htmlPass1 / 1
text-group-align/text-group-align-right-vlr.htmlPass1 / 1
text-group-align/text-group-align-right.htmlPass1 / 1
text-group-align/text-group-align-start-vlr.htmlPass1 / 1
text-group-align/text-group-align-start.htmlPass1 / 1
text-indent/anonymous-flex-item-001.htmlPass1 / 1
text-indent/anonymous-grid-item-001.htmlPass1 / 1
text-indent/below-float.htmlPass1 / 1
text-indent/below-float2.htmlPass1 / 1
text-indent/below-float3.htmlPass1 / 1
text-indent/text-indent-abspos-hanging-001.htmlPass1 / 1
text-indent/text-indent-caret-001.htmlPass1 / 1
text-indent/text-indent-caret-hanging-001.htmlPass1 / 1
text-indent/text-indent-dynamic-each-line-001.htmlPass1 / 1
text-indent/text-indent-dynamic-each-line-002.htmlPass1 / 1
text-indent/text-indent-dynamic-hanging-001.htmlPass1 / 1
text-indent/text-indent-dynamic-hanging-002.htmlPass1 / 1
text-indent/text-indent-each-line-after-block-level-box.htmlPass1 / 1
text-indent/text-indent-each-line-hanging.htmlPass1 / 1
text-indent/text-indent-length-001.htmlPass1 / 1
text-indent/text-indent-length-002.htmlPass1 / 1
text-indent/text-indent-list-001.htmlPass1 / 1
text-indent/text-indent-min-max-content-001.htmlPass1 / 1
text-indent/text-indent-overflow.htmlPass1 / 1
text-indent/text-indent-percentage-001.xhtPass1 / 1
text-indent/text-indent-percentage-002.htmlPass1 / 1
text-indent/text-indent-percentage-003.htmlPass1 / 1
text-indent/text-indent-percentage-004.htmlPass1 / 1
text-indent/text-indent-tab-positions-001.htmlPass1 / 1
text-indent/text-indent-text-align-end.htmlPass1 / 1
text-indent/text-indent-with-absolute-pos-child.htmlPass1 / 1
text-justify/text-justify-001.htmlPass1 / 1
text-justify/text-justify-006.htmlPass1 / 1
text-justify/text-justify-and-trailing-spaces-001.htmlPass1 / 1
text-justify/text-justify-and-trailing-spaces-002.htmlPass1 / 1
text-justify/text-justify-and-trailing-spaces-003.htmlPass1 / 1
text-justify/text-justify-and-trailing-spaces-004.htmlPass1 / 1
text-justify/text-justify-and-trailing-spaces-005.htmlPass1 / 1
text-justify/text-justify-and-trailing-spaces-006.htmlPass1 / 1
text-justify/text-justify-distribute-001.htmlPass1 / 1
text-justify/text-justify-inter-character-001.htmlPass1 / 1
text-justify/text-justify-inter-character-atomic-inline.htmlPass1 / 1
text-justify/text-justify-inter-character-cursive.htmlPass1 / 1
text-justify/text-justify-inter-word-001.htmlPass1 / 1
text-justify/text-justify-none-001.htmlPass1 / 1
text-justify/text-justify-word-separators.htmlPass1 / 1
text-spacing-trim/text-spacing-trim-001.htmlPass4 / 4
text-spacing-trim/text-spacing-trim-colon-001.htmlFail2 / 4TEST BUGthe vertical variants (vrl) expect the classification of Chrome, from the glyphs of the font in the vertical flow: no trimming of a fullwidth parenthesis next to a fullwidth colon or semicolon that the font keeps upright (ๅ›ฝ๏ผ›๏ผˆๅ›ฝ and ๅ›ฝ๏ผ‰๏ผ›ๅ›ฝ in Japanese, the colons and semicolons in Chinese), as if they were neither closing nor middle dot punctuation. "The UA must classify fullwidth colon punctuation [U+FF1A and U+FF1B] and fullwidth dot punctuation under either the fullwidth closing punctuation category or the fullwidth middle dot punctuation category" (https://drafts.csswg.org/css-text-4/#fullwidth-ambiguous; the table there makes the colons closing punctuation in vertical Simplified Chinese, and middle dots in Japanese and Traditional Chinese, the colon and the semicolon alike): the engine classifies them by language and trims the parenthesis next to them; the horizontal variants pass (passes in Chrome only)
text-spacing-trim/text-spacing-trim-dot-001.htmlPass4 / 4
text-spacing-trim/text-spacing-trim-dynamic-001.htmlPass2 / 2
text-spacing-trim/text-spacing-trim-end-001.htmlPass4 / 4
text-spacing-trim/text-spacing-trim-end-span-001.htmlPass1 / 1
text-spacing-trim/text-spacing-trim-fallback-001.htmlPass1 / 1
text-spacing-trim/text-spacing-trim-fallback-002.htmlPass4 / 4
text-spacing-trim/text-spacing-trim-feature-001.htmlPass8 / 8
text-spacing-trim/text-spacing-trim-narrow-001.htmlPass3 / 3
text-spacing-trim/text-spacing-trim-quote-001.htmlPass9 / 9
text-spacing-trim/text-spacing-trim-space-all-001.htmlPass2 / 2
text-spacing-trim/text-spacing-trim-span-001.htmlPass12 / 12
text-spacing-trim/text-spacing-trim-start-001.htmlFail4 / 12TEST BUGthe last row expects the line ๅ›ฝๅ›ฝๅ›ฝๅ›ฝโ€œ to be broken before the opening quotation mark that ends the text, so that it starts a line and is trimmed (its reference sets it with halt without a break); UAX #14 forbids that break since Unicode 15.1 (rule LB19a: ร— QU (eot), the quotation mark is not surrounded by East Asian characters), so the quotation mark stays after the last ideograph with its full width (passes in Chrome only)
text-spacing-trim/text-spacing-trim-start-002.htmlPass1 / 1
text-spacing-trim/text-spacing-trim-start-oof-001.htmlPass4 / 4
text-spacing-trim/text-spacing-trim-subset-001.htmlPass2 / 2
text-spacing-trim/text-spacing-trim-trim-all-001.htmlFail0 / 4TEST BUGthe test does not set text-spacing-trim: trim-all (its reference trims every punctuation with halt): it fails in Chrome too
text-stroke-width-subpixel.htmlPass1 / 1
text-transform/math/text-transform-math-auto-001.htmlPass1 / 1
text-transform/math/text-transform-math-auto-002.htmlPass1 / 1
text-transform/text-transform-capitalize-001.htmlPass1 / 1
text-transform/text-transform-capitalize-003.htmlPass1 / 1
text-transform/text-transform-capitalize-005.htmlPass1 / 1
text-transform/text-transform-capitalize-007.htmlPass1 / 1
text-transform/text-transform-capitalize-009.htmlPass1 / 1
text-transform/text-transform-capitalize-010.htmlPass1 / 1
text-transform/text-transform-capitalize-011.htmlPass1 / 1
text-transform/text-transform-capitalize-014.htmlPass1 / 1
text-transform/text-transform-capitalize-016.htmlPass1 / 1
text-transform/text-transform-capitalize-018.htmlPass1 / 1
text-transform/text-transform-capitalize-020.htmlPass1 / 1
text-transform/text-transform-capitalize-022.htmlPass1 / 1
text-transform/text-transform-capitalize-024.htmlPass1 / 1
text-transform/text-transform-capitalize-026.htmlPass1 / 1
text-transform/text-transform-capitalize-028.htmlPass1 / 1
text-transform/text-transform-capitalize-030.htmlPass1 / 1
text-transform/text-transform-capitalize-031.htmlPass1 / 1
text-transform/text-transform-capitalize-032.xhtPass1 / 1
text-transform/text-transform-capitalize-033.htmlPass1 / 1
text-transform/text-transform-capitalize-034.htmlPass1 / 1
text-transform/text-transform-capitalize-035.htmlPass1 / 1
text-transform/text-transform-full-size-kana-001.htmlPass1 / 1
text-transform/text-transform-full-size-kana-002.htmlPass1 / 1
text-transform/text-transform-full-size-kana-003.htmlPass1 / 1
text-transform/text-transform-full-size-kana-004.htmlPass1 / 1
text-transform/text-transform-full-size-kana-005.htmlPass1 / 1
text-transform/text-transform-full-size-kana-006.htmlPass1 / 1
text-transform/text-transform-full-size-kana-007.htmlPass1 / 1
text-transform/text-transform-full-size-kana-008.htmlPass1 / 1
text-transform/text-transform-fullwidth-001.xhtPass1 / 1
text-transform/text-transform-fullwidth-002.xhtPass1 / 1
text-transform/text-transform-fullwidth-004.xhtPass1 / 1
text-transform/text-transform-fullwidth-005.xhtPass1 / 1
text-transform/text-transform-fullwidth-006.htmlPass1 / 1
text-transform/text-transform-fullwidth-007.htmlPass1 / 1
text-transform/text-transform-fullwidth-008.htmlPass1 / 1
text-transform/text-transform-fullwidth-009.htmlPass1 / 1
text-transform/text-transform-fullwidth-010.htmlPass1 / 1
text-transform/text-transform-letter-spacing-001.htmlPass1 / 1
text-transform/text-transform-letter-spacing-002.htmlPass1 / 1
text-transform/text-transform-lowercase-101.xhtPass1 / 1
text-transform/text-transform-lowercase-102.xhtPass1 / 1
text-transform/text-transform-multiple-001.htmlPass1 / 1
text-transform/text-transform-none-001.xhtPass1 / 1
text-transform/text-transform-shaping-001.htmlPass1 / 1
text-transform/text-transform-shaping-002.htmlPass1 / 1
text-transform/text-transform-shaping-003.htmlPass1 / 1
text-transform/text-transform-tailoring-001.htmlPass1 / 1
text-transform/text-transform-tailoring-001a.htmlPass1 / 1
text-transform/text-transform-tailoring-002.htmlPass1 / 1
text-transform/text-transform-tailoring-002a.htmlPass1 / 1
text-transform/text-transform-tailoring-003.htmlPass1 / 1
text-transform/text-transform-tailoring-004.htmlPass1 / 1
text-transform/text-transform-tailoring-005.htmlPass1 / 1
text-transform/text-transform-tailoring-document-lang-dynamic.htmlPass1 / 1
text-transform/text-transform-tailoring-dynamic.htmlPass1 / 1
text-transform/text-transform-uppercase-101.xhtPass1 / 1
text-transform/text-transform-uppercase-dynamic.htmlPass1 / 1
text-transform/text-transform-upperlower-001.htmlPass1 / 1
text-transform/text-transform-upperlower-002.htmlPass1 / 1
text-transform/text-transform-upperlower-003.htmlPass1 / 1
text-transform/text-transform-upperlower-004.htmlPass1 / 1
text-transform/text-transform-upperlower-005.htmlPass1 / 1
text-transform/text-transform-upperlower-006.htmlFail0 / 1TEST BUGthe reference has i (U+0069) for the lowercase of U+0130, whose full case mapping is iฬ‡ (U+0069 U+0307, SpecialCasing.txt, outside of Turkish and Azeri: https://drafts.csswg.org/css-text-3/#text-transform-mapping; the test passes with U+0069 U+0307 in the reference): the two only render alike with a font that removes the dot of the i before U+0307, as Doulos SIL, the web font of the test, but /fonts/DoulosSIL-R.woff does not exist in WPT, and the fallback font (Arimo) has no U+0307, which comes from another font (9 pixels of the dot differ); fails in every browser
text-transform/text-transform-upperlower-007.htmlPass1 / 1
text-transform/text-transform-upperlower-008.htmlPass1 / 1
text-transform/text-transform-upperlower-009.htmlPass1 / 1
text-transform/text-transform-upperlower-010.htmlPass1 / 1
text-transform/text-transform-upperlower-011.htmlPass1 / 1
text-transform/text-transform-upperlower-012.htmlPass1 / 1
text-transform/text-transform-upperlower-014.htmlPass1 / 1
text-transform/text-transform-upperlower-015.htmlPass1 / 1
text-transform/text-transform-upperlower-016.htmlFail0 / 1TEST BUGexpects the simple uppercase mappings of the Greek letters with a iota subscript (แพ€ โ†’ แพˆ) instead of the full mappings of SpecialCasing.txt (แผˆฮ™) that text-transform uses (fails in every browser)
text-transform/text-transform-upperlower-017.htmlPass1 / 1
text-transform/text-transform-upperlower-018.htmlPass1 / 1
text-transform/text-transform-upperlower-019.htmlPass1 / 1
text-transform/text-transform-upperlower-020.htmlPass1 / 1
text-transform/text-transform-upperlower-021.htmlPass1 / 1
text-transform/text-transform-upperlower-022.htmlPass1 / 1
text-transform/text-transform-upperlower-023.htmlPass1 / 1
text-transform/text-transform-upperlower-024.htmlPass1 / 1
text-transform/text-transform-upperlower-025.htmlPass1 / 1
text-transform/text-transform-upperlower-026.htmlPass1 / 1
text-transform/text-transform-upperlower-027.htmlPass1 / 1
text-transform/text-transform-upperlower-028.htmlPass1 / 1
text-transform/text-transform-upperlower-029.htmlPass1 / 1
text-transform/text-transform-upperlower-030.htmlPass1 / 1
text-transform/text-transform-upperlower-031.htmlPass1 / 1
text-transform/text-transform-upperlower-032.htmlPass1 / 1
text-transform/text-transform-upperlower-033.htmlPass1 / 1
text-transform/text-transform-upperlower-034.htmlPass1 / 1
text-transform/text-transform-upperlower-035.htmlPass1 / 1
text-transform/text-transform-upperlower-038.htmlPass1 / 1
text-transform/text-transform-upperlower-039.htmlPass1 / 1
text-transform/text-transform-upperlower-040.htmlPass1 / 1
text-transform/text-transform-upperlower-041.htmlPass1 / 1
text-transform/text-transform-upperlower-042.htmlPass1 / 1
text-transform/text-transform-upperlower-043.htmlPass1 / 1
text-transform/text-transform-upperlower-044.htmlPass1 / 1
text-transform/text-transform-upperlower-101.htmlPass1 / 1
text-transform/text-transform-upperlower-102.htmlPass1 / 1
text-transform/text-transform-upperlower-103.htmlPass1 / 1
text-transform/text-transform-upperlower-104.htmlPass1 / 1
text-transform/text-transform-upperlower-105.htmlPass1 / 1
text-transform/text-transform-upperlower-106.htmlPass1 / 1
text-transform/text-transform-upperlower-108.htmlPass1 / 1
white-space/break-spaces-001.htmlPass1 / 1
white-space/break-spaces-002.htmlPass1 / 1
white-space/break-spaces-003.htmlPass1 / 1
white-space/break-spaces-004.htmlPass1 / 1
white-space/break-spaces-005.htmlPass1 / 1
white-space/break-spaces-006.htmlPass1 / 1
white-space/break-spaces-007.htmlPass1 / 1
white-space/break-spaces-008.htmlPass1 / 1
white-space/break-spaces-009.htmlPass1 / 1
white-space/break-spaces-010.htmlPass1 / 1
white-space/break-spaces-011.htmlPass1 / 1
white-space/break-spaces-051.htmlPass1 / 1
white-space/break-spaces-052.htmlPass1 / 1
white-space/break-spaces-before-first-char-001.htmlPass1 / 1
white-space/break-spaces-before-first-char-002.htmlPass1 / 1
white-space/break-spaces-before-first-char-003.htmlPass1 / 1
white-space/break-spaces-before-first-char-004.htmlPass1 / 1
white-space/break-spaces-before-first-char-005.htmlPass1 / 1
white-space/break-spaces-before-first-char-006.htmlPass1 / 1
white-space/break-spaces-before-first-char-007.htmlPass1 / 1
white-space/break-spaces-before-first-char-008.htmlPass1 / 1
white-space/break-spaces-before-first-char-009.htmlPass1 / 1
white-space/break-spaces-before-first-char-010.htmlPass1 / 1
white-space/break-spaces-before-first-char-011.htmlPass1 / 1
white-space/break-spaces-before-first-char-012.htmlPass1 / 1
white-space/break-spaces-before-first-char-013.htmlPass1 / 1
white-space/break-spaces-before-first-char-014.htmlPass1 / 1
white-space/break-spaces-before-first-char-015.htmlPass1 / 1
white-space/break-spaces-before-first-char-016.htmlPass1 / 1
white-space/break-spaces-before-first-char-017.htmlPass1 / 1
white-space/break-spaces-before-first-char-018.htmlPass1 / 1
white-space/break-spaces-before-first-ideographic-char-001.htmlPass1 / 1
white-space/break-spaces-before-first-ideographic-char-002.htmlPass1 / 1
white-space/break-spaces-before-first-ideographic-char-003.htmlPass1 / 1
white-space/break-spaces-before-first-ideographic-char-004.htmlPass1 / 1
white-space/break-spaces-before-first-ideographic-char-005.htmlPass1 / 1
white-space/break-spaces-before-first-ideographic-char-006.htmlPass1 / 1
white-space/break-spaces-before-first-ideographic-char-007.htmlPass1 / 1
white-space/break-spaces-before-first-ideographic-char-008.htmlPass1 / 1
white-space/break-spaces-before-first-ideographic-char-009.htmlPass1 / 1
white-space/break-spaces-before-first-ideographic-char-010.htmlPass1 / 1
white-space/break-spaces-before-first-ideographic-char-011.htmlPass1 / 1
white-space/break-spaces-before-first-ideographic-char-012.htmlPass1 / 1
white-space/break-spaces-before-first-ideographic-char-013.htmlPass1 / 1
white-space/break-spaces-before-first-ideographic-char-014.htmlPass1 / 1
white-space/break-spaces-before-first-ideographic-char-015.htmlPass1 / 1
white-space/break-spaces-before-first-ideographic-char-016.htmlPass1 / 1
white-space/break-spaces-before-first-ideographic-char-017.htmlPass1 / 1
white-space/break-spaces-before-first-ideographic-char-018.htmlPass1 / 1
white-space/break-spaces-newline-011.htmlPass1 / 1
white-space/break-spaces-newline-012.htmlPass1 / 1
white-space/break-spaces-newline-013.htmlPass1 / 1
white-space/break-spaces-newline-014.htmlPass1 / 1
white-space/break-spaces-newline-015.htmlPass1 / 1
white-space/break-spaces-newline-016.htmlPass1 / 1
white-space/break-spaces-tab-001.htmlPass1 / 1
white-space/break-spaces-tab-002.htmlPass1 / 1
white-space/break-spaces-tab-003.htmlPass1 / 1
white-space/break-spaces-tab-004.htmlPass1 / 1
white-space/break-spaces-tab-005.htmlPass1 / 1
white-space/break-spaces-tab-006.htmlPass1 / 1
white-space/break-spaces-with-ideographic-space-001.htmlPass1 / 1
white-space/break-spaces-with-ideographic-space-002.htmlPass1 / 1
white-space/break-spaces-with-ideographic-space-003.htmlPass1 / 1
white-space/break-spaces-with-ideographic-space-004.htmlPass1 / 1
white-space/break-spaces-with-ideographic-space-005.htmlPass1 / 1
white-space/break-spaces-with-ideographic-space-006.htmlPass1 / 1
white-space/break-spaces-with-ideographic-space-007.htmlPass1 / 1
white-space/break-spaces-with-ideographic-space-008.htmlPass1 / 1
white-space/break-spaces-with-ideographic-space-009.htmlPass1 / 1
white-space/break-spaces-with-ideographic-space-010.htmlPass1 / 1
white-space/break-spaces-with-overflow-wrap-001.htmlPass1 / 1
white-space/break-spaces-with-overflow-wrap-002.htmlPass1 / 1
white-space/break-spaces-with-overflow-wrap-003.htmlPass1 / 1
white-space/break-spaces-with-overflow-wrap-004.htmlPass1 / 1
white-space/break-spaces-with-overflow-wrap-005.htmlPass1 / 1
white-space/break-spaces-with-overflow-wrap-006.htmlPass1 / 1
white-space/break-spaces-with-overflow-wrap-007.htmlPass1 / 1
white-space/break-spaces-with-overflow-wrap-008.htmlPass1 / 1
white-space/break-spaces-with-overflow-wrap-009.htmlPass1 / 1
white-space/break-spaces-with-overflow-wrap-010.htmlPass1 / 1
white-space/break-spaces-with-word-break-001.htmlPass1 / 1
white-space/control-chars-000.htmlPass1 / 1
white-space/control-chars-001.htmlPass1 / 1
white-space/control-chars-002.htmlPass1 / 1
white-space/control-chars-003.htmlPass1 / 1
white-space/control-chars-004.htmlPass1 / 1
white-space/control-chars-005.htmlPass1 / 1
white-space/control-chars-006.htmlPass1 / 1
white-space/control-chars-007.htmlPass1 / 1
white-space/control-chars-008.htmlPass1 / 1
white-space/control-chars-00B.htmlPass1 / 1
white-space/control-chars-00C.htmlPass1 / 1
white-space/control-chars-00D.htmlPass1 / 1
white-space/control-chars-00E.htmlPass1 / 1
white-space/control-chars-00F.htmlPass1 / 1
white-space/control-chars-010.htmlPass1 / 1
white-space/control-chars-011.htmlPass1 / 1
white-space/control-chars-012.htmlPass1 / 1
white-space/control-chars-013.htmlPass1 / 1
white-space/control-chars-014.htmlPass1 / 1
white-space/control-chars-015.htmlPass1 / 1
white-space/control-chars-016.htmlPass1 / 1
white-space/control-chars-017.htmlPass1 / 1
white-space/control-chars-018.htmlPass1 / 1
white-space/control-chars-019.htmlPass1 / 1
white-space/control-chars-01A.htmlPass1 / 1
white-space/control-chars-01B.htmlPass1 / 1
white-space/control-chars-01C.htmlPass1 / 1
white-space/control-chars-01D.htmlPass1 / 1
white-space/control-chars-01E.htmlPass1 / 1
white-space/control-chars-01F.htmlPass1 / 1
white-space/control-chars-07F.htmlPass1 / 1
white-space/control-chars-080.htmlPass1 / 1
white-space/control-chars-081.htmlPass1 / 1
white-space/control-chars-082.htmlPass1 / 1
white-space/control-chars-083.htmlPass1 / 1
white-space/control-chars-084.htmlPass1 / 1
white-space/control-chars-085.htmlPass1 / 1
white-space/control-chars-086.htmlPass1 / 1
white-space/control-chars-087.htmlPass1 / 1
white-space/control-chars-088.htmlPass1 / 1
white-space/control-chars-089.htmlPass1 / 1
white-space/control-chars-08A.htmlPass1 / 1
white-space/control-chars-08B.htmlPass1 / 1
white-space/control-chars-08C.htmlPass1 / 1
white-space/control-chars-08D.htmlPass1 / 1
white-space/control-chars-08E.htmlPass1 / 1
white-space/control-chars-08F.htmlPass1 / 1
white-space/control-chars-090.htmlPass1 / 1
white-space/control-chars-091.htmlPass1 / 1
white-space/control-chars-092.htmlPass1 / 1
white-space/control-chars-093.htmlPass1 / 1
white-space/control-chars-094.htmlPass1 / 1
white-space/control-chars-095.htmlPass1 / 1
white-space/control-chars-096.htmlPass1 / 1
white-space/control-chars-097.htmlPass1 / 1
white-space/control-chars-098.htmlPass1 / 1
white-space/control-chars-099.htmlPass1 / 1
white-space/control-chars-09A.htmlPass1 / 1
white-space/control-chars-09B.htmlPass1 / 1
white-space/control-chars-09C.htmlPass1 / 1
white-space/control-chars-09D.htmlPass1 / 1
white-space/control-chars-09E.htmlPass1 / 1
white-space/control-chars-09F.htmlPass1 / 1
white-space/display-contents-remove-whitespace-change.htmlPass1 / 1
white-space/eol-spaces-bidi-001.htmlPass1 / 1
white-space/eol-spaces-bidi-002.htmlPass1 / 1
white-space/eol-spaces-bidi-003.htmlPass1 / 1
white-space/eol-spaces-bidi-004.htmlPass1 / 1
white-space/full-width-leading-spaces-001.htmlPass1 / 1
white-space/full-width-leading-spaces-002.htmlPass1 / 1
white-space/full-width-leading-spaces-003.htmlPass1 / 1
white-space/full-width-leading-spaces-004.htmlPass1 / 1
white-space/full-width-leading-spaces-005.htmlPass1 / 1
white-space/hanging-whitespace-001.tentative.htmlPass1 / 1
white-space/hanging-whitespace-002.tentative.htmlPass1 / 1
white-space/hanging-whitespace-003.tentative.htmlPass1 / 1
white-space/hanging-whitespace-004.htmlPass1 / 1
white-space/hanging-whitespace-005.htmlPass1 / 1
white-space/line-edge-white-space-collapse-001.htmlPass1 / 1
white-space/line-edge-white-space-collapse-002.htmlPass1 / 1
white-space/lone-cr-001.tentative.htmlPass1 / 1
white-space/object-replacement-1.htmlPass1 / 1
white-space/object-replacement-2.htmlPass1 / 1
white-space/pre-001.htmlPass1 / 1
white-space/pre-float-001.htmlPass1 / 1
white-space/pre-line-051.htmlPass1 / 1
white-space/pre-line-052.htmlPass1 / 1
white-space/pre-line-with-space-and-newline.htmlPass1 / 1
white-space/pre-wrap-001.htmlPass1 / 1
white-space/pre-wrap-002.htmlPass1 / 1
white-space/pre-wrap-003.htmlPass1 / 1
white-space/pre-wrap-004.htmlPass1 / 1
white-space/pre-wrap-005.htmlPass1 / 1
white-space/pre-wrap-006.htmlPass1 / 1
white-space/pre-wrap-007.htmlPass1 / 1
white-space/pre-wrap-008.htmlPass1 / 1
white-space/pre-wrap-009.htmlPass1 / 1
white-space/pre-wrap-010.htmlPass1 / 1
white-space/pre-wrap-011.htmlPass1 / 1
white-space/pre-wrap-012.htmlPass1 / 1
white-space/pre-wrap-013.htmlPass1 / 1
white-space/pre-wrap-014.htmlPass1 / 1
white-space/pre-wrap-015.htmlPass1 / 1
white-space/pre-wrap-016.htmlPass1 / 1
white-space/pre-wrap-017.htmlPass1 / 1
white-space/pre-wrap-018.htmlPass1 / 1
white-space/pre-wrap-019.htmlPass1 / 1
white-space/pre-wrap-020.htmlPass1 / 1
white-space/pre-wrap-051.htmlPass1 / 1
white-space/pre-wrap-052.htmlPass1 / 1
white-space/pre-wrap-align-center-001.htmlPass1 / 1
white-space/pre-wrap-align-center-002.htmlPass1 / 1
white-space/pre-wrap-align-center-003.htmlPass1 / 1
white-space/pre-wrap-align-end-001.htmlPass1 / 1
white-space/pre-wrap-align-end-002.htmlPass1 / 1
white-space/pre-wrap-align-end-003.htmlPass1 / 1
white-space/pre-wrap-align-left-001.htmlPass1 / 1
white-space/pre-wrap-align-left-002.htmlPass1 / 1
white-space/pre-wrap-align-left-003.htmlPass1 / 1
white-space/pre-wrap-align-right-001.htmlPass1 / 1
white-space/pre-wrap-align-right-002.htmlPass1 / 1
white-space/pre-wrap-align-right-003.htmlPass1 / 1
white-space/pre-wrap-align-start-001.htmlPass1 / 1
white-space/pre-wrap-align-start-002.htmlPass1 / 1
white-space/pre-wrap-align-start-003.htmlPass1 / 1
white-space/pre-wrap-float-001.htmlPass1 / 1
white-space/pre-wrap-leading-spaces-001.htmlPass1 / 1
white-space/pre-wrap-leading-spaces-002.htmlPass1 / 1
white-space/pre-wrap-leading-spaces-003.htmlPass1 / 1
white-space/pre-wrap-leading-spaces-004.htmlPass1 / 1
white-space/pre-wrap-leading-spaces-005.htmlPass1 / 1
white-space/pre-wrap-leading-spaces-006.htmlPass1 / 1
white-space/pre-wrap-leading-spaces-007.htmlPass1 / 1
white-space/pre-wrap-leading-spaces-008.htmlPass1 / 1
white-space/pre-wrap-leading-spaces-009.htmlPass1 / 1
white-space/pre-wrap-leading-spaces-010.htmlPass1 / 1
white-space/pre-wrap-leading-spaces-011.htmlPass1 / 1
white-space/pre-wrap-leading-spaces-012.htmlPass1 / 1
white-space/pre-wrap-leading-spaces-013.htmlPass1 / 1
white-space/pre-wrap-leading-spaces-014.htmlPass1 / 1
white-space/pre-wrap-leading-spaces-015.htmlPass1 / 1
white-space/pre-wrap-leading-spaces-016.htmlPass1 / 1
white-space/pre-wrap-leading-spaces-017.htmlPass1 / 1
white-space/pre-wrap-tab-001.htmlPass1 / 1
white-space/pre-wrap-tab-002.htmlPass1 / 1
white-space/pre-wrap-tab-003.htmlPass1 / 1
white-space/pre-wrap-tab-004.htmlPass1 / 1
white-space/pre-wrap-tab-005.htmlPass1 / 1
white-space/pre-wrap-tab-006.htmlPass1 / 1
white-space/remove-slotted-with-whitespace-sibling.htmlPass1 / 1
white-space/seg-break-transformation-018.tentative.htmlPass1 / 1
white-space/seg-break-transformation-019.tentative.htmlPass1 / 1
white-space/tab-bidi-001.htmlPass1 / 1
white-space/tab-position-with-text-align.htmlPass1 / 1
white-space/tab-stop-threshold-001.htmlPass1 / 1
white-space/tab-stop-threshold-002.htmlPass1 / 1
white-space/tab-stop-threshold-003.htmlPass1 / 1
white-space/tab-stop-threshold-004.htmlPass1 / 1
white-space/tab-stop-threshold-005.htmlPass1 / 1
white-space/tab-stop-threshold-006.htmlPass1 / 1
white-space/tab-stop-threshold-007.htmlPass1 / 1
white-space/tab-stop-with-float-001.htmlPass2 / 2
white-space/text-wrap-balance-002.htmlPass1 / 1
white-space/text-wrap-balance-003.htmlPass1 / 1
white-space/text-wrap-balance-004.htmlPass1 / 1
white-space/text-wrap-balance-005.htmlPass1 / 1
white-space/text-wrap-balance-align-001.htmlPass1 / 1
white-space/text-wrap-balance-before-after-001.htmlPass1 / 1
white-space/text-wrap-balance-before-after-002.htmlPass1 / 1
white-space/text-wrap-balance-dynamic-001.htmlPass1 / 1
white-space/text-wrap-balance-float-001.htmlPass1 / 1
white-space/text-wrap-balance-float-002.htmlPass1 / 1
white-space/text-wrap-balance-float-003.htmlPass1 / 1
white-space/text-wrap-balance-float-004.htmlPass1 / 1
white-space/text-wrap-balance-float-005.htmlPass1 / 1
white-space/text-wrap-balance-float-006.htmlPass1 / 1
white-space/text-wrap-balance-line-clamp-001.htmlPass1 / 1
white-space/text-wrap-balance-line-clamp-002.htmlPass1 / 1
white-space/text-wrap-balance-line-clamp-003.htmlPass1 / 1
white-space/text-wrap-balance-line-clamp-004.htmlPass1 / 1
white-space/text-wrap-balance-line-clamp-005.htmlFail0 / 1BUGthe margin box of the boxes starts at 15.8px (8px + 1ch of the 13px monospace font), so their content starts at 18.8px while their 3px borders are painted on whole pixels (16px to 19px); the I of Cousine, drawn from 18.8px, covers 8% of the last pixel of the border in the reference, where the overflow: hidden of the test clips it at the pixel-snapped padding edge (19px): 1 pixel differs (Chrome and Firefox, which pass, round the glyph origins to whole pixels or use a font whose ink does not reach the border); a fix needs either glyph origins on whole pixels or clips that are not pixel-snapped, both of which change many other tests
white-space/text-wrap-balance-line-clamp-006.htmlPass1 / 1
white-space/text-wrap-balance-line-clamp-007.htmlPass1 / 1
white-space/text-wrap-balance-overflow-001.htmlPass1 / 1
white-space/text-wrap-balance-overflow-002.htmlPass1 / 1
white-space/text-wrap-balance-text-indent-001.htmlPass1 / 1
white-space/text-wrap-balance-word-spacing-001.htmlPass1 / 1
white-space/text-wrap-nowrap-001.htmlPass1 / 1
white-space/textarea-always-preserves-spaces-001.tentative.htmlPass1 / 1
white-space/textarea-break-spaces-001.htmlPass1 / 1
white-space/textarea-break-spaces-002.htmlPass1 / 1
white-space/textarea-pre-wrap-001.htmlPass1 / 1
white-space/textarea-pre-wrap-002.htmlPass1 / 1
white-space/textarea-pre-wrap-003.htmlPass1 / 1
white-space/textarea-pre-wrap-004.htmlPass1 / 1
white-space/textarea-pre-wrap-005.htmlPass1 / 1
white-space/textarea-pre-wrap-006.htmlPass1 / 1
white-space/textarea-pre-wrap-007.htmlPass1 / 1
white-space/textarea-pre-wrap-011.htmlPass1 / 1
white-space/textarea-pre-wrap-012.htmlFail0 / 1TEST BUGexpects the spaces before the forced line breaks of the value (XX \nXX , lines of 3ch in a box of 3ch) to hang, so that the right-aligned XX are at the end edge; a preserved space followed by a forced line break hangs conditionally (css-text-3: only when it does not fit), so the lines fill the box and XX stay at its start edge; fails in every browser
white-space/textarea-pre-wrap-013.htmlPass1 / 1
white-space/textarea-pre-wrap-014.htmlPass1 / 1
white-space/trailing-ideographic-space-001.htmlPass1 / 1
white-space/trailing-ideographic-space-002.htmlPass1 / 1
white-space/trailing-ideographic-space-003.htmlPass1 / 1
white-space/trailing-ideographic-space-004.htmlPass1 / 1
white-space/trailing-ideographic-space-005.htmlPass1 / 1
white-space/trailing-ideographic-space-006.htmlPass1 / 1
white-space/trailing-ideographic-space-007.htmlPass1 / 1
white-space/trailing-ideographic-space-008.htmlPass1 / 1
white-space/trailing-ideographic-space-009.htmlPass1 / 1
white-space/trailing-ideographic-space-010.htmlPass1 / 1
white-space/trailing-ideographic-space-011.htmlPass1 / 1
white-space/trailing-ideographic-space-012.htmlPass1 / 1
white-space/trailing-ideographic-space-013.htmlPass1 / 1
white-space/trailing-ideographic-space-014.htmlPass1 / 1
white-space/trailing-ideographic-space-015.htmlPass1 / 1
white-space/trailing-ideographic-space-016.htmlPass1 / 1
white-space/trailing-ideographic-space-017.htmlPass1 / 1
white-space/trailing-ideographic-space-018.htmlPass1 / 1
white-space/trailing-ideographic-space-019.htmlPass1 / 1
white-space/trailing-ideographic-space-020.htmlPass1 / 1
white-space/trailing-ideographic-space-021.htmlPass1 / 1
white-space/trailing-ideographic-space-022.htmlPass1 / 1
white-space/trailing-ideographic-space-023.htmlPass1 / 1
white-space/trailing-ideographic-space-024.htmlPass1 / 1
white-space/trailing-ideographic-space-025.htmlPass1 / 1
white-space/trailing-ideographic-space-break-spaces-001.htmlPass1 / 1
white-space/trailing-ideographic-space-break-spaces-002.htmlPass1 / 1
white-space/trailing-ideographic-space-break-spaces-003.htmlPass1 / 1
white-space/trailing-ideographic-space-break-spaces-004.htmlPass1 / 1
white-space/trailing-ideographic-space-break-spaces-005.htmlPass1 / 1
white-space/trailing-ideographic-space-break-spaces-006.htmlPass1 / 1
white-space/trailing-ideographic-space-break-spaces-007.htmlPass1 / 1
white-space/trailing-ideographic-space-break-spaces-008.htmlPass1 / 1
white-space/trailing-ogham-001.htmlPass1 / 1
white-space/trailing-ogham-002.htmlPass1 / 1
white-space/trailing-ogham-003.htmlPass1 / 1
white-space/trailing-other-space-separators-001.htmlFail0 / 1TEST BUGthe hanging sequence of spaces and other space separators is as wide as the one preserved by white-space: pre, but the test expects the background of its inline box (its content area) to fit in the line box of line-height: 1: the content area of the default font is 17px high at 16px (its ascent and descent), so the half-leading is -0.5px, floored as in Blink, and the background of the span covers the row of pixels above the line, where the reference has none (fails in every browser)
white-space/trailing-other-space-separators-002.htmlPass1 / 1
white-space/trailing-other-space-separators-003.htmlFail0 / 1TEST BUGthe hanging sequence of spaces and other space separators is as wide as the one preserved by white-space: pre, but the test expects the background of its inline box (its content area) to fit in the line box of line-height: 1: the content area of the default font is 17px high at 16px (its ascent and descent), so the half-leading is -0.5px, floored as in Blink, and the background of the span covers the row of pixels above the line, where the reference has none (fails in every browser)
white-space/trailing-other-space-separators-004.htmlFail0 / 1TEST BUGthe hanging sequence of spaces and other space separators is as wide as the one preserved by white-space: pre, but the test expects the background of its inline box (its content area) to fit in the line box of line-height: 1: the content area of the default font is 17px high at 16px (its ascent and descent), so the half-leading is -0.5px, floored as in Blink, and the background of the span covers the row of pixels above the line, where the reference has none (fails in every browser)
white-space/trailing-other-space-separators-break-spaces-001.htmlPass1 / 1
white-space/trailing-other-space-separators-break-spaces-002.htmlPass1 / 1
white-space/trailing-other-space-separators-break-spaces-003.htmlPass1 / 1
white-space/trailing-other-space-separators-break-spaces-004.htmlPass1 / 1
white-space/trailing-other-space-separators-break-spaces-005.htmlPass1 / 1
white-space/trailing-other-space-separators-break-spaces-006.htmlPass1 / 1
white-space/trailing-other-space-separators-break-spaces-007.htmlPass1 / 1
white-space/trailing-other-space-separators-break-spaces-008.htmlPass1 / 1
white-space/trailing-other-space-separators-break-spaces-009.htmlPass1 / 1
white-space/trailing-other-space-separators-break-spaces-010.htmlPass1 / 1
white-space/trailing-other-space-separators-break-spaces-011.htmlPass1 / 1
white-space/trailing-other-space-separators-break-spaces-012.htmlPass1 / 1
white-space/trailing-other-space-separators-break-spaces-013.htmlPass1 / 1
white-space/trailing-other-space-separators-break-spaces-014.htmlPass1 / 1
white-space/trailing-other-space-separators-break-spaces-015.htmlPass1 / 1
white-space/trailing-space-align-start.tentative.htmlPass1 / 1
white-space/trailing-space-and-text-alignment-001.htmlPass1 / 1
white-space/trailing-space-and-text-alignment-002.htmlPass1 / 1
white-space/trailing-space-and-text-alignment-003.htmlPass1 / 1
white-space/trailing-space-and-text-alignment-004.htmlPass1 / 1
white-space/trailing-space-and-text-alignment-005.htmlPass1 / 1
white-space/trailing-space-and-text-alignment-rtl-001.htmlPass1 / 1
white-space/trailing-space-and-text-alignment-rtl-002.htmlPass1 / 1
white-space/trailing-space-and-text-alignment-rtl-003.htmlPass1 / 1
white-space/trailing-space-and-text-alignment-rtl-004.htmlPass1 / 1
white-space/trailing-space-and-text-alignment-rtl-005.htmlPass1 / 1
white-space/trailing-space-rtl-001.htmlPass1 / 1
white-space/white-space-applies-to-text-001.htmlPass1 / 1
white-space/white-space-collapse-discard-001.xhtPass1 / 1
white-space/white-space-collapse-preserve-breaks-001.xhtFail0 / 1TEST BUGthe segment break at the start of the span is preserved by white-space-collapse: preserve-breaks as a forced line break (an empty first line); the reference has no such line (fails in every browser)
white-space/white-space-empty-text-sibling.htmlPass1 / 1
white-space/white-space-intrinsic-size-001.htmlPass1 / 1
white-space/white-space-intrinsic-size-002.htmlPass1 / 1
white-space/white-space-intrinsic-size-003.htmlPass1 / 1
white-space/white-space-intrinsic-size-004.htmlPass1 / 1
white-space/white-space-intrinsic-size-005.htmlPass1 / 1
white-space/white-space-intrinsic-size-006.htmlPass1 / 1
white-space/white-space-intrinsic-size-013.htmlPass1 / 1
white-space/white-space-intrinsic-size-014.htmlPass1 / 1
white-space/white-space-intrinsic-size-015.htmlPass1 / 1
white-space/white-space-intrinsic-size-016.htmlPass1 / 1
white-space/white-space-intrinsic-size-017.htmlPass1 / 1
white-space/white-space-intrinsic-size-018.htmlPass1 / 1
white-space/white-space-intrinsic-size-019.htmlPass1 / 1
white-space/white-space-intrinsic-size-020.htmlPass1 / 1
white-space/white-space-intrinsic-size-022.htmlPass1 / 1
white-space/white-space-intrinsic-size-023.htmlPass1 / 1
white-space/white-space-intrinsic-size-024.htmlPass1 / 1
white-space/white-space-intrinsic-size-025.htmlPass1 / 1
white-space/white-space-letter-spacing-001.htmlPass1 / 1
white-space/white-space-normal-011.htmlPass1 / 1
white-space/white-space-nowrap-011.htmlPass1 / 1
white-space/white-space-pre-011.htmlPass1 / 1
white-space/white-space-pre-031.htmlPass1 / 1
white-space/white-space-pre-032.htmlPass1 / 1
white-space/white-space-pre-034.htmlPass1 / 1
white-space/white-space-pre-035.htmlPass1 / 1
white-space/white-space-pre-051.htmlPass1 / 1
white-space/white-space-pre-052.htmlPass1 / 1
white-space/white-space-pre-wrap-justify-001.htmlPass1 / 1
white-space/white-space-pre-wrap-justify-002.htmlPass1 / 1
white-space/white-space-pre-wrap-justify-003.htmlPass1 / 1
white-space/white-space-pre-wrap-justify-004.htmlPass1 / 1
white-space/white-space-pre-wrap-justify-005.htmlPass1 / 1
white-space/white-space-pre-wrap-trailing-spaces-001.htmlPass1 / 1
white-space/white-space-pre-wrap-trailing-spaces-002.htmlPass1 / 1
white-space/white-space-pre-wrap-trailing-spaces-003.htmlPass1 / 1
white-space/white-space-pre-wrap-trailing-spaces-004.htmlPass1 / 1
white-space/white-space-pre-wrap-trailing-spaces-005.htmlPass1 / 1
white-space/white-space-pre-wrap-trailing-spaces-006.htmlPass1 / 1
white-space/white-space-pre-wrap-trailing-spaces-007.htmlPass1 / 1
white-space/white-space-pre-wrap-trailing-spaces-008.htmlPass1 / 1
white-space/white-space-pre-wrap-trailing-spaces-010.htmlPass1 / 1
white-space/white-space-pre-wrap-trailing-spaces-011.htmlPass1 / 1
white-space/white-space-pre-wrap-trailing-spaces-012.htmlPass1 / 1
white-space/white-space-pre-wrap-trailing-spaces-013.htmlPass1 / 1
white-space/white-space-pre-wrap-trailing-spaces-014.htmlPass1 / 1
white-space/white-space-pre-wrap-trailing-spaces-015.htmlPass1 / 1
white-space/white-space-pre-wrap-trailing-spaces-021.htmlPass1 / 1
white-space/white-space-pre-wrap-trailing-spaces-022.htmlPass1 / 1
white-space/white-space-pre-wrap-trailing-spaces-023.htmlPass1 / 1
white-space/white-space-trim-atomic-inline.htmlPass1 / 1
white-space/white-space-trim-block-in-inline.htmlPass1 / 1
white-space/white-space-trim-break-spaces.htmlPass1 / 1
white-space/white-space-trim-content.htmlPass1 / 1
white-space/white-space-trim-discard-after.htmlPass1 / 1
white-space/white-space-trim-discard-before-after.htmlPass1 / 1
white-space/white-space-trim-discard-before.htmlPass1 / 1
white-space/white-space-trim-discard-inner-001.xhtFail0 / 1TEST BUGthe test colors all the text of its div elements in blue (div { color: Blue; }), the reference only the span elements (span { color: Blue; }): the brackets are blue in the test and black in the reference (the positions of all the glyphs match); fails in every browser
white-space/white-space-trim-discard-inner.htmlPass1 / 1
white-space/white-space-trim-dynamic.htmlPass1 / 1
white-space/white-space-trim-generated-content.htmlPass1 / 1
white-space/white-space-trim-inline-block-dynamic.htmlPass1 / 1
white-space/white-space-trim-inline-block.htmlPass1 / 1
white-space/white-space-trim-interaction.htmlPass1 / 1
white-space/white-space-trim-nested.htmlPass1 / 1
white-space/white-space-trim-rtl.htmlPass1 / 1
white-space/white-space-trim-white-space.htmlPass1 / 1
white-space/white-space-trim-wrap.htmlPass1 / 1
white-space/white-space-vs-joiners-001.htmlPass1 / 1
white-space/white-space-vs-joiners-002.htmlPass1 / 1
white-space/white-space-wrap-after-nowrap-001.htmlPass1 / 1
white-space/white-space-zero-fontsize-001.htmlPass1 / 1
white-space/white-space-zero-fontsize-002.htmlPass1 / 1
white-space/ws-break-spaces-applies-to-001.htmlPass1 / 1
white-space/ws-break-spaces-applies-to-002.htmlPass1 / 1
white-space/ws-break-spaces-applies-to-003.htmlPass1 / 1
white-space/ws-break-spaces-applies-to-005.htmlPass1 / 1
white-space/ws-break-spaces-applies-to-006.htmlPass1 / 1
white-space/ws-break-spaces-applies-to-007.htmlPass1 / 1
white-space/ws-break-spaces-applies-to-008.htmlPass1 / 1
white-space/ws-break-spaces-applies-to-009.htmlPass1 / 1
white-space/ws-break-spaces-applies-to-010.htmlPass1 / 1
white-space/ws-break-spaces-applies-to-011.htmlPass1 / 1
white-space/ws-break-spaces-applies-to-012.htmlPass1 / 1
white-space/ws-break-spaces-applies-to-013.htmlPass1 / 1
white-space/ws-break-spaces-applies-to-014.htmlPass1 / 1
white-space/ws-break-spaces-applies-to-015.htmlPass1 / 1
word-break/auto-phrase/word-break-auto-phrase-001.htmlPass1 / 1
word-break/auto-phrase/word-break-auto-phrase-002.htmlPass1 / 1
word-break/auto-phrase/word-break-auto-phrase-003.htmlPass1 / 1
word-break/auto-phrase/word-break-auto-phrase-004.htmlPass1 / 1
word-break/auto-phrase/word-break-auto-phrase-005.htmlPass1 / 1
word-break/auto-phrase/word-break-auto-phrase-006.htmlPass1 / 1
word-break/auto-phrase/word-break-auto-phrase-007.htmlPass1 / 1
word-break/auto-phrase/word-break-auto-phrase-008.htmlPass1 / 1
word-break/auto-phrase/word-break-auto-phrase-009.htmlPass1 / 1
word-break/auto-phrase/word-break-auto-phrase-fallback-001.htmlPass1 / 1
word-break/auto-phrase/word-break-auto-phrase-fallback-002.htmlPass1 / 1
word-break/auto-phrase/word-break-auto-phrase-fallback-003.htmlPass1 / 1
word-break/auto-phrase/word-break-auto-phrase-intrinsic-001.htmlPass1 / 1
word-break/auto-phrase/word-break-auto-phrase-overflow-001.htmlPass1 / 1
word-break/auto-phrase/word-break-auto-phrase-wbr-nobr-001.htmlPass1 / 1
word-break/auto-phrase/word-break-auto-phrase-wbr-nobr-002.htmlPass1 / 1
word-break/break-boundary-2-chars-001.htmlPass1 / 1
word-break/break-boundary-2-chars-002.htmlPass1 / 1
word-break/word-break-break-all-000.htmlPass1 / 1
word-break/word-break-break-all-001.htmlPass1 / 1
word-break/word-break-break-all-002.htmlPass1 / 1
word-break/word-break-break-all-003.htmlPass1 / 1
word-break/word-break-break-all-004.htmlPass1 / 1
word-break/word-break-break-all-005.htmlPass1 / 1
word-break/word-break-break-all-006.htmlPass1 / 1
word-break/word-break-break-all-007.htmlPass1 / 1
word-break/word-break-break-all-008.htmlPass1 / 1
word-break/word-break-break-all-010.htmlPass1 / 1
word-break/word-break-break-all-011.htmlPass1 / 1
word-break/word-break-break-all-012.htmlPass1 / 1
word-break/word-break-break-all-013.htmlPass1 / 1
word-break/word-break-break-all-014.htmlPass1 / 1
word-break/word-break-break-all-015.htmlPass1 / 1
word-break/word-break-break-all-016.htmlPass1 / 1
word-break/word-break-break-all-017.htmlPass1 / 1
word-break/word-break-break-all-018.htmlPass1 / 1
word-break/word-break-break-all-019.htmlPass1 / 1
word-break/word-break-break-all-020.htmlPass1 / 1
word-break/word-break-break-all-021.htmlPass1 / 1
word-break/word-break-break-all-022.htmlPass1 / 1
word-break/word-break-break-all-023.htmlFail0 / 1TEST BUGthe test expects no soft wrap opportunity between two U+005C REVERSE SOLIDUS (class PR) with word-break: break-all; UAX #14 allows it (rule LB31), so the line is broken after the second one, which fits (passes in Chrome only)
word-break/word-break-break-all-024.htmlPass1 / 1
word-break/word-break-break-all-025.htmlPass1 / 1
word-break/word-break-break-all-026.htmlPass1 / 1
word-break/word-break-break-all-027.htmlPass1 / 1
word-break/word-break-break-all-028.htmlPass1 / 1
word-break/word-break-break-all-029.htmlPass1 / 1
word-break/word-break-break-all-030.htmlPass1 / 1
word-break/word-break-break-all-031.htmlPass1 / 1
word-break/word-break-break-all-032.htmlPass1 / 1
word-break/word-break-break-all-062.htmlPass1 / 1
word-break/word-break-break-all-ethiopic.htmlPass1 / 1
word-break/word-break-break-all-inline-001.htmlPass1 / 1
word-break/word-break-break-all-inline-002.htmlPass1 / 1
word-break/word-break-break-all-inline-003.htmlPass1 / 1
word-break/word-break-break-all-inline-004.tentative.htmlPass1 / 1
word-break/word-break-break-all-inline-005.htmlPass1 / 1
word-break/word-break-break-all-inline-006.htmlPass1 / 1
word-break/word-break-break-all-inline-007.tentative.htmlFail0 / 1TEST BUGthe tentative test expects the boundary between the last character of an inline box with word-break: break-all and the first character after it (b\|c) to have no soft wrap opportunity, where the engine applies break-all to the character before the boundary (b is an ideograph, ID รท AL); "which elements' line-break, word-break, and overflow-wrap properties control the determination of soft wrap opportunities at such boundaries is undefined" (https://drafts.csswg.org/css-text-3/#line-break-details); fails in every browser
word-break/word-break-break-all-inline-008.htmlPass1 / 1
word-break/word-break-break-all-inline-009.htmlPass1 / 1
word-break/word-break-break-all-inline-010.tentative.htmlPass1 / 1
word-break/word-break-break-word-overflow-wrap-interactions.htmlPass1 / 1
word-break/word-break-keep-all-000.htmlPass1 / 1
word-break/word-break-keep-all-001.htmlPass1 / 1
word-break/word-break-keep-all-002.htmlPass1 / 1
word-break/word-break-keep-all-003.htmlPass1 / 1
word-break/word-break-keep-all-005.htmlPass1 / 1
word-break/word-break-keep-all-006.htmlPass1 / 1
word-break/word-break-keep-all-007.htmlPass1 / 1
word-break/word-break-keep-all-008.htmlPass1 / 1
word-break/word-break-keep-all-009.htmlPass1 / 1
word-break/word-break-keep-all-010.htmlPass1 / 1
word-break/word-break-keep-all-011.htmlPass1 / 1
word-break/word-break-keep-all-063.htmlPass1 / 1
word-break/word-break-keep-all-u002d.htmlPass1 / 1
word-break/word-break-manual-001.htmlPass1 / 1
word-break/word-break-min-content-001.htmlPass1 / 1
word-break/word-break-min-content-002.htmlPass1 / 1
word-break/word-break-min-content-003.htmlPass1 / 1
word-break/word-break-min-content-004.htmlPass1 / 1
word-break/word-break-min-content-005.htmlPass1 / 1
word-break/word-break-min-content-006.htmlPass1 / 1
word-break/word-break-min-content-007.htmlPass1 / 1
word-break/word-break-normal-001.htmlPass1 / 1
word-break/word-break-normal-002.htmlPass1 / 1
word-break/word-break-normal-003.htmlPass1 / 1
word-break/word-break-normal-ar-000.htmlPass1 / 1
word-break/word-break-normal-bo-000.htmlPass1 / 1
word-break/word-break-normal-en-000.htmlPass1 / 1
word-break/word-break-normal-ethiopic.htmlPass1 / 1
word-break/word-break-normal-hi-000.htmlPass1 / 1
word-break/word-break-normal-ja-000.htmlPass1 / 1
word-break/word-break-normal-ja-001.htmlPass1 / 1
word-break/word-break-normal-ja-002.htmlPass1 / 1
word-break/word-break-normal-ja-004.htmlPass1 / 1
word-break/word-break-normal-km-000.htmlPass1 / 1
word-break/word-break-normal-ko-000.htmlPass1 / 1
word-break/word-break-normal-lo-000.htmlPass1 / 1
word-break/word-break-normal-my-000.htmlPass1 / 1
word-break/word-break-normal-tdd-000.htmlPass1 / 1
word-break/word-break-normal-th-000.htmlPass1 / 1
word-break/word-break-normal-th-001.htmlPass1 / 1
word-break/word-break-normal-zh-000.htmlPass1 / 1
word-space-transform/word-space-transform-001.htmlPass1 / 1
word-space-transform/word-space-transform-002.htmlPass1 / 1
word-space-transform/word-space-transform-003.htmlFail0 / 1TEST BUGthe test is in two nested div elements with font-size: 2em each (4em), and its reference in one: the ideographic spaces are inserted as expected, but the text of the test is twice as large as the reference (fails in every browser)
word-space-transform/word-space-transform-004.htmlPass1 / 1
word-space-transform/word-space-transform-005.htmlPass1 / 1
word-space-transform/word-space-transform-006.htmlPass1 / 1
word-space-transform/word-space-transform-007.htmlFail0 / 1TEST BUGthe reference expects the spaces inserted by word-space-transform: space to collapse with the collapsible spaces next to them and with each other (one space between the letters); the transformation happens "after Phase I: Collapsing and Transformation" (https://drafts.csswg.org/css-text-4/#text-transform-order) and the assert of the test says that the "inserted spaces don't collapse with adjacent ones": a<wbr> b has two spaces (fails in every browser, none implements the property)
word-space-transform/word-space-transform-008.htmlPass1 / 1
word-space-transform/word-space-transform-009.htmlFail0 / 1TEST BUGthe test expects a space followed by <wbr> or U+200B, and <wbr> followed by U+200B, to give a single (fullwidth) space: "Word space transformation and text transformation happen after Phase I: Collapsing and Transformation" (https://drafts.csswg.org/css-text-4/#text-transform-order), so the spaces that replace the separators do not collapse with the spaces next to them, as word-space-transform-002.html ("inserted spaces don't collapse with adjacent ones", which this engine passes) requires for the same sequences; no browser implements the property
word-space-transform/word-space-transform-010.htmlPass1 / 1
word-space-transform/word-space-transform-011.htmlPass1 / 1
word-space-transform/word-space-transform-012.htmlPass1 / 1
word-space-transform/word-space-transform-013.htmlPass1 / 1
word-space-transform/word-space-transform-014.htmlPass1 / 1
word-space-transform/word-space-transform-016.htmlPass1 / 1
word-space-transform/word-space-transform-017.htmlFail0 / 1TEST BUGthe declaration of the test is misspelled (word-space-transfor: space auto-phrase), so the property is not set and no space can be inserted between the Thai words as the reference expects (fails in every browser)
word-space-transform/word-space-transform-018.htmlPass1 / 1
word-space-transform/word-space-transform-019.htmlPass1 / 1
word-space-transform/word-space-transform-020.htmlPass1 / 1
word-space-transform/word-space-transform-021.htmlPass1 / 1
word-space-transform/word-space-transform-022.htmlPass1 / 1
word-space-transform/word-space-transform-023.htmlPass1 / 1
word-space-transform/word-space-transform-024.htmlPass1 / 1
word-space-transform/word-space-transform-025.htmlPass1 / 1
word-space-transform/word-space-transform-026.htmlPass1 / 1
word-space-transform/word-space-transform-027.htmlPass1 / 1
word-space-transform/word-space-transform-028.htmlPass1 / 1
word-space-transform/word-space-transform-029.htmlPass1 / 1
word-space-transform/word-space-transform-030.htmlPass1 / 1
word-spacing/word-spacing-001.htmlPass1 / 1
word-spacing/word-spacing-002.htmlPass1 / 1
word-spacing/word-spacing-003.htmlPass1 / 1
word-spacing/word-spacing-animating-font-size.htmlPass1 / 1
word-spacing/word-spacing-animating-word-spacing.htmlPass1 / 1
word-spacing/word-spacing-combining-mark-001.htmlPass1 / 1
word-spacing/word-spacing-combining-mark-002.htmlPass1 / 1
word-spacing/word-spacing-negative-value-001.htmlPass1 / 1
word-spacing/word-spacing-percent-001.htmlPass1 / 1
wrap-inside/wrap-inside-auto.htmlPass1 / 1
wrap-inside/wrap-inside-avoid-block-child.htmlPass1 / 1
wrap-inside/wrap-inside-avoid-break-all.htmlPass1 / 1
wrap-inside/wrap-inside-avoid-break-before-then-inside.htmlPass1 / 1
wrap-inside/wrap-inside-avoid-dynamic.htmlPass1 / 1
wrap-inside/wrap-inside-avoid-forced-break.htmlPass1 / 1
wrap-inside/wrap-inside-avoid-inline-block-child.htmlPass1 / 1
wrap-inside/wrap-inside-avoid-inline-flex-child.htmlPass1 / 1
wrap-inside/wrap-inside-avoid-inline-grid-child.htmlPass1 / 1
wrap-inside/wrap-inside-avoid-inline-table-child.htmlPass1 / 1
wrap-inside/wrap-inside-avoid-keeps-box-together.htmlPass1 / 1
wrap-inside/wrap-inside-avoid-last-resort.htmlPass1 / 1
wrap-inside/wrap-inside-avoid-line-break-anywhere.htmlPass1 / 1
wrap-inside/wrap-inside-avoid-nested-auto.htmlPass1 / 1
wrap-inside/wrap-inside-avoid-nested-deep.htmlPass1 / 1
wrap-inside/wrap-inside-avoid-nested-only.htmlPass1 / 1
wrap-inside/wrap-inside-avoid-nested.htmlPass1 / 1
wrap-inside/wrap-inside-avoid-nowrap-child.htmlPass1 / 1
wrap-inside/wrap-inside-avoid-nowrap.htmlPass1 / 1
wrap-inside/wrap-inside-avoid-overflow-wrap.htmlPass1 / 1
wrap-inside/wrap-inside-avoid-removed-dynamic.htmlPass1 / 1
wrap-inside/wrap-inside-avoid-siblings.htmlPass1 / 1
wrap-inside/wrap-inside-avoid-single-word.htmlPass1 / 1
writing-system/writing-system-font-001.htmlPass1 / 1
writing-system/writing-system-line-break-001.htmlPass1 / 1
writing-system/writing-system-line-break-002.htmlPass1 / 1
writing-system/writing-system-segment-break-001.htmlPass1 / 1
writing-system/writing-system-text-transform-001.htmlPass1 / 1
zwnj-renders-invisible.htmlPass1 / 1