Skip to content

V23/support css - #1137

Draft
stephaniehobson wants to merge 1 commit into
v23/support-configfrom
v23/support-css
Draft

V23/support css#1137
stephaniehobson wants to merge 1 commit into
v23/support-configfrom
v23/support-css

Conversation

@stephaniehobson

Copy link
Copy Markdown
Contributor

Description

Describe what this change does.

  • I have documented this change in the design system.
  • I have recorded this change in CHANGELOG.md.

Issue

Add a link to a related GitHub issue if applicable.

Testing

Enter helpful notes for whoever code reviews this change.

Everything here is unconditionally true for Firefox ESR, Safari 15.6+,
and evergreen browsers, so the feature-query gates and legacy prefixes
around it are dead weight.

- Unwrapped @supports (position: sticky) in _navigation.scss and
  @supports (display: flex) in _menu.scss. The menu.scss case merges
  align-items/display: flex directly into the existing .mzp-c-menu-title
  rule, replacing its display: block fallback outright rather than
  keeping a separate feature-query block for a feature every supported
  browser has.
- Removed the base/elements/_reset.scss block resetting article, aside,
  details, figcaption, figure, footer, header, hgroup, main, nav,
  section, and summary to display: block -- every one of these has had
  correct default display in every supported browser for over a decade.
  Left the audio/video/canvas -> inline-block reset alone: that's a
  deliberate style choice (those are inline-level by spec in every
  browser), not a legacy-browser shim, so it doesn't belong to this
  cleanup.
- Removed the &::-ms-expand selector in the Select form reset (pure
  legacy IE/Edge, matches nothing in any supported browser).
- Replaced -webkit-appearance with the standard unprefixed appearance
  property in the two remaining form resets (search decoration, file
  upload button) and removed their now-unnecessary stylelint-disable
  comments. Re-enabled property-no-vendor-prefix and
  value-no-vendor-prefix in .stylelintrc.json as the ongoing enforcement
  lever -- confirmed empirically these two were the only real hits;
  the rules don't flag vendor-prefixed pseudo-elements
  (::-moz-focus-inner, ::-webkit-details-marker) or non-standard,
  prefix-only properties (-moz-osx-font-smoothing,
  -webkit-font-smoothing) that have no unprefixed equivalent, so the
  other 6 remaining prefixes in the codebase are correctly left alone.
- appearance: button was flagged separately as a deprecated keyword
  for the unprefixed property (declaration-property-value-keyword-no-deprecated);
  changed to appearance: auto, which is the correct modern equivalent
  (native appearance for that pseudo-element is already button-shaped).
- Removed stale "in IE"/"in Edge and IE" references from three
  comment blocks in _forms.scss. Left the normalize.css resets those
  comments document in place -- e.g. the textarea scrollbar and legend
  box-sizing resets -- since I can't confirm from source alone that
  every supported browser makes them fully redundant, and that's a
  bigger, separate call from removing definitively dead code like the
  @supports/-ms-/reset.scss cases above.

Stacked on #1135 (v23/support-config). Part of #1084.

Verified: npm run lint, npm test (47 specs, Firefox + Chrome), and a
direct sass --verbose compile confirming the merged menu-title rule,
the unwrapped sticky-nav rule, and the removed -ms-/@supports code in
the compiled CSS.
@stephaniehobson
stephaniehobson changed the base branch from main to v23/support-config September 10, 2026 20:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant