Material-ui: [Select] Follow material design guidelines

Created on 22 Nov 2019  路  9Comments  路  Source: mui-org/material-ui

  • [x] The issue is present in the latest release.
  • [x] I have searched the issues of this repository and believe that this is not a duplicate.

Current Behavior 馃槸

When you click on a select that is not native, the options appear anchored randomly.

Expected Behavior 馃

clicking on a select should expand the list op options attached to the bottom of the input as in material design guidelines e.g.
https://material-components.github.io/material-components-web-catalog/#/component/select

Steps to Reproduce 馃暪

Click on any material-ui select
https://material-ui.com/components/selects/

Steps:

  1. click on a non-native select
    2.
    3.
    4.

Context 馃敠

I am trying to comply with material design guidelines

Your Environment 馃寧

| Tech | Version |
| ----------- | ------- |
| Material-UI | v4.?.? |
| React | |
| Browser | |
| TypeScript | |
| etc. | |

Select material design

Most helpful comment

@eps1lon I think we have good example here https://material.io/components/menus/menus.html#exposed-dropdown-menu

All 9 comments

I am trying to comply with material design guidelines

Could you link to a page on material.io showing how Selects open? The link you provided uses a reference implementation that is (as are we sometimes) not always following the latest guidelines.

I would say the reference implementation should be used as a reference

I think the spec should be used as a reference. Material components web sometimes don't follow the guidelines either.

I would say the reference implementation should be used as a reference

I think the spec should be used as a reference. Material components web sometimes don't follow the guidelines either.

can you provide a link to a spec that includes specific components? the only one i can find is above

can you provide a link to a spec that includes specific components?

https://material-ui.com/getting-started/supported-components/#supported-components

With regards to Select I don't have any which is why I asked you.

can you provide a link to a spec that includes specific components?

https://material-ui.com/getting-started/supported-components/#supported-components

With regards to Select I don't have any which is why I asked you.

see above

having the options randomly floating away from the input and sometimes obscuring it is problematic

@eps1lon I think we have good example here https://material.io/components/menus/menus.html#exposed-dropdown-menu

random places

@peterchq The position of the select is not random. It's positioned so the selected value displays on top of the closed select state. This behavior can be found on native platforms, like macOS or Windows Edge.

macOS Chrome, Safari

Capture d鈥檈虂cran 2019-11-23 a虁 11 31 04
Capture d鈥檈虂cran 2019-11-23 a虁 11 30 58

Windows Edge

Capture d鈥檈虂cran 2019-11-23 a虁 11 33 50
Capture d鈥檈虂cran 2019-11-23 a虁 11 33 45

Windows FireFox, Chrome

Capture d鈥檈虂cran 2019-11-23 a虁 11 32 59
Capture d鈥檈虂cran 2019-11-23 a虁 11 33 36

I think the spec should be used as a reference. Material components web sometimes don't follow the guidelines either.

@una encourages to refer to material components web when in doubt. But I tend to agree with @eps1lon. It should be significantly simpler to author visual mockups than HTML + JS + CSS, from this perspective, I think that following the visual of material.io should be preferred.

I am trying to comply with material design guidelines

We have started a similar thread in https://github.com/mui-org/material-ui/issues/18136#issuecomment-549059199 and https://github.com/mui-org/material-ui/issues/17636#issuecomment-536716503 and #15055.

Capture d鈥檈虂cran 2019-11-23 a虁 11 45 15
link


I have run a benchmark on some design system to compare what's more popular:

  • appears over: Vuetify, Material-UI, Angular Material
  • appears under: antd (select), elatic ui (superselect), zendesk garden, palentir blueprint (select), semantic ui (dropdown), Atlaskit, rsuitejs, microsoft fabric
  • native: elastic ui (select), segment evergreen, palentir blueprint, IBM carbon, Pinterest Gastalt, , shopify polaris, priceline, kiwi orbit
Was this page helpful?
0 / 5 - 0 ratings