Source code
Revision control
Copy as Markdown
Other Tools
Test Info:
- This WPT test may be referenced by the following Test IDs:
- /html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-surrounding-run.html - WPT Dashboard Interop Dashboard
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"/>
<title>HTML Test: BDI: neutral to surrounding letters</title>
<link rel="match" href="bdi-neutral-to-surrounding-run-ref.html">
<link rel="author" title="Aharon Lanin" href="mailto:aharon@google.com"/>
<link rel="author" title="HTML5 bidi test WG" href="mailto:html5bidi@googlegroups.com"/>
<meta name="assert" content="
'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."/>
<style>
body{
font-size:2em;
}
.test, .ref {
border: medium solid gray;
width: 400px;
margin: 20px;
}
.comments { display: none; }
</style>
</head>
<body>
<div class="instructions"><p>Test passes if the two boxes below look exactly the same.</p></div>
<div class="comments">
Key to entities used below:
א ... ו - The first six Hebrew letters (strongly RTL).
‭ - The LRO (left-to-right override) formatting character.
‬ - The PDF (pop directional formatting) formatting character; closes LRO.
If the BDI in the test's first DIV were a SPAN, its b would prevent the א and the ב
from forming a single RTL run and thus keep the >s between from being mirrored into <s.
</div>
<div class="test">
<div dir="ltr">א > <bdi>[b]</bdi> > ג...</div>
<div dir="ltr">א > <bdi dir="ltr">[b]</bdi> > ג...</div>
<div dir="ltr">א > <bdi dir="rtl">[b]</bdi> > ג...</div>
<div dir="rtl">a > <bdi>[ב]</bdi> > c...</div>
<div dir="rtl">a > <bdi dir="ltr">[ב]</bdi> > c...</div>
<div dir="rtl">a > <bdi dir="rtl">[ב]</bdi> > c...</div>
</div>
<div class="ref">
<div dir="ltr">‭ג < [b] < א...‬</div>
<div dir="ltr">‭ג < [b] < א...‬</div>
<div dir="ltr">‭ג < [b] < א...‬</div>
<div dir="rtl">‭...a > [ב] > c‬</div>
<div dir="rtl">‭...a > [ב] > c‬</div>
<div dir="rtl">‭...a > [ב] > c‬</div>
</div>
</body>
</html>