3 ms·
Different operating systems have different conventions. Windows centre- or end-aligns all these buttons (depending on the context), with Cancel last (generally
by chrismorgan 3y ago
Different operating systems have different conventions.
Windows centre- or end-aligns all these buttons (depending on the context), with Cancel last (generally mapping to having the primary action first). That has been its convention since at least the start of Win32 era. If you’re targeting Windows, this is probably what you should do.
Another platform end-aligns all these buttons, with the primary action last.
Still another platform stretches buttons, with the primary action last.
Others have cause to split things, start-aligning any cancel/negative button, and end-aligning others.
If you’re targeting a particular platform, you should generally aim to match its conventions unless you have very good reason not to.
One piece of related reading (and you can easily find others): https://www.nngroup.com/articles/ok-cancel-or-cancel-ok/ https://www.nngroup.com/articles/ok-cancel-or-cancel-ok/
- hgsgm 3y agoAnd so because a Windows person was carless 40 years ago, we still have poor pattern today.
- phkahler 3y agoNot sure. When I wrote it the other way I was thinking windows did it the way I said (I only use windows at work). Turns out they do it how I think is backwards, but looking at it I don't think it's a big deal.
- chrismorgan 3y agoWith the way Windows has always laid things out and designed its buttons, its ordering is, I think, objectively at least mildly superior, following reading order and with no major stylistic difference between the buttons. Platforms that have switched to doing things other ways have normally (and more recently I think it’s consistently) been laying things out differently and/or designing their buttons differently. On mobile devices especially with their right-hander bias, limited maximum width and screen-based navigation, primary action to the right is objectively superior, for tactile and UI flow reasons.