To run the test, or to see detailed, per character, results, click on the link in the left-most column. To see detailed results click on a row and look just above the table.
Where the instructions tell you to look for red characters, these characters should be clearly discernable behind the black text of the test – ignore any anti-aliasing 'glow'.
Key: | pass | fail | partially successful |
---|
Updated
These tests check whether browsers correctly handle the bdi
element, to improve handling of bidirectional text in languages such as Arabic, Hebrew, Persian, Thaana, Urdu, etc.
These basic tests check that the bdi
element directionally isolates the text inside from that outside, and that it applies first-strong rules to determine the base direction of the text inside it.
Links to run tests | Assertions | Gecko Firefox | Blink Chrome | Blink Edge | Webkit Safari |
---|---|---|---|---|---|
bdi isolation the-bdi-element-001.html |
The bdi element isolates following numbers from RTL text. | pass | pass | pass | pass |
bdi first-strong the-bdi-element-002.html |
The bdi element applies base direction based on the first strong directional character it contains. | pass | pass | pass | pass |
Spec links for this table: link
These other tests check for edge cases.
Links to run tests | Assertions | Gecko Firefox | Blink Chrome | Blink Opera | Webkit Safari | Legacy Edge | IE |
---|---|---|---|---|---|---|---|
bdi has dir=auto by default the-bdi-element-080.html |
The dir global attribute defaults to auto on this element (it never inherits from the parent element like with other elements). | pass | pass | pass | pass | fail | fail |
BDI: neutral to following number the-bdi-element-081.html |
For the purposes of applying the bidirectional algorithm to the paragraph-level container that a bdi element finds itself within, the bdi element must be treated like a U+FFFC OBJECT REPLACEMENT CHARACTER. | pass | pass | pass | pass | pass | fail |
BDI: neutral when BR the-bdi-element-082.html |
'For the purposes of applying the bidirectional algorithm to the paragraph-level container that a bdi element finds itself within, the bdi element must be treated like a U+FFFC OBJECT REPLACEMENT CHARACTER.' Thus, a BDI containing a BR (which serves as a paragraph break in the content of the BDI) must not serve as a paragraph break in the content around the BDI. | fail | fail | fail | fail | fail | fail |
BDI: neutral when contains LRO or RLO without PDF the-bdi-element-083.html |
For the purposes of applying the bidirectional algorithm to the paragraph-level container that a bdi element finds itself within, the bdi element must be treated like a U+FFFC OBJECT REPLACEMENT CHARACTER. Thus, if a BDI contains LRO or RLO characters lacking a matching PDF, these must not affect the visual ordering of the content outside the BDI. | pass | pass | pass | pass | fail | fail |
BDI: neutral when nested the-bdi-element-084.html |
For the purposes of applying the bidirectional algorithm to the paragraph-level container that a bdi element finds itself within, the bdi element must be treated like a U+FFFC OBJECT REPLACEMENT CHARACTER. This must apply when a BDI is nested within a BDI. | pass | pass | pass | pass | fail | fail |
BDI: neutral when number the-bdi-element-085.html |
'For the purposes of applying the bidirectional algorithm to the paragraph-level container that a bdi element finds itself within, the bdi element must be treated like a U+FFFC OBJECT REPLACEMENT CHARACTER.' | pass | pass | pass | pass | fail | fail |
BDI: paragraph-level container the-bdi-element-086.html |
For the purposes of applying the bidirectional algorithm to the paragraph-level container that a bdi element finds itself within, the bdi element must be treated like a U+FFFC OBJECT REPLACEMENT CHARACTER. Thus, under no circumstances should any part of the content outside a BDI be visually reordered inside the BDI's content. | pass | pass | pass | pass | pass | fail |
BDI: neutral to following letter the-bdi-element-087.html |
For the purposes of applying the bidirectional algorithm to the paragraph-level container that a bdi element finds itself within, the bdi element must be treated like a U+FFFC OBJECT REPLACEMENT CHARACTER. | pass | pass | pass | pass | fail | fail |
BDI: neutral to immediately following letter the-bdi-element-088.html |
For the purposes of applying the bidirectional algorithm to the paragraph-level container that a bdi element finds itself within, the bdi element must be treated like a U+FFFC OBJECT REPLACEMENT CHARACTER. | pass | pass | pass | pass | fail | fail |
BDI: neutral to preceding letter the-bdi-element-089.html |
For the purposes of applying the bidirectional algorithm to the paragraph-level container that a bdi element finds itself within, the bdi element must be treated like a U+FFFC OBJECT REPLACEMENT CHARACTER. | pass | pass | pass | pass | fail | fail |
BDI: neutral to immediately preceding letter the-bdi-element-090.html |
'For the purposes of applying the bidirectional algorithm to the paragraph-level container that a bdi element finds itself within, the bdi element must be treated like a U+FFFC OBJECT REPLACEMENT CHARACTER.' | pass | pass | pass | pass | fail | fail |
BDI: neutral to immediately following number the-bdi-element-091.html |
'For the purposes of applying the bidirectional algorithm to the paragraph-level container that a bdi element finds itself within, the bdi element must be treated like a U+FFFC OBJECT REPLACEMENT CHARACTER.' | pass | pass | pass | pass | fail | fail |
BDI: neutral to surrounding letters the-bdi-element-092.html |
'For the purposes of applying the bidirectional algorithm to the paragraph-level container that a bdi element finds itself within, the bdi element must be treated like a U+FFFC OBJECT REPLACEMENT CHARACTER.' Thus, regardless of its content and its dir attribute (if any), a BDI will not prevent a strongly RTL (or LTR) character preceding it from forming a single directional run with another strongly RTL (LTR) character following it. | pass | pass | pass | pass | fail | fail |
BDI: neutral when wrapped the-bdi-element-093.html |
For the purposes of applying the bidirectional algorithm to the paragraph-level container that a bdi element finds itself within, the bdi element must be treated like a U+FFFC OBJECT REPLACEMENT CHARACTER. Obviously, this should hold even if the BDI's content is wrapped over more than one line. A single character (U+FFFC or otherwise) obviously never gets wrapped over more than one line, but we still expect the part of the content preceding the BDI, if any, that is displayed on the same line as some part of the BDI to be ordered the same as it would be if that part of the BDI were replaced with U+FFFC. Similarly, we expect the part of the content following the BDI, if any, that is displayed on the same line as some part of the BDI to be ordered the same as it would be if that part of the BDI were replaced with U+FFFC. | pass | pass | pass | pass | fail | fail |
BDI: paragraph-level container the-bdi-element-094.html |
For the purposes of applying the bidirectional algorithm to the contents of a bdi element, user agents must treat the element as a paragraph-level container. Thus, under no circumstances should the content outside a BDI affect the visual ordering of the BDI's content. | pass | pass | pass | pass | pass | fail |
BDI: neutral to another BDI the-bdi-element-095.html |
'For the purposes of applying the bidirectional algorithm to the paragraph-level container that a bdi element finds itself within, the bdi element must be treated like a U+FFFC OBJECT REPLACEMENT CHARACTER.' Thus, when a BDIs contains text of the same strong direction as another BDI following it, the two must not form a directional run as would be the case if the BDIs were just SPANs. | pass | pass | pass | pass | fail | fail |
BDI: neutral to another immediately following BDI the-bdi-element-096.html |
'For the purposes of applying the bidirectional algorithm to the paragraph-level container that a bdi element finds itself within, the bdi element must be treated like a U+FFFC OBJECT REPLACEMENT CHARACTER.' Thus, when a BDIs contains text of the same strong direction as another BDI following it, the two must not form a directional run as would be the case if the BDIs were just SPANs, even if the two BDIs are not separated by anything at all. | pass | pass | pass | pass | fail | fail |
Spec links for this table: link