Repository navigation
Conversation
thetaPC
added this pull request to stack #31538
October 6, 2026 22:14
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
thetaPC
commented
Oct 6, 2026
Contributor
Author
There was a problem hiding this comment.
The title in this snapshot now follows the page's md theme instead of the header's mode="ios", since migrated components take their look from the theme and mode only affects behavior; the header itself is still visible, which is what the test checks.
brandyscarney
requested changes
Oct 16, 2026
brandyscarney
left a comment
Member
There was a problem hiding this comment.
Looks good! I requested some changes. 🙂
Co-authored-by: Brandy Smith <brandyscarney@users.noreply.github.com>
Co-authored-by: Brandy Smith <brandyscarney@users.noreply.github.com>
This was referenced Oct 20, 2026
brandyscarney
approved these changes
Oct 21, 2026
brandyscarney
left a comment
Member
There was a problem hiding this comment.
Looks good just one optional change in the interface!
# Conflicts: # core/src/components/title/test/color/title.e2e.ts
Co-authored-by: Brandy Smith <6577830+brandyscarney@users.noreply.github.com>
# Conflicts: # core/src/components/title/test/color/title.e2e.ts-snapshots/title-color-ionic-md-ltr-light-Mobile-Chrome-linux.png # core/src/components/title/test/color/title.e2e.ts-snapshots/title-color-ionic-md-ltr-light-Mobile-Firefox-linux.png # core/src/components/title/test/color/title.e2e.ts-snapshots/title-color-ionic-md-ltr-light-Mobile-Safari-linux.png # core/src/components/title/test/color/title.e2e.ts-snapshots/title-color-ios-ltr-Mobile-Chrome-linux.png # core/src/components/title/test/color/title.e2e.ts-snapshots/title-color-ios-ltr-Mobile-Firefox-linux.png # core/src/components/title/test/color/title.e2e.ts-snapshots/title-color-ios-ltr-Mobile-Safari-linux.png # core/src/components/title/test/color/title.e2e.ts-snapshots/title-color-md-ltr-Mobile-Chrome-linux.png # core/src/components/title/test/color/title.e2e.ts-snapshots/title-color-md-ltr-Mobile-Firefox-linux.png # core/src/components/title/test/color/title.e2e.ts-snapshots/title-color-md-ltr-Mobile-Safari-linux.png
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Issue number: resolves internal
What is the current behavior?
ion-titledoes not fragment styles based on themes.What is the new behavior?
ion-titleto Modular Ionic: one token-driven stylesheet,IonTitleRecipeandIonTitleConfig, and per-theme token defaults for ios, md and ionic.hueprop (boldby default, orsubtle). The ionic theme now appliescolor, matching ios and md. The hue test covers every color in ios, md and ionic, so the separate color test is removed.sizeacceptsmedium, which is the default from the newIonTitle.sizeconfig. The header's condense effect also reads that config, so a title made large through it condenses. Size classes are nowtitle-size-small,title-size-mediumandtitle-size-large, and toolbar's matching classes aretoolbar-title-size-*.--colorwith--ion-title-color, which also reaches the copy of a large title shown during the iOS page transition.getIonThemeand thethemevirtual prop) and thetitle-rtlclass.box-sizing: border-boxandpointer-events: noneare set in the stylesheet for every theme instead of through tokens. In md, a tap on the title's padding now reaches the toolbar, as it already did in ios and ionic.min-width: 100%moves totoolbar.ios.scss, next to theflex-wraprule it works with.--ion-spacing-lg(16px) instead of9px, matching the navigation bar prompt in Apple's iOS 17 and 18 design kits. Long small titles wrap a little sooner.0.0075em(0.15px at 20px) instead of0.0125em, matching Headline 6 in Google's Material 2 design kit. The old value came from a 2019 toolbar update (fix(toolbar): update md toolbar button spacing and segment padding #17537).title-largeorder value. The rule's selector can't reach the slotted title, so it never applied, and the title already computesorder: 0. Rendering doesn't change.dynamicFontMaxtoken helper, and rounds scaled sizes indynamicFontMinanddynamicFontMax.title-basicscreenshots change where the long small title wraps. The hue screenshots now include ios. In header's "root iOS header in an MD app" screenshot, the title follows the page's theme: an ancestormodeattribute now only affects behavior, as it already does for every migrated component.Does this introduce a breaking change?
ion-titleCSS variables and classes are replaced by token-driven custom properties and prop-named classes. Use the global token for theme-wide styling, or the CSS variable for component-specific overrides.--colorIonTitle.color--ion-title-colortitle-defaulttitle-size-mediumtitle-smalltitle-size-smalltitle-largetitle-size-largetoolbar-title-defaulttoolbar-title-size-mediumtoolbar-title-smalltoolbar-title-size-smalltoolbar-title-largetoolbar-title-size-largeRTL class:
title-rtlis removed. Useion-title:dir(rtl)instead.Theme classes: remove any instances that target
ion-title.mdorion-title.ios.Taps on the title's padding: in md, a tap on the padding at the start or end of
ion-titlenow reaches the element behind it, usuallyion-toolbar. Listen onion-toolbarif those taps need to count.Other information
Left for the parents
Some
ion-titlestyles still live in, or depend on, its parents. They move with that parent's work, so they aren't part of this PR.text-alignrules intoolbar.ionic.scss, the iOS title's own centering and its 90px side padding intitle.scss(markedTODO(FW-6864)), and the iOS large title's full-width row intoolbar.ios.scss. Once the toolbar places the title in every theme, the title's centering and side padding can go.header.common.scssthat hide and fade the title as the large title collapses. They depend on the header's scroll state and include its condense motion, so they move in the header migration (FW-6843).How to test
Open each before and after link side by side.