diff --git a/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-compact-expanded-ionic-md-ltr-light-Mobile-Chrome-linux.png b/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-compact-expanded-ionic-md-ltr-light-Mobile-Chrome-linux.png
index a7f2a9a2ba..41409e2bbc 100644
Binary files a/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-compact-expanded-ionic-md-ltr-light-Mobile-Chrome-linux.png and b/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-compact-expanded-ionic-md-ltr-light-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-compact-expanded-ionic-md-ltr-light-Mobile-Firefox-linux.png b/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-compact-expanded-ionic-md-ltr-light-Mobile-Firefox-linux.png
index 2e434897c7..a52824cf6b 100644
Binary files a/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-compact-expanded-ionic-md-ltr-light-Mobile-Firefox-linux.png and b/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-compact-expanded-ionic-md-ltr-light-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-compact-expanded-ionic-md-ltr-light-Mobile-Safari-linux.png b/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-compact-expanded-ionic-md-ltr-light-Mobile-Safari-linux.png
index e76429954b..189cfbe15e 100644
Binary files a/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-compact-expanded-ionic-md-ltr-light-Mobile-Safari-linux.png and b/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-compact-expanded-ionic-md-ltr-light-Mobile-Safari-linux.png differ
diff --git a/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-compact-ionic-md-ltr-light-Mobile-Chrome-linux.png b/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-compact-ionic-md-ltr-light-Mobile-Chrome-linux.png
index 4592d9ccbd..026d302139 100644
Binary files a/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-compact-ionic-md-ltr-light-Mobile-Chrome-linux.png and b/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-compact-ionic-md-ltr-light-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-compact-ionic-md-ltr-light-Mobile-Firefox-linux.png b/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-compact-ionic-md-ltr-light-Mobile-Firefox-linux.png
index 646b1b6d87..614633eebc 100644
Binary files a/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-compact-ionic-md-ltr-light-Mobile-Firefox-linux.png and b/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-compact-ionic-md-ltr-light-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-compact-ionic-md-ltr-light-Mobile-Safari-linux.png b/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-compact-ionic-md-ltr-light-Mobile-Safari-linux.png
index 8df1e6f8da..6bc1d82a5e 100644
Binary files a/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-compact-ionic-md-ltr-light-Mobile-Safari-linux.png and b/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-compact-ionic-md-ltr-light-Mobile-Safari-linux.png differ
diff --git a/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-inset-expanded-ionic-md-ltr-light-Mobile-Chrome-linux.png b/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-inset-expanded-ionic-md-ltr-light-Mobile-Chrome-linux.png
index 0e2ac1bdb8..cc8ecbed71 100644
Binary files a/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-inset-expanded-ionic-md-ltr-light-Mobile-Chrome-linux.png and b/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-inset-expanded-ionic-md-ltr-light-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-inset-expanded-ionic-md-ltr-light-Mobile-Firefox-linux.png b/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-inset-expanded-ionic-md-ltr-light-Mobile-Firefox-linux.png
index 7473b53a15..18ae93594f 100644
Binary files a/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-inset-expanded-ionic-md-ltr-light-Mobile-Firefox-linux.png and b/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-inset-expanded-ionic-md-ltr-light-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-inset-expanded-ionic-md-ltr-light-Mobile-Safari-linux.png b/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-inset-expanded-ionic-md-ltr-light-Mobile-Safari-linux.png
index 88bdb9fc62..f38be2405d 100644
Binary files a/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-inset-expanded-ionic-md-ltr-light-Mobile-Safari-linux.png and b/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-inset-expanded-ionic-md-ltr-light-Mobile-Safari-linux.png differ
diff --git a/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-inset-ionic-md-ltr-light-Mobile-Chrome-linux.png b/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-inset-ionic-md-ltr-light-Mobile-Chrome-linux.png
index 6994cf20dc..ac7fd3466a 100644
Binary files a/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-inset-ionic-md-ltr-light-Mobile-Chrome-linux.png and b/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-inset-ionic-md-ltr-light-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-inset-ionic-md-ltr-light-Mobile-Firefox-linux.png b/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-inset-ionic-md-ltr-light-Mobile-Firefox-linux.png
index b91457f2c0..8e6baf4df3 100644
Binary files a/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-inset-ionic-md-ltr-light-Mobile-Firefox-linux.png and b/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-inset-ionic-md-ltr-light-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-inset-ionic-md-ltr-light-Mobile-Safari-linux.png b/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-inset-ionic-md-ltr-light-Mobile-Safari-linux.png
index d7d7bd4c18..9d5833427c 100644
Binary files a/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-inset-ionic-md-ltr-light-Mobile-Safari-linux.png and b/core/src/components/accordion-group/test/expand/accordion.e2e.ts-snapshots/accordion-group-expand-inset-ionic-md-ltr-light-Mobile-Safari-linux.png differ
diff --git a/core/src/components/accordion-group/test/states/accordion.e2e.ts-snapshots/accordion-group-disabled-ionic-md-ltr-light-Mobile-Chrome-linux.png b/core/src/components/accordion-group/test/states/accordion.e2e.ts-snapshots/accordion-group-disabled-ionic-md-ltr-light-Mobile-Chrome-linux.png
index 7dd8e10044..3ef7394f2f 100644
Binary files a/core/src/components/accordion-group/test/states/accordion.e2e.ts-snapshots/accordion-group-disabled-ionic-md-ltr-light-Mobile-Chrome-linux.png and b/core/src/components/accordion-group/test/states/accordion.e2e.ts-snapshots/accordion-group-disabled-ionic-md-ltr-light-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/accordion-group/test/states/accordion.e2e.ts-snapshots/accordion-group-disabled-ionic-md-ltr-light-Mobile-Firefox-linux.png b/core/src/components/accordion-group/test/states/accordion.e2e.ts-snapshots/accordion-group-disabled-ionic-md-ltr-light-Mobile-Firefox-linux.png
index 66f2278979..256888f5fe 100644
Binary files a/core/src/components/accordion-group/test/states/accordion.e2e.ts-snapshots/accordion-group-disabled-ionic-md-ltr-light-Mobile-Firefox-linux.png and b/core/src/components/accordion-group/test/states/accordion.e2e.ts-snapshots/accordion-group-disabled-ionic-md-ltr-light-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/accordion-group/test/states/accordion.e2e.ts-snapshots/accordion-group-disabled-ionic-md-ltr-light-Mobile-Safari-linux.png b/core/src/components/accordion-group/test/states/accordion.e2e.ts-snapshots/accordion-group-disabled-ionic-md-ltr-light-Mobile-Safari-linux.png
index 011d3ac2c9..7330e54ccd 100644
Binary files a/core/src/components/accordion-group/test/states/accordion.e2e.ts-snapshots/accordion-group-disabled-ionic-md-ltr-light-Mobile-Safari-linux.png and b/core/src/components/accordion-group/test/states/accordion.e2e.ts-snapshots/accordion-group-disabled-ionic-md-ltr-light-Mobile-Safari-linux.png differ
diff --git a/core/src/components/accordion/accordion.scss b/core/src/components/accordion/accordion.common.scss
similarity index 70%
rename from core/src/components/accordion/accordion.scss
rename to core/src/components/accordion/accordion.common.scss
index e560c5de33..97716ac695 100644
--- a/core/src/components/accordion/accordion.scss
+++ b/core/src/components/accordion/accordion.common.scss
@@ -1,6 +1,7 @@
-@import "./accordion.vars.scss";
+// @import "../../themes/functions.string";
+// @import "../../themes/mixins";
-// Accordion
+// Accordion: Common
// --------------------------------------------------
:host {
@@ -10,8 +11,6 @@
width: 100%;
- background-color: $accordion-background-color;
-
overflow: hidden;
/**
@@ -30,14 +29,6 @@
--border-width: 0px;
}
-:host(.accordion-animated) {
- transition: all $accordion-transition-duration $accordion-transition-easing;
-}
-
-:host(.accordion-animated) #content {
- transition: max-height $accordion-transition-duration $accordion-transition-easing;
-}
-
#content {
overflow: hidden;
@@ -72,16 +63,6 @@
pointer-events: none;
}
-/**
- * We do not set the opacity on the
- * host otherwise you would see the
- * box-shadow behind it.
- */
-:host(.accordion-disabled) #header,
-:host(.accordion-disabled) #content {
- opacity: $accordion-disabled-opacity;
-}
-
@media (prefers-reduced-motion: reduce) {
:host,
#content {
diff --git a/core/src/components/accordion/accordion.ionic.scss b/core/src/components/accordion/accordion.ionic.scss
new file mode 100644
index 0000000000..3423831e44
--- /dev/null
+++ b/core/src/components/accordion/accordion.ionic.scss
@@ -0,0 +1,81 @@
+@use "../../themes/ionic/ionic.globals.scss" as globals;
+@use "./accordion.common";
+
+// Ionic Accordion
+// --------------------------------------------------
+
+:host {
+ position: relative;
+}
+
+// The border is added to the ::after element
+// to properly inset the border relative to the entire
+// accordion, rather than just the header.
+:host::after {
+ @include globals.margin(null, globals.$ionic-space-400, null, globals.$ionic-space-400);
+ @include globals.position(null, 0, 0, 0);
+
+ display: block;
+
+ position: absolute;
+
+ height: globals.$ionic-border-size-025;
+
+ background-color: globals.$ionic-color-neutral-300;
+
+ content: "";
+
+ z-index: 3;
+}
+
+:host(.accordion-animated) {
+ transition: all 300ms cubic-bezier(0.25, 0.8, 0.5, 1);
+}
+
+:host(.accordion-animated) #content {
+ transition: max-height 300ms cubic-bezier(0.25, 0.8, 0.5, 1);
+}
+
+// Accordion Header
+// --------------------------------------------------
+
+// The border is removed from the item in the header because
+// we are adding a border to the ::after element of the accordion.
+::slotted(ion-item[slot="header"]) {
+ --border-radius: #{globals.$ionic-border-radius-0};
+ --color: #{globals.$ionic-color-neutral-1200};
+ --border-width: 0;
+ --inner-border-width: 0;
+ --min-height: #{globals.$ionic-scale-700};
+ --padding-top: #{globals.$ionic-space-300};
+ --padding-end: #{globals.$ionic-space-400};
+ --padding-bottom: #{globals.$ionic-space-300};
+ --padding-start: #{globals.$ionic-space-400};
+
+ @include globals.typography(globals.$ionic-heading-h6-medium);
+}
+
+// Shape only applies when inside an inset accordion group
+:host(.in-accordion-group-expand-inset) ::slotted(ion-item[slot="header"]) {
+ --border-radius: #{globals.$ionic-border-radius-400};
+}
+
+// Accordion Content
+// --------------------------------------------------
+
+#content {
+ @include globals.padding(null, globals.$ionic-space-400, globals.$ionic-space-300, globals.$ionic-space-400);
+ @include globals.typography(globals.$ionic-body-md-regular);
+
+ color: globals.$ionic-color-neutral-1000;
+}
+
+// Disabled Accordion
+// --------------------------------------------------
+
+:host(.accordion-disabled)::before {
+ @include globals.border-radius(inherit);
+ @include globals.disabled-state();
+
+ z-index: 2;
+}
diff --git a/core/src/components/accordion/accordion.ios.scss b/core/src/components/accordion/accordion.ios.scss
index 9c428be082..db92476ad5 100644
--- a/core/src/components/accordion/accordion.ios.scss
+++ b/core/src/components/accordion/accordion.ios.scss
@@ -1,4 +1,4 @@
-@import "./accordion.scss";
+@import "./accordion.native";
@import "../item/item.ios.vars";
// iOS Accordion
diff --git a/core/src/components/accordion/accordion.md.scss b/core/src/components/accordion/accordion.md.scss
index 391934629c..1898d79699 100644
--- a/core/src/components/accordion/accordion.md.scss
+++ b/core/src/components/accordion/accordion.md.scss
@@ -1,4 +1,4 @@
-@import "./accordion.scss";
+@import "./accordion.native";
// Material Design Accordion
// --------------------------------------------------
diff --git a/core/src/components/accordion/accordion.native.scss b/core/src/components/accordion/accordion.native.scss
new file mode 100644
index 0000000000..99f0bc4dad
--- /dev/null
+++ b/core/src/components/accordion/accordion.native.scss
@@ -0,0 +1,27 @@
+@import "./accordion.common";
+@import "./accordion.vars.scss";
+
+// Accordion: Native
+// --------------------------------------------------
+
+:host {
+ background-color: $accordion-background-color;
+}
+
+:host(.accordion-animated) {
+ transition: all $accordion-transition-duration $accordion-transition-easing;
+}
+
+:host(.accordion-animated) #content {
+ transition: max-height $accordion-transition-duration $accordion-transition-easing;
+}
+
+/**
+ * We do not set the opacity on the
+ * host otherwise you would see the
+ * box-shadow behind it.
+ */
+:host(.accordion-disabled) #header,
+:host(.accordion-disabled) #content {
+ opacity: $accordion-disabled-opacity;
+}
diff --git a/core/src/components/accordion/accordion.tsx b/core/src/components/accordion/accordion.tsx
index 604399e395..6321c58185 100644
--- a/core/src/components/accordion/accordion.tsx
+++ b/core/src/components/accordion/accordion.tsx
@@ -2,6 +2,7 @@ import caretDownRegular from '@phosphor-icons/core/assets/regular/caret-down.svg
import type { ComponentInterface } from '@stencil/core';
import { Component, Element, Host, Prop, State, Watch, h } from '@stencil/core';
import { addEventListener, getElementRoot, raf, removeEventListener, transitionEndAsync } from '@utils/helpers';
+import { hostContext } from '@utils/theme';
import { chevronDown } from 'ionicons/icons';
import { config } from '../../global/config';
@@ -33,7 +34,7 @@ const enum AccordionState {
styleUrls: {
ios: 'accordion.ios.scss',
md: 'accordion.md.scss',
- ionic: 'accordion.md.scss',
+ ionic: 'accordion.ionic.scss',
},
shadow: {
delegatesFocus: true,
@@ -48,7 +49,7 @@ export class Accordion implements ComponentInterface {
private currentRaf: number | undefined;
- @Element() el?: HTMLElement;
+ @Element() el!: HTMLElement;
@State() state: AccordionState = AccordionState.Collapsed;
@State() isNext = false;
@@ -378,10 +379,6 @@ export class Accordion implements ComponentInterface {
};
private getNextSibling = () => {
- if (!this.el) {
- return;
- }
-
const nextSibling = this.el.nextElementSibling;
if (nextSibling?.tagName !== 'ION-ACCORDION') {
@@ -392,10 +389,6 @@ export class Accordion implements ComponentInterface {
};
private getPreviousSibling = () => {
- if (!this.el) {
- return;
- }
-
const previousSibling = this.el.previousElementSibling;
if (previousSibling?.tagName !== 'ION-ACCORDION') {
@@ -449,6 +442,8 @@ export class Accordion implements ComponentInterface {
'accordion-readonly': readonly,
'accordion-animated': this.shouldAnimate(),
+
+ 'in-accordion-group-expand-inset': hostContext('.accordion-group-expand-inset', this.el),
}}
>
{
});
});
});
+
configs({ directions: ['ltr'] }).forEach(({ config, title }) => {
test.describe(title('accordion: ionChange'), () => {
test.beforeEach(async ({ page }) => {
@@ -58,3 +59,39 @@ configs({ directions: ['ltr'] }).forEach(({ config, title }) => {
});
});
});
+
+configs({ modes: ['ionic-md'] }).forEach(({ config, screenshot, title }) => {
+ test.describe(title('accordion: basic'), () => {
+ test('should not have visual regressions with text content', async ({ page }) => {
+ await page.setContent(
+ `
+
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+ `,
+ config
+ );
+
+ const accordion = page.locator('ion-accordion-group');
+
+ await expect(accordion).toHaveScreenshot(screenshot('accordion-basic-text'));
+ });
+ });
+});
diff --git a/core/src/components/accordion/test/basic/accordion.e2e.ts-snapshots/accordion-basic-text-ionic-md-ltr-light-Mobile-Chrome-linux.png b/core/src/components/accordion/test/basic/accordion.e2e.ts-snapshots/accordion-basic-text-ionic-md-ltr-light-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..41409e2bbc
Binary files /dev/null and b/core/src/components/accordion/test/basic/accordion.e2e.ts-snapshots/accordion-basic-text-ionic-md-ltr-light-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/accordion/test/basic/accordion.e2e.ts-snapshots/accordion-basic-text-ionic-md-ltr-light-Mobile-Firefox-linux.png b/core/src/components/accordion/test/basic/accordion.e2e.ts-snapshots/accordion-basic-text-ionic-md-ltr-light-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..a52824cf6b
Binary files /dev/null and b/core/src/components/accordion/test/basic/accordion.e2e.ts-snapshots/accordion-basic-text-ionic-md-ltr-light-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/accordion/test/basic/accordion.e2e.ts-snapshots/accordion-basic-text-ionic-md-ltr-light-Mobile-Safari-linux.png b/core/src/components/accordion/test/basic/accordion.e2e.ts-snapshots/accordion-basic-text-ionic-md-ltr-light-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..189cfbe15e
Binary files /dev/null and b/core/src/components/accordion/test/basic/accordion.e2e.ts-snapshots/accordion-basic-text-ionic-md-ltr-light-Mobile-Safari-linux.png differ
diff --git a/core/src/components/accordion/test/basic/accordion.e2e.ts-snapshots/accordion-basic-text-ionic-md-rtl-light-Mobile-Chrome-linux.png b/core/src/components/accordion/test/basic/accordion.e2e.ts-snapshots/accordion-basic-text-ionic-md-rtl-light-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..2fc9c92c46
Binary files /dev/null and b/core/src/components/accordion/test/basic/accordion.e2e.ts-snapshots/accordion-basic-text-ionic-md-rtl-light-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/accordion/test/basic/accordion.e2e.ts-snapshots/accordion-basic-text-ionic-md-rtl-light-Mobile-Firefox-linux.png b/core/src/components/accordion/test/basic/accordion.e2e.ts-snapshots/accordion-basic-text-ionic-md-rtl-light-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..24cadf2a67
Binary files /dev/null and b/core/src/components/accordion/test/basic/accordion.e2e.ts-snapshots/accordion-basic-text-ionic-md-rtl-light-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/accordion/test/basic/accordion.e2e.ts-snapshots/accordion-basic-text-ionic-md-rtl-light-Mobile-Safari-linux.png b/core/src/components/accordion/test/basic/accordion.e2e.ts-snapshots/accordion-basic-text-ionic-md-rtl-light-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..9d8eca3c34
Binary files /dev/null and b/core/src/components/accordion/test/basic/accordion.e2e.ts-snapshots/accordion-basic-text-ionic-md-rtl-light-Mobile-Safari-linux.png differ
diff --git a/core/src/components/accordion/test/multiple/accordion.e2e.ts b/core/src/components/accordion/test/multiple/accordion.e2e.ts
index 49c6e0ef58..d43b9fbd88 100644
--- a/core/src/components/accordion/test/multiple/accordion.e2e.ts
+++ b/core/src/components/accordion/test/multiple/accordion.e2e.ts
@@ -1,7 +1,7 @@
import { expect } from '@playwright/test';
import { configs, test } from '@utils/test/playwright';
-configs({ directions: ['ltr'] }).forEach(({ config, screenshot, title }) => {
+configs({ directions: ['ltr'], modes: ['ionic-md', 'md', 'ios'] }).forEach(({ config, screenshot, title }) => {
test.describe(title('accordion: multiple'), () => {
test('should update value and visually expand items', async ({ page }) => {
await page.goto(`/src/components/accordion/test/multiple`, config);
diff --git a/core/src/components/accordion/test/multiple/accordion.e2e.ts-snapshots/accordion-one-open-ionic-md-ltr-light-Mobile-Chrome-linux.png b/core/src/components/accordion/test/multiple/accordion.e2e.ts-snapshots/accordion-one-open-ionic-md-ltr-light-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..9979664237
Binary files /dev/null and b/core/src/components/accordion/test/multiple/accordion.e2e.ts-snapshots/accordion-one-open-ionic-md-ltr-light-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/accordion/test/multiple/accordion.e2e.ts-snapshots/accordion-one-open-ionic-md-ltr-light-Mobile-Firefox-linux.png b/core/src/components/accordion/test/multiple/accordion.e2e.ts-snapshots/accordion-one-open-ionic-md-ltr-light-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..06110121ac
Binary files /dev/null and b/core/src/components/accordion/test/multiple/accordion.e2e.ts-snapshots/accordion-one-open-ionic-md-ltr-light-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/accordion/test/multiple/accordion.e2e.ts-snapshots/accordion-one-open-ionic-md-ltr-light-Mobile-Safari-linux.png b/core/src/components/accordion/test/multiple/accordion.e2e.ts-snapshots/accordion-one-open-ionic-md-ltr-light-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..9581a4659f
Binary files /dev/null and b/core/src/components/accordion/test/multiple/accordion.e2e.ts-snapshots/accordion-one-open-ionic-md-ltr-light-Mobile-Safari-linux.png differ
diff --git a/core/src/components/accordion/test/multiple/accordion.e2e.ts-snapshots/accordion-two-open-ionic-md-ltr-light-Mobile-Chrome-linux.png b/core/src/components/accordion/test/multiple/accordion.e2e.ts-snapshots/accordion-two-open-ionic-md-ltr-light-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..0ee4a92096
Binary files /dev/null and b/core/src/components/accordion/test/multiple/accordion.e2e.ts-snapshots/accordion-two-open-ionic-md-ltr-light-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/accordion/test/multiple/accordion.e2e.ts-snapshots/accordion-two-open-ionic-md-ltr-light-Mobile-Firefox-linux.png b/core/src/components/accordion/test/multiple/accordion.e2e.ts-snapshots/accordion-two-open-ionic-md-ltr-light-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..3886a7fb52
Binary files /dev/null and b/core/src/components/accordion/test/multiple/accordion.e2e.ts-snapshots/accordion-two-open-ionic-md-ltr-light-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/accordion/test/multiple/accordion.e2e.ts-snapshots/accordion-two-open-ionic-md-ltr-light-Mobile-Safari-linux.png b/core/src/components/accordion/test/multiple/accordion.e2e.ts-snapshots/accordion-two-open-ionic-md-ltr-light-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..b85f2fc321
Binary files /dev/null and b/core/src/components/accordion/test/multiple/accordion.e2e.ts-snapshots/accordion-two-open-ionic-md-ltr-light-Mobile-Safari-linux.png differ
diff --git a/core/src/components/accordion/test/multiple/accordion.e2e.ts-snapshots/accordion-zero-open-ionic-md-ltr-light-Mobile-Chrome-linux.png b/core/src/components/accordion/test/multiple/accordion.e2e.ts-snapshots/accordion-zero-open-ionic-md-ltr-light-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..e0587f8662
Binary files /dev/null and b/core/src/components/accordion/test/multiple/accordion.e2e.ts-snapshots/accordion-zero-open-ionic-md-ltr-light-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/accordion/test/multiple/accordion.e2e.ts-snapshots/accordion-zero-open-ionic-md-ltr-light-Mobile-Firefox-linux.png b/core/src/components/accordion/test/multiple/accordion.e2e.ts-snapshots/accordion-zero-open-ionic-md-ltr-light-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..fb910a9f50
Binary files /dev/null and b/core/src/components/accordion/test/multiple/accordion.e2e.ts-snapshots/accordion-zero-open-ionic-md-ltr-light-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/accordion/test/multiple/accordion.e2e.ts-snapshots/accordion-zero-open-ionic-md-ltr-light-Mobile-Safari-linux.png b/core/src/components/accordion/test/multiple/accordion.e2e.ts-snapshots/accordion-zero-open-ionic-md-ltr-light-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..8799053047
Binary files /dev/null and b/core/src/components/accordion/test/multiple/accordion.e2e.ts-snapshots/accordion-zero-open-ionic-md-ltr-light-Mobile-Safari-linux.png differ
diff --git a/core/src/components/accordion/test/states/accordion.e2e.ts b/core/src/components/accordion/test/states/accordion.e2e.ts
new file mode 100644
index 0000000000..0ed35b5931
--- /dev/null
+++ b/core/src/components/accordion/test/states/accordion.e2e.ts
@@ -0,0 +1,198 @@
+import { expect } from '@playwright/test';
+import { configs, test } from '@utils/test/playwright';
+
+configs({ directions: ['ltr'], modes: ['ionic-md'] }).forEach(({ config, screenshot, title }) => {
+ test.describe(title('accordion: states'), () => {
+ test('should render disabled state', async ({ page }) => {
+ await page.setContent(
+ `
+
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+ `,
+ config
+ );
+
+ const accordionGroup = page.locator('ion-accordion-group');
+
+ await expect(accordionGroup).toHaveScreenshot(screenshot('accordion-states-disabled'));
+ });
+
+ test('should render activated state', async ({ page }) => {
+ await page.setContent(
+ `
+
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+ `,
+ config
+ );
+
+ const accordionGroup = page.locator('ion-accordion-group');
+
+ await expect(accordionGroup).toHaveScreenshot(screenshot('accordion-states-activated'));
+ });
+
+ test('should render focused state', async ({ page }) => {
+ await page.setContent(
+ `
+
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+ `,
+ config
+ );
+
+ const accordionGroup = page.locator('ion-accordion-group');
+
+ await expect(accordionGroup).toHaveScreenshot(screenshot('accordion-states-focused'));
+ });
+
+ test('should render disabled state when group is inset', async ({ page }) => {
+ await page.setContent(
+ `
+
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+ `,
+ config
+ );
+
+ const accordionGroup = page.locator('ion-accordion-group');
+
+ await expect(accordionGroup).toHaveScreenshot(screenshot('accordion-states-inset-disabled'));
+ });
+
+ test('should render activated state when group is inset', async ({ page }) => {
+ await page.setContent(
+ `
+
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+ `,
+ config
+ );
+
+ const accordionGroup = page.locator('ion-accordion-group');
+
+ await expect(accordionGroup).toHaveScreenshot(screenshot('accordion-states-inset-activated'));
+ });
+
+ test('should render focused state when group is inset', async ({ page }) => {
+ await page.setContent(
+ `
+
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+ `,
+ config
+ );
+
+ const accordionGroup = page.locator('ion-accordion-group');
+
+ await expect(accordionGroup).toHaveScreenshot(screenshot('accordion-states-inset-focused'));
+ });
+ });
+});
diff --git a/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-activated-ionic-md-ltr-light-Mobile-Chrome-linux.png b/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-activated-ionic-md-ltr-light-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..78f98f9644
Binary files /dev/null and b/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-activated-ionic-md-ltr-light-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-activated-ionic-md-ltr-light-Mobile-Firefox-linux.png b/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-activated-ionic-md-ltr-light-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..6fea33f5d4
Binary files /dev/null and b/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-activated-ionic-md-ltr-light-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-activated-ionic-md-ltr-light-Mobile-Safari-linux.png b/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-activated-ionic-md-ltr-light-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..8e2661520a
Binary files /dev/null and b/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-activated-ionic-md-ltr-light-Mobile-Safari-linux.png differ
diff --git a/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-disabled-ionic-md-ltr-light-Mobile-Chrome-linux.png b/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-disabled-ionic-md-ltr-light-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..71c7700d21
Binary files /dev/null and b/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-disabled-ionic-md-ltr-light-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-disabled-ionic-md-ltr-light-Mobile-Firefox-linux.png b/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-disabled-ionic-md-ltr-light-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..f13421fd7c
Binary files /dev/null and b/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-disabled-ionic-md-ltr-light-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-disabled-ionic-md-ltr-light-Mobile-Safari-linux.png b/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-disabled-ionic-md-ltr-light-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..72a968c465
Binary files /dev/null and b/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-disabled-ionic-md-ltr-light-Mobile-Safari-linux.png differ
diff --git a/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-focused-ionic-md-ltr-light-Mobile-Chrome-linux.png b/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-focused-ionic-md-ltr-light-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..9062591742
Binary files /dev/null and b/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-focused-ionic-md-ltr-light-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-focused-ionic-md-ltr-light-Mobile-Firefox-linux.png b/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-focused-ionic-md-ltr-light-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..c60124c80f
Binary files /dev/null and b/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-focused-ionic-md-ltr-light-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-focused-ionic-md-ltr-light-Mobile-Safari-linux.png b/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-focused-ionic-md-ltr-light-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..91c841d813
Binary files /dev/null and b/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-focused-ionic-md-ltr-light-Mobile-Safari-linux.png differ
diff --git a/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-inset-activated-ionic-md-ltr-light-Mobile-Chrome-linux.png b/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-inset-activated-ionic-md-ltr-light-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..f6b961a63f
Binary files /dev/null and b/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-inset-activated-ionic-md-ltr-light-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-inset-activated-ionic-md-ltr-light-Mobile-Firefox-linux.png b/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-inset-activated-ionic-md-ltr-light-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..256e78a9bb
Binary files /dev/null and b/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-inset-activated-ionic-md-ltr-light-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-inset-activated-ionic-md-ltr-light-Mobile-Safari-linux.png b/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-inset-activated-ionic-md-ltr-light-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..9a1ed8e7ee
Binary files /dev/null and b/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-inset-activated-ionic-md-ltr-light-Mobile-Safari-linux.png differ
diff --git a/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-inset-disabled-ionic-md-ltr-light-Mobile-Chrome-linux.png b/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-inset-disabled-ionic-md-ltr-light-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..a00b621fbf
Binary files /dev/null and b/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-inset-disabled-ionic-md-ltr-light-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-inset-disabled-ionic-md-ltr-light-Mobile-Firefox-linux.png b/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-inset-disabled-ionic-md-ltr-light-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..b99924c13e
Binary files /dev/null and b/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-inset-disabled-ionic-md-ltr-light-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-inset-disabled-ionic-md-ltr-light-Mobile-Safari-linux.png b/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-inset-disabled-ionic-md-ltr-light-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..dac83064b3
Binary files /dev/null and b/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-inset-disabled-ionic-md-ltr-light-Mobile-Safari-linux.png differ
diff --git a/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-inset-focused-ionic-md-ltr-light-Mobile-Chrome-linux.png b/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-inset-focused-ionic-md-ltr-light-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..8e087e54bb
Binary files /dev/null and b/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-inset-focused-ionic-md-ltr-light-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-inset-focused-ionic-md-ltr-light-Mobile-Firefox-linux.png b/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-inset-focused-ionic-md-ltr-light-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..880e16966d
Binary files /dev/null and b/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-inset-focused-ionic-md-ltr-light-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-inset-focused-ionic-md-ltr-light-Mobile-Safari-linux.png b/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-inset-focused-ionic-md-ltr-light-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..1a95278c57
Binary files /dev/null and b/core/src/components/accordion/test/states/accordion.e2e.ts-snapshots/accordion-states-inset-focused-ionic-md-ltr-light-Mobile-Safari-linux.png differ
diff --git a/core/src/components/accordion/test/states/index.html b/core/src/components/accordion/test/states/index.html
new file mode 100644
index 0000000000..8fcc69360b
--- /dev/null
+++ b/core/src/components/accordion/test/states/index.html
@@ -0,0 +1,210 @@
+
+
+
+
+
Accordion - States
+
+
+
+
+
+
+
+
+
+
+
+
+ Accordion - States
+
+
+
+
+
+
Disabled
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+
+
Pressed
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+
+
Focused
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+
+
+
Disabled
+
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+
+
+
Pressed
+
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+
+
+
Focused
+
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+
+
+
+
Inset: Disabled
+
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+
+
+
Inset: Pressed
+
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+
+
+
Inset: Focused
+
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+
+ Accordion title
+
+ This is the body of the accordion.
+
+
+
+
+
+
+
+
diff --git a/core/src/components/item/item.common.scss b/core/src/components/item/item.common.scss
index 991cc9d671..10cb8a048d 100644
--- a/core/src/components/item/item.common.scss
+++ b/core/src/components/item/item.common.scss
@@ -191,6 +191,8 @@
background: var(--background);
+ line-height: inherit;
+
overflow: inherit;
z-index: 1;
diff --git a/core/src/components/item/item.ionic.scss b/core/src/components/item/item.ionic.scss
index 06c0e30902..211d21e913 100644
--- a/core/src/components/item/item.ionic.scss
+++ b/core/src/components/item/item.ionic.scss
@@ -83,6 +83,7 @@ slot[name="end"]::slotted(*) {
}
:host(.ion-focused) .item-native::after {
+ @include globals.border-radius(inherit);
@include globals.position(0, 0, 0, 0);
position: absolute;
diff --git a/core/src/components/item/test/states/item.e2e.ts-snapshots/item-states-diff-ionic-md-ltr-light-Mobile-Chrome-linux.png b/core/src/components/item/test/states/item.e2e.ts-snapshots/item-states-diff-ionic-md-ltr-light-Mobile-Chrome-linux.png
index d4eca3ff72..a8f2e98be3 100644
Binary files a/core/src/components/item/test/states/item.e2e.ts-snapshots/item-states-diff-ionic-md-ltr-light-Mobile-Chrome-linux.png and b/core/src/components/item/test/states/item.e2e.ts-snapshots/item-states-diff-ionic-md-ltr-light-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/item/test/states/item.e2e.ts-snapshots/item-states-diff-ionic-md-ltr-light-Mobile-Firefox-linux.png b/core/src/components/item/test/states/item.e2e.ts-snapshots/item-states-diff-ionic-md-ltr-light-Mobile-Firefox-linux.png
index d37e7a5b96..b9570d1191 100644
Binary files a/core/src/components/item/test/states/item.e2e.ts-snapshots/item-states-diff-ionic-md-ltr-light-Mobile-Firefox-linux.png and b/core/src/components/item/test/states/item.e2e.ts-snapshots/item-states-diff-ionic-md-ltr-light-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/item/test/states/item.e2e.ts-snapshots/item-states-diff-ionic-md-ltr-light-Mobile-Safari-linux.png b/core/src/components/item/test/states/item.e2e.ts-snapshots/item-states-diff-ionic-md-ltr-light-Mobile-Safari-linux.png
index 0e4485f9c0..a39adb72e9 100644
Binary files a/core/src/components/item/test/states/item.e2e.ts-snapshots/item-states-diff-ionic-md-ltr-light-Mobile-Safari-linux.png and b/core/src/components/item/test/states/item.e2e.ts-snapshots/item-states-diff-ionic-md-ltr-light-Mobile-Safari-linux.png differ
diff --git a/core/src/css/ionic/core.ionic.scss b/core/src/css/ionic/core.ionic.scss
index 95071e1ec9..928291ee32 100644
--- a/core/src/css/ionic/core.ionic.scss
+++ b/core/src/css/ionic/core.ionic.scss
@@ -310,6 +310,13 @@ ion-accordion-group.accordion-group-expand-inset > ion-accordion:last-of-type {
border-bottom-right-radius: globals.$ionic-border-radius-200;
}
+// The toggle icon is nested in the accordion item so we need to
+// style it from a global level.
+ion-accordion > [slot="header"] .ion-accordion-toggle-icon {
+ color: globals.$ionic-color-neutral-1000;
+ font-size: globals.$ionic-scale-600;
+}
+
ion-accordion.accordion-animated > [slot="header"] .ion-accordion-toggle-icon {
transition: 300ms transform cubic-bezier(0.25, 0.8, 0.5, 1);
}
@@ -331,6 +338,20 @@ ion-accordion.accordion-expanded > [slot="header"] .ion-accordion-toggle-icon {
transform: rotate(180deg);
}
+// Items inside of an accordion should have reduced padding
+// due to the padding added to the accordion content.
+ion-accordion > [slot="content"] ion-item {
+ @include globals.typography(globals.$ionic-body-md-regular);
+
+ color: globals.$ionic-color-neutral-1000;
+
+ --padding-start: 0;
+ --padding-top: #{globals.$ionic-space-300};
+ --padding-bottom: #{globals.$ionic-space-300};
+ --padding-end: 0;
+ --min-height: #{globals.$ionic-scale-700};
+}
+
// Safari/iOS 15 changes the appearance of input[type="date"].
// For backwards compatibility from Ionic 5/Safari 14 designs,
// we override the appearance only when using within an ion-input.