This is a comprehensive list of the breaking changes introduced in the major version releases of Ionic Framework.
- The deprecated color step CSS variables,
--ion-color-step-[number], have been removed and should be replaced with either--ion-background-color-step-[number]or--ion-text-color-step-[number]depending on the specific use case, as outlined in the migration guide.
- The
border-radiusof theiosandmdbutton now defaults to6pxand999pxinstead of14pxand4px, respectively, in accordance with the iOS and Material Design 3 guidelines. To revert to the previous appearance, set theshapeto"soft"formdand override the--border-radiusCSS variable foriosto14px, or set it to a different value entirely.
- The
border-radiusof theiosandmdcard now defaults to14pxand12pxinstead of8pxand4px, respectively, in accordance with the iOS and Material Design 3 guidelines. To revert to the previous appearance, set theshapeto"soft", or override the--border-radiusCSS variable to specify a different value.
- Component CSS variables have been removed. The component now utilizes the centralized Ionic Theming system. Global updates should be managed via the theme tokens file, while component-specific overrides are handled through localized CSS variables.
--coloris replaced byIonChip.hue.bold.solid.defaultfor global styles and--ion-chip-hue-bold-solid-default-colorfor component-specific styles if the chip has a bold hue and solid fill.--coloris replaced byIonChip.hue.bold.outline.defaultfor global styles and--ion-chip-hue-bold-outline-default-colorfor component-specific styles if the chip has a bold hue and outline fill.--coloris replaced byIonChip.hue.subtle.solid.defaultfor global styles and--ion-chip-hue-subtle-solid-default-colorfor component-specific styles if the chip has a subtle hue and solid fill.--coloris replaced byIonChip.hue.subtle.outline.defaultfor global styles and--ion-chip-hue-subtle-outline-default-colorfor component-specific styles if the chip has a subtle hue and outline fill.
- The
outlineproperty has been deprecated. To achieve an outlined chip, set thefillproperty to"outline". The class.chip-outlinehas also been updated to.chip-fill-outlinefor clarity. - Specific theme classes (e.g.,
ion-chip.md) are no longer supported. Style modifications based on the active theme must be implemented using theme tokens rather than direct class targeting. - The
border-radiusof theiosandmdchip now defaults to10pxand8px, respectively, instead of16pxin accordance with the iOS and Material Design 3 guidelines. To revert to the previous appearance, set theshapeto"round", or override theIonChip.shape.round.border.radiusto specify a different value for global styles and--ion-chip-shape-round-border-radiusfor component-specific styles.
- The properties
pullandpushhave been deprecated and no longer work. A similar look can be achieved with the newly added propertyorder.
- Converted
ion-radio-groupto use Shadow DOM.
If you were targeting the internals ofion-radio-groupin your CSS, you will need to target thesupporting-text,helper-textorerror-textShadow Parts instead, or use the provided CSS Variables.
Additionally, theradio-group-wrapperdiv element has been removed, causing slotted elements to be direct children of theion-radio-group.
Version up to 8.x
<ion-grid>
<ion-row>
<ion-col push="4">1</ion-col>
<ion-col pull="4">2</ion-col>
<ion-col>3</ion-col>
</ion-row>
</ion-grid>Version 9.x+
<ion-grid>
<ion-row>
<ion-col order="2">1</ion-col>
<ion-col order="1">2</ion-col>
<ion-col order="3">3</ion-col>
</ion-row>
</ion-grid>Version up to 8.x
<ion-grid>
<ion-row>
<ion-col push="3">1</ion-col>
<ion-col pull="9">2</ion-col>
</ion-row>
</ion-grid>Version 9.x+
<ion-grid>
<ion-row>
<ion-col order="2">1</ion-col>
<ion-col size="3" order="1">2</ion-col>
</ion-row>
</ion-grid>ion-col push 1
ion-col push 1
```
**Version 9.x+**
```html
ion-col size="auto" offset="1"
ion-col size="auto"
```
```html
ion-col size="3" size-md="6" push="9" push-md="6"
ion-col size="9" size-md="6" pull="3" pull-md="6"
```
**Version 9.x+**
```html
ion-col size="auto" order="2" order-md="2"
ion-col size="auto" order="1" order-md="1"
```
- Component CSS variables have been removed. The component now utilizes the centralized Ionic Theming system. Global updates should be managed via the theme tokens file, while component-specific overrides are handled through localized CSS variables.
--coloris replaced byIonSpinner.colorfor global styles and--ion-spinner-colorfor component-specific styles.
- CSS classes now include the property name to improve clarity.
.spinner-[spinner-name]→.spinner-name-[spinner-name]
- Specific theme classes (e.g.,
ion-spinner.md) are no longer supported. Style modifications based on the active theme must be implemented using theme tokens rather than direct class targeting.