Skip to content

feat(note): sync the ios theme with iOS 17 - #31732

Merged
thetaPC merged 6 commits into
FW-6855from
FW-6855-ios-sync
Nov 13, 2026
Merged

thetaPC merged 6 commits into
FW-6855from
FW-6855-ios-sync

Conversation

@thetaPC

@thetaPC thetaPC commented Nov 11, 2026 •

Copy link
Copy Markdown
Contributor

Issue number: internal


What is the current behavior?

The ios note is 16px with an inherited line height and letter spacing, values carried over from v9 instead of iOS 17.

What is the new behavior?

The ios note matches the detail text of an iOS 17 list row (Body, from the Apple Design Resources kit):

  • 17px font size, with the same 87.5% minimum as before
  • 1.294 line height, which is 22px at 17px
  • -0.0235em letter spacing, which is -0.4px at 17px

Line height and letter spacing are new IonNote tokens. md and ionic don't set them, so they keep inheriting as before.

Does this introduce a breaking change?

  • Yes
  • No

The ios note is larger and now sets its line height and letter spacing. To revert to the previous appearance, set IonNote.font.size, IonNote.line.height and IonNote.letterSpacing for global styles, or --ion-note-font-size, --ion-note-line-height and --ion-note-letter-spacing for component-specific styles.

Other information

Known gaps

The ios note color still uses the text color step. iOS 17's secondary label color needs different values in dark mode, which palettes can't set for a component yet. Tracked as a follow-up.

How to test

Check Before After What to look for
ios Before After Every note is slightly larger (17px instead of 16px) and slightly tighter. Inspect a note: line-height is about 22px and letter-spacing is about -0.4px
md and ionic md, ionic Nothing changes

Only ios snapshots change: note basic, a11y and hue, and card basic, whose rows show a note.

@thetaPC
thetaPC added this pull request to stack #31730 November 11, 2026 16:20
@vercel

vercel Bot commented Nov 11, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
ionic-framework Ready Ready Preview Nov 12, 2026 11:47pm UTC

Request Review

@github-actions github-actions Bot added the package: core @ionic/core package label Nov 11, 2026
@thetaPC
thetaPC marked this pull request as ready for review November 12, 2026 03:43
@thetaPC
thetaPC requested a review from a team as a code owner November 12, 2026 03:43
@thetaPC
thetaPC requested a review from ShaneK November 12, 2026 03:43

@brandyscarney brandyscarney left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One concern with the alignment, but that's it!

@ShaneK ShaneK left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The ios sync looks good. Left one small docs suggestion on the font size revert step.

Comment thread BREAKING.md Outdated

In the `ios` theme, the note now matches the detail text of an iOS list row, in accordance with the iOS guidelines:

- The font size is now `17px` instead of `16px`. To revert to the previous appearance, set `IonNote.font.size` for global styles, or `--ion-note-font-size` for component-specific styles.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- The font size is now `17px` instead of `16px`. To revert to the previous appearance, set `IonNote.font.size` for global styles, or `--ion-note-font-size` for component-specific styles.
- The font size is now `17px` instead of `16px`. To revert to the previous appearance, set `IonNote.font.size` to `max(14px, 1rem)` for global styles, or `--ion-note-font-size` for component-specific styles.

The other revert steps here name the value to set, but this one doesn't. The old value wasn't a flat 16px, it was max(14px, 1rem), so anyone who guesses 16px from this line loses rem scaling. With a 20px root font size the note renders at 16px instead of the old 20px. Could we name it here?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done in 199f13a

@thetaPC
thetaPC merged commit 847b111 into ionic-modular Nov 13, 2026
54 checks passed
@thetaPC
thetaPC deleted the FW-6855-ios-sync branch November 13, 2026 00:03

This branch was successfully deployed

1 active deployment
Preview — e0e8fe51 Deployed Nov 12, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

package: core @ionic/core package

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants