Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Poor level of support for vertical form controls #247

Open
xfq opened this issue Feb 5, 2020 · 9 comments
Open

Poor level of support for vertical form controls #247

xfq opened this issue Feb 5, 2020 · 9 comments
Labels
doc:clreq Used for gap analysis (only) to indicate target document. gap The first comment in this issue is read by the gap-analysis document. i:interaction Forms & user interaction i:writing_mode Writing mode l:zh Chinese p:basic s:hani Chinese script s:jpan Japanese script s:kore Korean script s:mong Mongolian script x:blink Blink needs to fix this. x:clreq This affects the clreq group of languages. x:jpan This affects the jlreq group of languages. x:klreq This affects the klreq group of languages. x:mlreq This affects the mlreq group of languages. x:webkit WebKit needs to fix this.

Comments

@xfq
Copy link
Member

xfq commented Feb 5, 2020

This issue is applicable to languages that can be vertically set, especially Mongolian, since it has no horizontal setting. (Linked from: ChineseJapaneseMongolian)

In vertically set text, form controls should also be oriented vertically, in order to fit into the flow of the content. The following examples show what you'd expect to see for various types of form in vertically set Chinese.

vertical form controls

For more examples see the following. Note, especially, that the sideways direction differs for Mongolian.

JapaneseChineseMongolian

The same vertical orientation needs to be applied to the display of buttons, progress bars, etc.

The GAP

Unfortunately, this is not supported by all browsers, creating difficulties for use of forms in vertical text (especially traditional Mongolian, where reverting to horizontal is not an option).

css-writing-modes Creates an expectation that forms should be rendered vertically, but doesn't specify details for rendering.

Priority

Handling of vertical text in forms is a major gap.

Tests & results

CJK tests:

Interactive test, When vertically-set CJK text contains a textarea element, the control will also be vertical. A preceding label will appear above the top right corner of the textarea box.

Interactive test, When vertically-set CJK text contains a text input element, the control will be vertical. A preceding label will appear above the box.

Interactive test, When vertically-set CJK text contains a select element, the control will be vertical, and multiple options will extend, vertically-set, towards the left.

Blink, Gecko, and WebKit mostly passes all the above tests except for two small problems:

  1. although the initial select control is vertical, the alternative options box is horizontal, and opens to the right.
  2. the label associated with a textarea control appears above the top left corner of the box, rather than top right.

i18n test suite, Forms: vertical-rl and Forms: vertical-lr

Same results as for the previous tests.

Mongolian tests:

Interactive test, When vertically-set Mongolian text contains a textarea element, the control will also be vertical. A preceding label will appear above the top right corner of the textarea box.

Interactive test, When vertically-set Mongolian text contains a text input element, the control will be vertical. A preceding label will appear above the box.

Interactive test, When vertically-set Mongolian text contains a select element, the control will be vertical, and multiple options will extend, vertically-set, towards the left.

The results of these tests are the same as for the CJK tests, except that the label appears to the correct side of a textarea control (because of the change in text direction).

Button tests:

Interactive test, When vertically-set CJK text contains an HTML button element, the control will also be vertical.

Interactive test, When vertically-set Mongolian text contains an HTML button element, the control will also be vertical.

Blink, Gecko, and WebKit pass the test.

Action taken

BlinkWebkit

Outcomes

Gecko, Blink and WebKit now all support vertical form controls. However, most tests show problems with alignment of the form controls.

Select element controls look suited to the vertical text flow in their default presentation, but when selecting an option the options are displayed horizontally. This is, of course, particularly problematic for Mongolian.

@xfq xfq added gap The first comment in this issue is read by the gap-analysis document. doc:clreq Used for gap analysis (only) to indicate target document. p:basic i:writing_mode Writing mode labels Feb 5, 2020
@xfq
Copy link
Member Author

xfq commented Feb 5, 2020

The first comment in this issue contains text that will automatically appear in one or more gap-analysis documents as a subsection with the same title as this issue. Any edits made to that comment will be immediately available in the document. Proposals for changes or discussion of the content can be made in comments below this point.

Relevant gap analysis documents include:
ChineseJapanese • [Korean] • Mongolian

@xfq xfq added the i:interaction Forms & user interaction label Feb 5, 2020
@xfq
Copy link
Member Author

xfq commented Feb 16, 2020

@r12a r12a added x:clreq This affects the clreq group of languages. x:blink Blink needs to fix this. x:jlreq x:webkit WebKit needs to fix this. x:klreq This affects the klreq group of languages. x:mlreq This affects the mlreq group of languages. labels May 11, 2021
@r12a r12a added x:jpan This affects the jlreq group of languages. and removed x:jlreq labels Jun 9, 2021
@r12a
Copy link
Contributor

r12a commented Jun 14, 2021

Updated the description to fit the new template, so that we can progress it through the pipeline. Added some examples.

@xfq
Copy link
Member Author

xfq commented Aug 28, 2023

Updated the link to the WebKit bug.

@r12a
Copy link
Contributor

r12a commented Aug 29, 2023

Updated the template. Added information about Blink now supporting vertical buttons.

@r12a
Copy link
Contributor

r12a commented Aug 29, 2023

Improved the tests & results section, including pointing to real interactive tests.

@xfq
Copy link
Member Author

xfq commented Jan 25, 2024

Chrome will support vertical writing mode for form control elements: https://developer.chrome.com/blog/vertical-form-controls

@xfq
Copy link
Member Author

xfq commented Mar 11, 2024

Starting in Safari 17.4, vertical form controls are supported: https://webkit.org/blog/15063/webkit-features-in-safari-17-4/

@r12a r12a moved this to Browser bug raised in Gap-analysis pipeline Jun 20, 2024
@r12a r12a added s:hani Chinese script l:zh Chinese labels Jun 29, 2024
@r12a r12a added s:jpan Japanese script s:kore Korean script s:mong Mongolian script labels Jul 11, 2024
@r12a
Copy link
Contributor

r12a commented Jul 18, 2024

Starting in Safari 17.4, vertical form controls are supported: https://webkit.org/blog/15063/webkit-features-in-safari-17-4/

Adjustments made to the Outcomes section and to test results.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
doc:clreq Used for gap analysis (only) to indicate target document. gap The first comment in this issue is read by the gap-analysis document. i:interaction Forms & user interaction i:writing_mode Writing mode l:zh Chinese p:basic s:hani Chinese script s:jpan Japanese script s:kore Korean script s:mong Mongolian script x:blink Blink needs to fix this. x:clreq This affects the clreq group of languages. x:jpan This affects the jlreq group of languages. x:klreq This affects the klreq group of languages. x:mlreq This affects the mlreq group of languages. x:webkit WebKit needs to fix this.
Projects
Status: Browser bug raised
Development

No branches or pull requests

2 participants