-
Notifications
You must be signed in to change notification settings - Fork 199
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
<select multiple> usability improvement suggestions #113
Comments
Thanks @aleventhal - I greatly appreciate you raising this. I'll work out a PR on a multiple section. |
@smhigley as discussed - it would be cool if you could help with the research on this |
There hasn't been any discussion on this issue for a while, so we're marking it as stale. If you choose to kick off the discussion again, we'll remove the 'stale' label. |
+Nicole Sullivan ***@***.***>
…On Sat, Mar 19, 2022 at 8:34 PM github-actions[bot] < ***@***.***> wrote:
There hasn't been any discussion on this issue for a while, so we're
marking it as stale. If you choose to kick off the discussion again, we'll
remove the 'stale' label.
—
Reply to this email directly, view it on GitHub
<#113 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAKQAZRFMP5HLTBUOHSJQILVAZW7ZANCNFSM4OCAST7Q>
.
Triage notifications on the go with GitHub Mobile for iOS
<https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675>
or Android
<https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
I agree with every single thing in here. select(multiple) need to have checkboxes and marking a row should be as simple as just pressing spacebar (without holding down extra modifier key, the angular material UI is so much better the select(multiple) is so bad that no website use it today. I would like to see it making a comeback and rework the hole select(multiple) |
There hasn't been any discussion on this issue for a while, so we're marking it as stale. If you choose to kick off the discussion again, we'll remove the 'stale' label. |
Is this a recommendation to change the existing |
I find the use of checkboxes a bit weird as these imply tab navigation
while actually they will be navigated with arrow keys. On the other hand,
checkboxes are best to imply multi-selection.
Neil Osman
Accessibility engineer @ accessibility team
…On Tue, Feb 14, 2023 at 3:01 AM Joey Arhar ***@***.***> wrote:
Recommendation
Present <select multiple> as a set of checkboxes like JS widget libraries
tend to do.
Is this a recommendation to change the existing <select> element or to
add a feature to the new <selectmenu> element? If it's for selectmenu
then this issue should probably be merged into #447
<#447> right?
—
Reply to this email directly, view it on GitHub
<#113 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AMBTHV7LURLSX7VMX3OPTELWXLKNFANCNFSM4OCAST7Q>
.
You are receiving this because you are subscribed to this thread.Message
ID: ***@***.***>
|
I think when the are arranged vertically and inside a box that looks like a
listbox, it's more apparent. Especially of the focused item is styled with
a different background color.
It looks like a listbox then, that happens to have checkboxes.
…On Tue, Feb 14, 2023 at 3:29 AM Neil Osmna ***@***.***> wrote:
I find the use of checkboxes a bit weird as these imply tab navigation
while actually they will be navigated with arrow keys. On the other hand,
checkboxes are best to imply multi-selection.
Neil Osman
Accessibility engineer @ accessibility team
On Tue, Feb 14, 2023 at 3:01 AM Joey Arhar ***@***.***> wrote:
> Recommendation
> Present <select multiple> as a set of checkboxes like JS widget libraries
> tend to do.
>
> Is this a recommendation to change the existing <select> element or to
> add a feature to the new <selectmenu> element? If it's for selectmenu
> then this issue should probably be merged into #447
> <#447> right?
>
> —
> Reply to this email directly, view it on GitHub
> <#113 (comment)>,
> or unsubscribe
> <
https://github.com/notifications/unsubscribe-auth/AMBTHV7LURLSX7VMX3OPTELWXLKNFANCNFSM4OCAST7Q
>
> .
> You are receiving this because you are subscribed to this thread.Message
> ID: ***@***.***>
>
—
Reply to this email directly, view it on GitHub
<#113 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAKQAZTFW3ZBID4E7RBHEADWXM65LANCNFSM4OCAST7Q>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
understood that it might not be how people initially think of interacting with checkboxes, but that doesn't mean it shouldn't be considered. see also #487 i quite like the idea of moving over to that sort of model, and I know it'd help a lot of inconsistent UX I've seen in large lists of checkboxes which either don't do anything to help facilitate quicker navigation (e.g., tab key navigates through them all) or arrow keys are implemented for navigating, but there's no programmatic or visible way to know this without guess and check interaction. |
Select multiple was moved to v2 here, so I'm changing the labels: #531 (comment) |
There hasn't been any discussion on this issue for a while, so we're marking it as stale. If you choose to kick off the discussion again, we'll remove the 'stale' label. |
I think that we are definitely going to use checkboxes for multi select |
There hasn't been any discussion on this issue for a while, so we're marking it as stale. If you choose to kick off the discussion again, we'll remove the 'stale' label. |
@josepharhar is this on our radar? I don't think it's stale. It's a real a11y improvement for that control. |
One question I have for this? Should select multiple even be a listbox by default? It is today on desktop but at least in chrome and WebKit on mobile it's a more traditional in page trigger and a popover (like non multiple select). It would imo be good to have these be consistent. Though I recognise the option to have a listbox version (of both) would be good. |
Luke, it might be too big of a change for existing layouts to alter the default, because elements that would previously have had a large height would suddenly be very compressed vertically. On the other hand, adding a checkbox only increases the width a little bit, which the layout is more likely to adapt to (they generally have to because the width of options changes when the language changes). |
You're unfortunately probably right... Though perhaps it's currently so broken it would be acceptable? |
I like that you agree on how broken it is. That gives me hope that we'll
fix it :)
…On Thu, Sep 19, 2024 at 1:28 PM Luke Warlow ***@***.***> wrote:
You're unfortunately probably right... Though perhaps it's currently so
broken it would be acceptable?
I guess maybe we can change it for the appearance: base side of things
even if not the proper default.
—
Reply to this email directly, view it on GitHub
<#113 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAKQAZXOPF66U3EYBNMIVR3ZXMCS5AVCNFSM4OCAST72U5DIOJSWCZC7NNSXTN2JONZXKZKDN5WW2ZLOOQ5TEMZWGE3TQOBTGMZQ>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
@lukewarlow @josepharhar keep me honest but we shouldn't have any compat issues with this since you have to opt-in to this experience with `appearance: base-select°. This frees us up a bunch to finally get the accessibility, performance and UX right. Thank you for weighing in @aleventhal and the stale label just means that it hasn't had discussions in 6 months and forces trialing by chairs and the owner of the issue. |
Would it be out of the question to use checkboxes for <select multiple>
even if appearance:base-select was not used? It's that bad right now.
…On Thu, Sep 19, 2024 at 1:48 PM Greg Whitworth ***@***.***> wrote:
@lukewarlow <https://github.com/lukewarlow> @josepharhar
<https://github.com/josepharhar> keep me honest but we shouldn't have any
compat issues with this since you have to opt-in to this experience with
`appearance: base-select°. This frees us up a bunch to finally get the
accessibility, performance and UX right.
Thank you for weighing in @aleventhal <https://github.com/aleventhal> and
the stale label just means that it hasn't had discussions in 6 months and
forces trialing by chairs and the owner of the issue.
—
Reply to this email directly, view it on GitHub
<#113 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAKQAZWND3NXFYLV2BOONSTZXME73AVCNFSM4OCAST72U5DIOJSWCZC7NNSXTN2JONZXKZKDN5WW2ZLOOQ5TEMZWGE4DEMZRGM3A>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
I personally think it's bad enough and inconsistent enough already (mobile Vs desktop and even the 3 mobile implementations all varying) that we could agree to change it to whatever design we think is best. Just changing how you select the options I think would be fine. And we could probably change (single listbox) to use radio buttons (in lieu of checkboxes) too? |
Radio buttons aren't quite the same in that it can't scroll, and
incremental typing doesn't jump right to an item, no
pageup/pagedown/home/end support either.
…On Thu, Sep 19, 2024 at 3:25 PM Luke Warlow ***@***.***> wrote:
I personally think it's bad enough and inconsistent enough already (mobile
Vs desktop and even the 3 mobile implementations all varying) that we could
agree to change it to whatever design we think is best. Just changing how
you select the options I think would be fine. And we could probably change
(single listbox) to use radio buttons (in lieu of checkboxes) too?
—
Reply to this email directly, view it on GitHub
<#113 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAKQAZQLS72FMP7KFS6YIM3ZXMQMNAVCNFSM4OCAST72U5DIOJSWCZC7NNSXTN2JONZXKZKDN5WW2ZLOOQ5TEMZWGIYDCMZWGI4A>
.
You are receiving this because you were mentioned.Message ID:
<openui/open-ui/issues/113/2362013628 ***@***.***>
|
Changing the appearance:auto select multiple rendering in chromium is something that we can just decide to do because it is not standardized. We certainly should if there aren't significant compat issues, but there probably will be. Only one way to find out though. I agree with Greg that the new appearance:base mode for select multiple will have checkboxes and solve these usability issues, and we don't have to worry about compat in that case because it is a new opt in. I think that it should have a button and a popup just like the appearance:base-select we are implementing now, and I think that adding a size attribute should make it appear in-page without a button for both multiple and single selects. I'm not sure how that will be received by the standards groups though. |
Problem
The
<select multiple>
built into HTML is difficult to use, both for AT (assistive technology) and non-AT users. The reasons for its current design are historical and date back to when the web was copying native Windows widgets from the 90s. There are very good reasons why most websites avoid<select multiple>
, and prefer to use a JS-based widget that presents them as a list of checkboxes instead. Let’s move forward with a modern design.Recommendation
Present
<select multiple>
as a set of checkboxes like JS widget libraries tend to do.The Material List widget provides a good demonstration of this could work, see https://material.angular.io/components/list/overview#selection-lists
Standalone version: https://gxlepjxpdpr.angular.stackblitz.io
What about multiselect comboboxes?
Aka
<select size=”1” multiple>
These currently don’t work in native HTML and must be implemented in JS. While we’re at it, let’s also enable these in browsers. A list of checkboxes works very nicely in a dropdown.
The text was updated successfully, but these errors were encountered: