Button enhancements #545
Replies: 8 comments 2 replies
-
Secondary buttons have a transparent background color. This can result in buttons looking disabled, if they happen to live on top of a non-white (gray) background. This CodePen demos this effect in the second column. The third column applies a white background to the secondary buttons. In discussing with the design community a couple months ago, we couldn't find a compelling reason to need transparent backgrounds on secondary buttons. White backgrounds seems like a good change. |
Beta Was this translation helpful? Give feedback.
-
Buttons should be adjusted so that they are square when the only visible content is an icon. For example, in the Rivet docs, such a button is 44×40 px. The padding could be adjusted to make it 40×40. |
Beta Was this translation helpful? Give feedback.
-
There is currently only two button sizes (40px tall and 24px tall). A button size in between (32px) would provide a good option that may be more appropriate for a lot of apps. |
Beta Was this translation helpful? Give feedback.
-
The font size for small buttons (16px) seems too large for the 24px height. Reducing it to 14px makes the text much more comfortable in that space. Plus, it would provide better contrast against other button sizes, if we would introduce a 32px tall button. |
Beta Was this translation helpful? Give feedback.
-
Primary buttons are the default button type ( |
Beta Was this translation helpful? Give feedback.
-
There's often times that it is aesthetically better for a button to look like a link. However, |
Beta Was this translation helpful? Give feedback.
-
There's a number of issues with the use of loading indicators in buttons. Those issues are explore more in depth in #543 (and associated CodePens). |
Beta Was this translation helpful? Give feedback.
-
The Rivet docs on buttons doesn't mention anything about disabled buttons. It may be good to explain some best practices, tips, or patterns. For example, a pattern may be to disable submit buttons until the form is valid. This can cause a number of issues. Invalid fields need to clearly outline why they're invalid. And screen reader users navigating in forms mode (tabbing) can't find the submit button, since tabbing skips disabled controls. The user is looking for the submit button, and landing on the submit button informs them when they're at the end of the form. By skipping the disabled submit button, the user has a much more difficult time knowing how to proceed. This could be solved in a couple ways. First, the submit button should never be disabled. Then when submitting, the form validates, and focus moves to either the first invalid field or an alert summarizing the errors at the top of the form. Second, the submit button could be functionally disabled with |
Beta Was this translation helpful? Give feedback.
-
There's a number of small tweaks that could improve Rivet buttons. I'd like to propose some options and submit some PRs. I'd imagine this would be part of Rivet 2 work.
Beta Was this translation helpful? Give feedback.
All reactions