#64547 closed enhancement (fixed)
Admin Reskin: Update button and input field styling to align with WordPress Design System
| Reported by: |
|
Owned by: |
|
|---|---|---|---|
| Milestone: | 7.0 | Priority: | normal |
| Severity: | normal | Version: | |
| Component: | Administration | Keywords: | |
| Focuses: | ui, accessibility, css | Cc: |
Description (last modified by )
This ticket covers the visual reskin of buttons and input fields in wp-admin as part of the WordPress 7.0 admin visual refresh (#64308).
Why This Matters
Buttons and input fields are the most common interactive elements in wp-admin. Consistent styling improves usability, reduces cognitive load, and makes older screens feel closer to the editor experience users already know.
Why Buttons and Inputs Are Grouped
These two components frequently appear adjacent to one another in the admin interface:
- Search boxes with submit buttons
- Bulk action dropdowns with Apply buttons
- Settings pages with text inputs and Save Changes buttons
- Password fields with toggle buttons
Updating the height or density of one component without the other creates visual misalignment. This ticket addresses both together to ensure a cohesive result.
Proposed Scope
Buttons:
- Primary, secondary, tertiary, and link buttons
- Destructive variants
- All interactive states (default, hover, focus, active, disabled)
Inputs:
- Text inputs, URL, email, password, number, search
- Select dropdowns and textareas
- Checkboxes and radio buttons
- Disabled and readonly states
Key Principles
- CSS-Only Changes: No markup or JavaScript modifications
- Backward Compatibility: All existing selectors and admin color schemes preserved
- Design System Alignment: Heights, spacing, and focus treatment aligned with Gutenberg components
- Accessibility: Focus rings visible at all zoom levels, proper contrast ratios maintained
What This Is NOT
- No new CSS custom properties
- No changes to functional behavior (validation, keyboard interactions)
- No selector removals or renames
Testing Approach
Test in real admin workflows across multiple screens:
- Dashboard widgets and bulk actions
- Settings pages (General, Reading, Discussion)
- Plugin search and install
- Post editor meta boxes
Verify in at least two color schemes (modern and light), at 100% and 200% zoom, and in RTL layout.
Related Resources
- Parent ticket: #64308
- Figma: https://www.figma.com/design/804HN2REV2iap2ytjRQ055/WordPress-Design-System?node-id=16507-33913
- Gutenberg Storybook: https://wordpress.github.io/gutenberg/?path=/docs/components-button--docs
Attachments (3)
Change History (41)
This ticket was mentioned in PR #10783 on WordPress/wordpress-develop by @fabiankaegy.
6 weeks ago
#1
- Keywords has-patch added
#2
@
6 weeks ago
- Description modified (diff)
- Focuses accessibility added
- Milestone changed from Awaiting Review to 7.0
#3
@
5 weeks ago
Thanks for this work. Designwise, I support this, and appreciate that this is not a new custom properties effort: those become public APIs to support forever which needs an extremely carefully considered approach. And at the same time, this effort does not preclude a color system modernization happening in the future, it's just CSS to modernize and make uniform the work.
I'm a bit short for time on testing, are there screenshots or visuals to aid that process? Otherwise I'll try and come back when I have a moment.
@audrasjb commented on PR #10783:
5 weeks ago
#4
Hi @fabiankaegy,
This looks globally good to me.
I tested this PR on a fresh install, and I went into each individual admin screen, on both desktop and small screen views.
This looks almost good to me, I only found a few glitches:
Media Library vertical misalignment
Settings vertical misalignement on lists
Then I tested a few popular plugins, like Classic Editor, CF7, Redirection, SCF, and others. Globally settings pages are OK, I only found a few glitches, like:
Alignement bug on Visual/Code tabs on Classic Editor
Alignement bug on Redirection filters
More tests on popular plugins are welcome.
For example: back in the years, here is the list of plugins I tested when we shipped the Admin Accessible Redesign in WordPress 5.3: https://make.wordpress.org/core/2019/10/15/report-wp-5-3-admin-css-changes-tested-against-top-20-plugins/
#5
@
5 weeks ago
Hi there,
I tested this changeset on each admin screen on both dsektop and small screens, then I installed a few popular plugins like Classic Editor, CF7, Redirection, SCF, and others. Globally notifices are OK.
I didn't find any accessibility issue as well.
@Joen commented on PR #10783:
5 weeks ago
#6
From Jb's screenshots above, one note I'd add is that you can use either the 32px or 40px height for most of the controls, e.g. try the "compact" view here. 32px may be a better fit for many of these.
@fabiankaegy commented on PR #10783:
5 weeks ago
#7
Thanks @jasmussen :) You can view the full thing live here: https://playground.wordpress.net/wordpress.html?pr=10783
@Joen commented on PR #10783:
5 weeks ago
#8
This ticket was mentioned in Slack in #accessibility by joedolson. View the logs.
5 weeks ago
#10
@
4 weeks ago
Coming in to support this design wise and to say that even in testing initially the only hitch was around compact which I suspected was going to happen based on previous explorations:
From Jb's screenshots above, one note I'd add is that you can use either the 32px or 40px height for most of the controls, e.g. try the "compact" view here. 32px may be a better fit for many of these.
This would also be my recommendation.
@joedolson commented on PR #10783:
3 weeks ago
#11
@joedolson commented on PR #10783:
3 weeks ago
#12
@joedolson commented on PR #10783:
3 weeks ago
#13
@joedolson commented on PR #10783:
3 weeks ago
#14
@joedolson commented on PR #10783:
3 weeks ago
#15
@joedolson commented on PR #10783:
3 weeks ago
#16
@joedolson commented on PR #10783:
3 weeks ago
#17
@joedolson commented on PR #10783:
3 weeks ago
#18
@joedolson commented on PR #10783:
3 weeks ago
#19
This ticket was mentioned in Slack in #accessibility by joedolson. View the logs.
3 weeks ago
@fabiankaegy commented on PR #10783:
3 weeks ago
#21
Thanks @audrasjb @jasmussen @joedolson :) I've taken all your great feedback and made modifications based on it 👍
This ticket was mentioned in Slack in #core by audrasjb. View the logs.
3 weeks ago
@phpbits commented on PR #10783:
3 weeks ago
#23
@magaliechetrit commented on PR #10783:
3 weeks ago
#24
- In Users view, the "Change" button is too big.
- Question: when we apply a new admin color scheme, should we see these changes too? @joedolson @fabiankaegy @karmatosed @audrasjb ?
I've installed Twenty Nineteen theme for the next items:
- Customizer > Site Identity: the buttons are a bit large.
- Customizer, Menus > all add links options are badly aligned:
- Customizer > Homepage Settings also a button that's too small.
@fabiankaegy commented on PR #10783:
3 weeks ago
#25
@phpbits @BluePraise thanks you two :) That was an oversight on my end. It now properly respects the admin scheme 👍
@magaliechetrit commented on PR #10783:
3 weeks ago
#26
@fabiankaegy There seems to be an issue when I switch color schemes in Users. When I go from "Default" to any other color scheme and then back to "Default", I don't see the new reskin colors.
When researching the issue, I noticed in src/js/_enqueues/admin/user-profile.js around line 543-550 that it would be reset to "nothing". There is no stylesheet recreated.
I have looked in the Trac and could find no related issue to this since this may be unrelated to the reskin. However, it does impact the work of the reskin.
To recreate:
- Navigate to Users > Profile
- Switch color schemes to any color schemes
- Go back to default color schemes.
I have pulled your latest work.
#27
@
3 weeks ago
Hello hello, to help Fabian and all of us out, I have started a spreadsheet of the issues reported. But since it is becoming quite time consuming to check each issue in regards to status I am offering the spreadsheet here: https://docs.google.com/spreadsheets/d/1WtgYvtqP7nYV-n_DjKe2w8bPnIsooPHoGU4617ND_8g/edit?usp=sharing Feel free to look through the spreadsheet to see if any screen or area has been checked.
Keep in mind that I am first of all just copy pasting all comments and reorganizing the columns on the fly as it makes sense.
Am open to help or input!
#28
@
3 weeks ago
Test Report
Description
This report validates whether the indicated patch works as expected.
Patch tested: https://patch-diff.githubusercontent.com/raw/WordPress/wordpress-develop/pull/10783.diff
Environment
- WordPress: 7.0-alpha-20260211.193508
- PHP: 7.4.33
- Server: PHP.wasm
- Database: WP_SQLite_Driver (Server: 8.0.38 / Client: 3.51.0)
- Browser: Chrome 144.0.0.0
- OS: macOS
- Theme: Twenty Twenty-Five 1.4
- MU Plugins: None activated
- Plugins:
- Test Reports 1.2.1
Actual Results
- Dashboard widgets and bulk actions✅
- Settings pages (General, Reading, Discussion)✅
- Plugin search and install✅
- Post editor meta boxes✅
Issue noticed:
In the Media Library, when List View is selected, the "Filter" button appears smaller than the "All media items" button.
Screenshots is attached for reference:
@joedolson commented on PR #10783:
3 weeks ago
#29
The :focus state on button-link doesn't match the link focus state. See example in the row actions, where 'Quick Edit' is a button-link, but the other controls are links:
This could have effects throughout the admin, but it may also be resolved in another one of the design PRs, since this one is only addressing buttons/forms. I'm not totally sure. We're at a stage where it's pretty difficult to take all of the design refresh PRs into consideration in combination.
#30
@
3 weeks ago
- Keywords commit added
- Owner set to joedolson
- Status changed from new to accepted
I'm marking this for commit. While I fully expect we'll continue to find issues through the beta and RC window, I think everything is far enough along that we'll be more productive getting a broader look in core holistically.
Taking ownership to help guide it, but I'll leave it to @fabiankaegy to handle commit, unless he wants to pass it on.
#32
@
2 weeks ago
- Keywords has-patch commit removed
- Resolution fixed deleted
- Status changed from closed to reopened
A git bisect shows that this commit broke the login button and checkbox on the login form, including the screens in the reset password flow. See the screenshot above. It also broke the button on the db upgrade screen.
I've reopened the ticket to investigate:
- WordPress: 7.0-alpha-61645
- Installation type: WordPress installed in a sub-directory
- PHP: 8.4.16
- Server: nginx/1.18.0
- Database: mysqli (Server: 8.0.36-0ubuntu0.22.04.1 / Client: mysqlnd 8.4.16)
- Browser: Firefox 147.0
- OS: macOS
- Theme: Twenty Twenty-Five 1.4
- MU Plugins:
- _qm-mappings.php
- Plugins:
- Query Monitor 3.19.0
- Test Reports 1.2.1
#33
@
2 weeks ago
@peterwilsoncc See also https://core.trac.wordpress.org/ticket/64640
#34
@
2 weeks ago
- Resolution set to fixed
- Status changed from reopened to closed
@joedolson Thanks Joe, I missed that ticket. I'll reclose this for work to continue on the follow up.
This ticket was mentioned in Slack in #accessibility by magaliechetrit. View the logs.
2 weeks ago
#36
@
2 weeks ago
Additional note: the addition of display:flex to #major-publish-actions has caused us some issues with the photo directory. In particular some of the actions we added to do that work has gone wonky.
We can override the styling, but I'm wondering if this was intended. And if so, what about back compatibility? Might need some additional design work here.
#37
follow-up:
↓ 38
@
2 weeks ago
To some degree, getting this shipped in beta is a way to find out the scope of issues like this. I'm not sure we can give a lot of thought to back compat issues like this; where would we draw the line? The color changes themselves are going to be a back compat issue for some extenders. To me, this falls within a reasonable scope of what we might expect an extender to adapt for.
The feature isn't broken; it just looks weird.
#38
in reply to:
↑ 37
@
2 weeks ago
Replying to joedolson:
The feature isn't broken; it just looks weird.
Well, I mean, you're not wrong, however that's not the way users will see it. The functionality still works fine, but you had to scroll to the side in the browser to use it, which it did not have a scroll bar for. Basically you had to know how to use your browser to see that part of the screen and click thing theres because it was overflowing the screen.
And while all the functionality still continue to work, it was impossible to use to the point that the people that we expect to use it couldn't figure out how to use it. Thus the complaints and us having to figure out WTF happened.
We fixed it already in the plugins necessary, it was an easy fix, however, this is going to cause breakage and you need to be prepared to deal with that.if you're only depending on beta, you're not going to find it out. This will absolutely cause breaking changes only when 7.0 is released, for a whole lot of plugins.
In other words, if you want to release something like this, which clearly breaks the admin screens for a lot of things, then you really need to push a lot more plugins to test and fix the problems beforehand. This is a MAJOR, and MASSIVE, breaking change. You cannot depend on minor announcements to get it fixed beforehand. Basically, you have to set up your game on this one.
Trac ticket: https://core.trac.wordpress.org/ticket/64547#ticket