[wp-trac] [WordPress Trac] #64641: Admin Reskin: Add framed layout to wp-admin with scrollable content area

WordPress Trac noreply at wordpress.org
Sun Feb 15 10:46:48 UTC 2026


#64641: Admin Reskin: Add framed layout to wp-admin with scrollable content area
----------------------------+-----------------------------
 Reporter:  fabiankaegy     |      Owner:  (none)
     Type:  defect (bug)    |     Status:  new
 Priority:  normal          |  Milestone:  Awaiting Review
Component:  Administration  |    Version:
 Severity:  normal          |   Keywords:
  Focuses:  ui, css         |
----------------------------+-----------------------------
 This ticket introduces a framed layout for `wp-admin` as part of the
 WordPress 7.0 (or 7.1) admin visual refresh (#64308).

 == Why This Matters ==

 The current admin layout uses a flat, full-bleed design where the content
 area fills the entire viewport. A framed layout with a visible background,
 rounded corners, and consistent spacing creates a more modern, focused
 interface that better separates navigation from content and matches the
 design already used in the Site Editor. It also matches what the new wp-
 boot powered screens such as the new Appearance -> Fonts screen look like.

 == Proposed Scope ==

 '''Layout structure:'''
  * `#wpwrap` uses a fixed viewport height with a dark background
 (`#1e1e1e`)
  * `#wpcontent` becomes a flex column with padding to create the frame gap
 on right and bottom edges
  * `#wpbody-content` gets a white background, `border-radius: 8px`, and
 `overflow-y: auto` for independent scrolling
  * `#wpbody-content` uses `display: flex; flex-direction: column` to keep
 the footer at the bottom via `margin-top: auto`

 '''Block editor integration:'''
  * The editor's `.interface-interface-skeleton` keeps its native
 `position: fixed` to preserve z-index stacking
  * Non-fullscreen mode gets `right: 16px`, `bottom: 16px`, `border-radius:
 8px`, and `overflow: hidden` to fit within the frame
  * Fullscreen mode removes the frame entirely (no border-radius, no
 padding, no margin)

 '''Footer:'''
  * `#wpfooter` is moved inside `#wpbody-content` so it participates in the
 scroll area
  * Uses `margin-top: auto` within the flex column to always sit at the
 bottom

 '''Screen meta (Help / Screen Options):'''
  * `#screen-meta-links` uses `align-self: flex-end` instead of `float:
 right` to work within the flex column layout
  * `#screen-meta` panel stays in normal flow so expanding it pushes
 content down

 '''Responsive:'''
  * On small screens, the frame is removed: `border-radius: 0`, `overflow:
 visible`, `height: auto`
  * Screen meta margins adjust to `10px` on both sides

 == Key Principles ==

  * '''CSS-Only Changes''': Layout achieved through CSS, with one small
 change in `admin-footer.php` to reorder the footer position in the DOM
  * '''Backward Compatibility''': All existing selectors preserved, block
 editor z-index behavior maintained by keeping `position: fixed`
  * '''Fullscreen Unaffected''': Fullscreen mode strips the frame for a
 clean, borderless experience
  * '''Accessibility''': Scrollable content area uses `overscroll-behavior:
 none` to prevent scroll chaining, focus styles remain visible

 == What This Is NOT ==

  * No changes to the admin menu or admin bar
  * No changes to admin color scheme values
  * No JavaScript modifications
  * No changes to block editor internal layout

 == Testing Approach ==

 Test across multiple admin screens with varying content lengths:

  * Short-content pages (Tools, Import/Export) — footer should be at the
 bottom, not floating mid-page
  * Long-content pages (Posts list, Settings) — content should scroll
 within the frame with visible border-radius
  * Block editor (Post, Page) — editor should fit within the frame with
 rounded corners in non-fullscreen mode
  * Block editor fullscreen — frame should be completely removed
  * Help / Screen Options panels — expanding should push content down,
 toggle buttons should move with the panel
  * Dashboard — drag zone placeholders should have proper spacing

 Verify at 100% and 200% zoom, in RTL layout, and on mobile viewport widths
 (frame should be disabled).

 == Related Resources ==

  * Parent ticket: #64308

-- 
Ticket URL: <https://core.trac.wordpress.org/ticket/64641>
WordPress Trac <https://core.trac.wordpress.org/>
WordPress publishing platform


More information about the wp-trac mailing list