Skip to content

[css-overflow] Scroll direction of unicode-bidi: plaintext. #13816

@emilio

Description

@emilio

Consider this test-case:

<!doctype html>
<meta charset=utf-8>
<style>
  div,
  input,
  textarea {
    outline: 1px solid;
    background-color: transparent;
    color: inherit;
    width: 200px;
    padding: 0;
    border: 0;
    font: 30px sans-serif;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
    white-space: nowrap;
    unicode-bidi: plaintext;
  }
</style>
<input value="اسماء.شبكة/%20/test/"><br>
<textarea rows="1">اسماء.شبكة/%20/test/</textarea>
<div style="overflow: scroll">
  <span style="display: block; unicode-bidi: inherit;">
    اسماء.شبكة/%20/test/
  </span>
</div>
<div style="overflow: scroll">
  اسماء.شبكة/%20/test/
</div>

As of today:

  • WebKit always treats all these scrollers as ltr (can't scroll at all, or scroll to blank).
  • Blink treats the <input> and last <div> as rtl, but the <textarea> and the first <div> are not scrollable.
  • Gecko treats <input> / <textarea> / the second <div> as rtl, but the first <div> as RTL.

My expectation is that all four things should be scrollable, and this should be a bit better defined.

Right now Gecko does a very simplistic check that effectively doesn't drill through the <span>, causing this issue.

What is Blink doing? What should the spec say?

cc @jfkthame

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions