diff --git a/core/src/components/menu-button/menu-button.ios.scss b/core/src/components/menu-button/menu-button.ios.scss
index 63927ab0974..c5d3abd75da 100644
--- a/core/src/components/menu-button/menu-button.ios.scss
+++ b/core/src/components/menu-button/menu-button.ios.scss
@@ -12,9 +12,9 @@
--padding-start: 5px;
--padding-end: 5px;
- height: 32px;
+ min-height: 32px;
- font-size: 31px;
+ font-size: dynamic-font-clamp(1, 31px, 1.23);
}
diff --git a/core/src/components/menu-button/menu-button.md.scss b/core/src/components/menu-button/menu-button.md.scss
index a28a2ffdd87..5065e5c492d 100644
--- a/core/src/components/menu-button/menu-button.md.scss
+++ b/core/src/components/menu-button/menu-button.md.scss
@@ -14,10 +14,10 @@
--padding-start: 8px;
--padding-end: 8px;
- width: 48px;
- height: 48px;
+ width: 3rem;
+ height: 3rem;
- font-size: 24px;
+ font-size: dynamic-font(24px);
}
diff --git a/core/src/components/menu-button/menu-button.scss b/core/src/components/menu-button/menu-button.scss
index 5290254e554..1cc38d63e4b 100644
--- a/core/src/components/menu-button/menu-button.scss
+++ b/core/src/components/menu-button/menu-button.scss
@@ -58,6 +58,8 @@
width: 100%;
height: 100%;
+ min-height: inherit;
+
border: 0;
outline: none;
@@ -86,6 +88,8 @@
width: 100%;
height: 100%;
+ min-height: inherit;
+
z-index: 1;
}
@@ -160,4 +164,4 @@ ion-icon {
:host(.in-toolbar:not(.in-toolbar-color)) {
color: #{var(--ion-toolbar-color, var(--color))};
-}
\ No newline at end of file
+}
diff --git a/core/src/components/menu-button/test/a11y/menu-button.e2e.ts b/core/src/components/menu-button/test/a11y/menu-button.e2e.ts
index aafaf92acdf..2f766052d91 100644
--- a/core/src/components/menu-button/test/a11y/menu-button.e2e.ts
+++ b/core/src/components/menu-button/test/a11y/menu-button.e2e.ts
@@ -2,7 +2,7 @@ import AxeBuilder from '@axe-core/playwright';
import { expect } from '@playwright/test';
import { configs, test } from '@utils/test/playwright';
-configs({ directions: ['ltr'] }).forEach(({ title, config }) => {
+configs({ directions: ['ltr'] }).forEach(({ title, screenshot, config }) => {
test.describe(title('menu-button: a11y'), () => {
test('should not have accessibility violations', async ({ page }) => {
await page.goto('/src/components/menu-button/test/a11y', config);
@@ -12,4 +12,28 @@ configs({ directions: ['ltr'] }).forEach(({ title, config }) => {
expect(results.violations).toEqual([]);
});
});
+ test.describe(title('menu-button: font scaling'), () => {
+ test('should scale text on larger font sizes', async ({ page }) => {
+ await page.setContent(
+ `
+
+
+
+
+
+
+
+ `,
+ config
+ );
+
+ const menuButton = page.locator('ion-menu-button');
+
+ await expect(menuButton).toHaveScreenshot(screenshot(`menu-button-scale`));
+ });
+ });
});
diff --git a/core/src/components/menu-button/test/a11y/menu-button.e2e.ts-snapshots/menu-button-scale-ios-ltr-Mobile-Chrome-linux.png b/core/src/components/menu-button/test/a11y/menu-button.e2e.ts-snapshots/menu-button-scale-ios-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 00000000000..1ca19582476
Binary files /dev/null and b/core/src/components/menu-button/test/a11y/menu-button.e2e.ts-snapshots/menu-button-scale-ios-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/menu-button/test/a11y/menu-button.e2e.ts-snapshots/menu-button-scale-ios-ltr-Mobile-Firefox-linux.png b/core/src/components/menu-button/test/a11y/menu-button.e2e.ts-snapshots/menu-button-scale-ios-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 00000000000..3a285dfebb9
Binary files /dev/null and b/core/src/components/menu-button/test/a11y/menu-button.e2e.ts-snapshots/menu-button-scale-ios-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/menu-button/test/a11y/menu-button.e2e.ts-snapshots/menu-button-scale-ios-ltr-Mobile-Safari-linux.png b/core/src/components/menu-button/test/a11y/menu-button.e2e.ts-snapshots/menu-button-scale-ios-ltr-Mobile-Safari-linux.png
new file mode 100644
index 00000000000..62653df9db3
Binary files /dev/null and b/core/src/components/menu-button/test/a11y/menu-button.e2e.ts-snapshots/menu-button-scale-ios-ltr-Mobile-Safari-linux.png differ
diff --git a/core/src/components/menu-button/test/a11y/menu-button.e2e.ts-snapshots/menu-button-scale-md-ltr-Mobile-Chrome-linux.png b/core/src/components/menu-button/test/a11y/menu-button.e2e.ts-snapshots/menu-button-scale-md-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 00000000000..0362d6d446d
Binary files /dev/null and b/core/src/components/menu-button/test/a11y/menu-button.e2e.ts-snapshots/menu-button-scale-md-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/menu-button/test/a11y/menu-button.e2e.ts-snapshots/menu-button-scale-md-ltr-Mobile-Firefox-linux.png b/core/src/components/menu-button/test/a11y/menu-button.e2e.ts-snapshots/menu-button-scale-md-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 00000000000..1bde18971b4
Binary files /dev/null and b/core/src/components/menu-button/test/a11y/menu-button.e2e.ts-snapshots/menu-button-scale-md-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/menu-button/test/a11y/menu-button.e2e.ts-snapshots/menu-button-scale-md-ltr-Mobile-Safari-linux.png b/core/src/components/menu-button/test/a11y/menu-button.e2e.ts-snapshots/menu-button-scale-md-ltr-Mobile-Safari-linux.png
new file mode 100644
index 00000000000..72168b2e312
Binary files /dev/null and b/core/src/components/menu-button/test/a11y/menu-button.e2e.ts-snapshots/menu-button-scale-md-ltr-Mobile-Safari-linux.png differ