diff --git a/core/src/components/label/test/basic/label.e2e.ts b/core/src/components/label/test/basic/label.e2e.ts
new file mode 100644
index 0000000000..dadaef4acf
--- /dev/null
+++ b/core/src/components/label/test/basic/label.e2e.ts
@@ -0,0 +1,49 @@
+import { expect } from '@playwright/test';
+import { test } from '@utils/test/playwright';
+
+test.describe('label: rendering', () => {
+ test('should not have visual regressions', async ({ page }) => {
+ await page.setContent(`
+ My Label
+ `);
+
+ const labelEl = page.locator('ion-label');
+
+ expect(await labelEl.screenshot()).toMatchSnapshot(`label-basic-${page.getSnapshotSettings()}.png`);
+ });
+ test('should not have visual regressions with fixed label', async ({ page }) => {
+ await page.setContent(`
+
+ My Label
+
+ `);
+
+ const itemEl = page.locator('ion-item');
+
+ expect(await itemEl.screenshot()).toMatchSnapshot(`label-fixed-${page.getSnapshotSettings()}.png`);
+ });
+ test('should not have visual regressions with stacked label', async ({ page }) => {
+ await page.setContent(`
+
+ My Label
+
+
+ `);
+
+ const itemEl = page.locator('ion-item');
+
+ expect(await itemEl.screenshot()).toMatchSnapshot(`label-stacked-${page.getSnapshotSettings()}.png`);
+ });
+ test('should not have visual regressions with floating label', async ({ page }) => {
+ await page.setContent(`
+
+ My Label
+
+
+ `);
+
+ const itemEl = page.locator('ion-item');
+
+ expect(await itemEl.screenshot()).toMatchSnapshot(`label-floating-${page.getSnapshotSettings()}.png`);
+ });
+});
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-basic-ios-ltr-Mobile-Chrome-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-basic-ios-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..e33057346a
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-basic-ios-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-basic-ios-ltr-Mobile-Firefox-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-basic-ios-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..250c52699a
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-basic-ios-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-basic-ios-ltr-Mobile-Safari-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-basic-ios-ltr-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..4ea17a97f7
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-basic-ios-ltr-Mobile-Safari-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-basic-ios-rtl-Mobile-Chrome-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-basic-ios-rtl-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..e33057346a
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-basic-ios-rtl-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-basic-ios-rtl-Mobile-Firefox-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-basic-ios-rtl-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..7799f68f00
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-basic-ios-rtl-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-basic-ios-rtl-Mobile-Safari-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-basic-ios-rtl-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..4ea17a97f7
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-basic-ios-rtl-Mobile-Safari-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-basic-md-ltr-Mobile-Chrome-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-basic-md-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..030a3ce6e7
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-basic-md-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-basic-md-ltr-Mobile-Firefox-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-basic-md-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..7d3ddc3ee2
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-basic-md-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-basic-md-ltr-Mobile-Safari-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-basic-md-ltr-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..8aada6fd05
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-basic-md-ltr-Mobile-Safari-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-basic-md-rtl-Mobile-Chrome-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-basic-md-rtl-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..030a3ce6e7
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-basic-md-rtl-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-basic-md-rtl-Mobile-Firefox-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-basic-md-rtl-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..ed0a714b4c
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-basic-md-rtl-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-basic-md-rtl-Mobile-Safari-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-basic-md-rtl-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..8aada6fd05
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-basic-md-rtl-Mobile-Safari-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-fixed-ios-ltr-Mobile-Chrome-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-fixed-ios-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..11c4414cd1
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-fixed-ios-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-fixed-ios-ltr-Mobile-Firefox-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-fixed-ios-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..3a7b8bec39
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-fixed-ios-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-fixed-ios-ltr-Mobile-Safari-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-fixed-ios-ltr-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..7482eb8543
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-fixed-ios-ltr-Mobile-Safari-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-fixed-ios-rtl-Mobile-Chrome-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-fixed-ios-rtl-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..6441a19d4f
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-fixed-ios-rtl-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-fixed-ios-rtl-Mobile-Firefox-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-fixed-ios-rtl-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..d73bfbec5d
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-fixed-ios-rtl-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-fixed-ios-rtl-Mobile-Safari-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-fixed-ios-rtl-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..9ed496ea08
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-fixed-ios-rtl-Mobile-Safari-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-fixed-md-ltr-Mobile-Chrome-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-fixed-md-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..b57d9e02ce
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-fixed-md-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-fixed-md-ltr-Mobile-Firefox-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-fixed-md-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..05421f682d
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-fixed-md-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-fixed-md-ltr-Mobile-Safari-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-fixed-md-ltr-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..c6b410fe99
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-fixed-md-ltr-Mobile-Safari-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-fixed-md-rtl-Mobile-Chrome-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-fixed-md-rtl-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..b22b4b912d
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-fixed-md-rtl-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-fixed-md-rtl-Mobile-Firefox-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-fixed-md-rtl-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..b45d34d780
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-fixed-md-rtl-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-fixed-md-rtl-Mobile-Safari-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-fixed-md-rtl-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..62861a21f9
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-fixed-md-rtl-Mobile-Safari-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-floating-ios-ltr-Mobile-Chrome-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-floating-ios-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..5ed5d91265
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-floating-ios-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-floating-ios-ltr-Mobile-Firefox-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-floating-ios-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..02fe3a1187
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-floating-ios-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-floating-ios-ltr-Mobile-Safari-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-floating-ios-ltr-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..98abc6789e
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-floating-ios-ltr-Mobile-Safari-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-floating-ios-rtl-Mobile-Chrome-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-floating-ios-rtl-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..d19defb6c6
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-floating-ios-rtl-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-floating-ios-rtl-Mobile-Firefox-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-floating-ios-rtl-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..a102328681
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-floating-ios-rtl-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-floating-ios-rtl-Mobile-Safari-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-floating-ios-rtl-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..3e4ee41ff9
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-floating-ios-rtl-Mobile-Safari-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-floating-md-ltr-Mobile-Chrome-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-floating-md-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..311a8fdfdb
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-floating-md-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-floating-md-ltr-Mobile-Firefox-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-floating-md-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..d9f5cd86f5
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-floating-md-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-floating-md-ltr-Mobile-Safari-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-floating-md-ltr-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..57442da3bd
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-floating-md-ltr-Mobile-Safari-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-floating-md-rtl-Mobile-Chrome-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-floating-md-rtl-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..1a3d06344f
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-floating-md-rtl-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-floating-md-rtl-Mobile-Firefox-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-floating-md-rtl-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..dd1a12c946
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-floating-md-rtl-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-floating-md-rtl-Mobile-Safari-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-floating-md-rtl-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..7a2e032342
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-floating-md-rtl-Mobile-Safari-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-stacked-ios-ltr-Mobile-Chrome-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-stacked-ios-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..23a3df7124
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-stacked-ios-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-stacked-ios-ltr-Mobile-Firefox-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-stacked-ios-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..e093feb79e
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-stacked-ios-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-stacked-ios-ltr-Mobile-Safari-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-stacked-ios-ltr-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..304a346d1c
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-stacked-ios-ltr-Mobile-Safari-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-stacked-ios-rtl-Mobile-Chrome-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-stacked-ios-rtl-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..36a245a1f0
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-stacked-ios-rtl-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-stacked-ios-rtl-Mobile-Firefox-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-stacked-ios-rtl-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..fa2814efb4
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-stacked-ios-rtl-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-stacked-ios-rtl-Mobile-Safari-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-stacked-ios-rtl-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..a460de31e2
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-stacked-ios-rtl-Mobile-Safari-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-stacked-md-ltr-Mobile-Chrome-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-stacked-md-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..2192ac0dc5
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-stacked-md-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-stacked-md-ltr-Mobile-Firefox-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-stacked-md-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..ec3a667863
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-stacked-md-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-stacked-md-ltr-Mobile-Safari-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-stacked-md-ltr-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..4bab8cecb2
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-stacked-md-ltr-Mobile-Safari-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-stacked-md-rtl-Mobile-Chrome-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-stacked-md-rtl-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..dceacab818
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-stacked-md-rtl-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-stacked-md-rtl-Mobile-Firefox-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-stacked-md-rtl-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..659828a08b
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-stacked-md-rtl-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-stacked-md-rtl-Mobile-Safari-linux.png b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-stacked-md-rtl-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..a610cfdfb1
Binary files /dev/null and b/core/src/components/label/test/basic/label.e2e.ts-snapshots/label-stacked-md-rtl-Mobile-Safari-linux.png differ
diff --git a/core/src/components/label/test/color/e2e.ts b/core/src/components/label/test/color/e2e.ts
deleted file mode 100644
index 69efc64917..0000000000
--- a/core/src/components/label/test/color/e2e.ts
+++ /dev/null
@@ -1,10 +0,0 @@
-import { newE2EPage } from '@stencil/core/testing';
-
-test('label: color', async () => {
- const page = await newE2EPage({
- url: '/src/components/label/test/color?ionic:_testing=true',
- });
-
- const compare = await page.compareScreenshot();
- expect(compare).toMatchScreenshot();
-});
diff --git a/core/src/components/label/test/color/label.e2e.ts b/core/src/components/label/test/color/label.e2e.ts
new file mode 100644
index 0000000000..7a1d5dc0cf
--- /dev/null
+++ b/core/src/components/label/test/color/label.e2e.ts
@@ -0,0 +1,46 @@
+import { expect } from '@playwright/test';
+import { test } from '@utils/test/playwright';
+
+test.describe('label: rendering', () => {
+ test.beforeEach(({ skip }) => {
+ skip.rtl();
+ });
+ test('should not inherit color from content', async ({ page }) => {
+ await page.goto(`/src/components/label/test/color`);
+
+ const item = page.locator('ion-item');
+
+ expect(await item.screenshot()).toMatchSnapshot(`item-color-inherit-${page.getSnapshotSettings()}.png`);
+ });
+ test('should set color directly', async ({ page }) => {
+ await page.setContent(`
+ Label Text
+ `);
+
+ const labelEl = page.locator('ion-label');
+
+ expect(await labelEl.screenshot()).toMatchSnapshot(`label-color-${page.getSnapshotSettings()}.png`);
+ });
+ test('should use contrast color when color is set on item', async ({ page }) => {
+ await page.setContent(`
+
+ Label Text
+
+ `);
+
+ const labelEl = page.locator('ion-label');
+
+ expect(await labelEl.screenshot()).toMatchSnapshot(`label-color-contrast-${page.getSnapshotSettings()}.png`);
+ });
+ test('should override color even if color set on item', async ({ page }) => {
+ await page.setContent(`
+
+ Label Text
+
+ `);
+
+ const labelEl = page.locator('ion-label');
+
+ expect(await labelEl.screenshot()).toMatchSnapshot(`label-color-override-${page.getSnapshotSettings()}.png`);
+ });
+});
diff --git a/core/src/components/label/test/color/label.e2e.ts-snapshots/item-color-inherit-ios-ltr-Mobile-Chrome-linux.png b/core/src/components/label/test/color/label.e2e.ts-snapshots/item-color-inherit-ios-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..69d2d875fc
Binary files /dev/null and b/core/src/components/label/test/color/label.e2e.ts-snapshots/item-color-inherit-ios-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/label/test/color/label.e2e.ts-snapshots/item-color-inherit-ios-ltr-Mobile-Firefox-linux.png b/core/src/components/label/test/color/label.e2e.ts-snapshots/item-color-inherit-ios-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..f55f4631d0
Binary files /dev/null and b/core/src/components/label/test/color/label.e2e.ts-snapshots/item-color-inherit-ios-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/label/test/color/label.e2e.ts-snapshots/item-color-inherit-ios-ltr-Mobile-Safari-linux.png b/core/src/components/label/test/color/label.e2e.ts-snapshots/item-color-inherit-ios-ltr-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..e7244a2b28
Binary files /dev/null and b/core/src/components/label/test/color/label.e2e.ts-snapshots/item-color-inherit-ios-ltr-Mobile-Safari-linux.png differ
diff --git a/core/src/components/label/test/color/label.e2e.ts-snapshots/item-color-inherit-md-ltr-Mobile-Chrome-linux.png b/core/src/components/label/test/color/label.e2e.ts-snapshots/item-color-inherit-md-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..fb3f727512
Binary files /dev/null and b/core/src/components/label/test/color/label.e2e.ts-snapshots/item-color-inherit-md-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/label/test/color/label.e2e.ts-snapshots/item-color-inherit-md-ltr-Mobile-Firefox-linux.png b/core/src/components/label/test/color/label.e2e.ts-snapshots/item-color-inherit-md-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..b77c968419
Binary files /dev/null and b/core/src/components/label/test/color/label.e2e.ts-snapshots/item-color-inherit-md-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/label/test/color/label.e2e.ts-snapshots/item-color-inherit-md-ltr-Mobile-Safari-linux.png b/core/src/components/label/test/color/label.e2e.ts-snapshots/item-color-inherit-md-ltr-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..b2517d553c
Binary files /dev/null and b/core/src/components/label/test/color/label.e2e.ts-snapshots/item-color-inherit-md-ltr-Mobile-Safari-linux.png differ
diff --git a/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-contrast-ios-ltr-Mobile-Chrome-linux.png b/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-contrast-ios-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..43a7283afb
Binary files /dev/null and b/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-contrast-ios-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-contrast-ios-ltr-Mobile-Firefox-linux.png b/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-contrast-ios-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..4af5bbdd57
Binary files /dev/null and b/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-contrast-ios-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-contrast-ios-ltr-Mobile-Safari-linux.png b/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-contrast-ios-ltr-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..9fbb7f9704
Binary files /dev/null and b/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-contrast-ios-ltr-Mobile-Safari-linux.png differ
diff --git a/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-contrast-md-ltr-Mobile-Chrome-linux.png b/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-contrast-md-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..4f17782da1
Binary files /dev/null and b/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-contrast-md-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-contrast-md-ltr-Mobile-Firefox-linux.png b/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-contrast-md-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..b213cf9ef5
Binary files /dev/null and b/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-contrast-md-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-contrast-md-ltr-Mobile-Safari-linux.png b/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-contrast-md-ltr-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..43096847bb
Binary files /dev/null and b/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-contrast-md-ltr-Mobile-Safari-linux.png differ
diff --git a/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-ios-ltr-Mobile-Chrome-linux.png b/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-ios-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..4bed9a348b
Binary files /dev/null and b/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-ios-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-ios-ltr-Mobile-Firefox-linux.png b/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-ios-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..9b27e351a4
Binary files /dev/null and b/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-ios-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-ios-ltr-Mobile-Safari-linux.png b/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-ios-ltr-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..1c90aaba2b
Binary files /dev/null and b/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-ios-ltr-Mobile-Safari-linux.png differ
diff --git a/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-md-ltr-Mobile-Chrome-linux.png b/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-md-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..b2d27d8cc9
Binary files /dev/null and b/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-md-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-md-ltr-Mobile-Firefox-linux.png b/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-md-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..2d50d32643
Binary files /dev/null and b/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-md-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-md-ltr-Mobile-Safari-linux.png b/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-md-ltr-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..e3d022eb8a
Binary files /dev/null and b/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-md-ltr-Mobile-Safari-linux.png differ
diff --git a/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-override-ios-ltr-Mobile-Chrome-linux.png b/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-override-ios-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..91a559d5a4
Binary files /dev/null and b/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-override-ios-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-override-ios-ltr-Mobile-Firefox-linux.png b/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-override-ios-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..6534ed4693
Binary files /dev/null and b/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-override-ios-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-override-ios-ltr-Mobile-Safari-linux.png b/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-override-ios-ltr-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..c40d6ab352
Binary files /dev/null and b/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-override-ios-ltr-Mobile-Safari-linux.png differ
diff --git a/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-override-md-ltr-Mobile-Chrome-linux.png b/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-override-md-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..15184ecd0a
Binary files /dev/null and b/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-override-md-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-override-md-ltr-Mobile-Firefox-linux.png b/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-override-md-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..8743f07cc7
Binary files /dev/null and b/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-override-md-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-override-md-ltr-Mobile-Safari-linux.png b/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-override-md-ltr-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..061eda96c5
Binary files /dev/null and b/core/src/components/label/test/color/label.e2e.ts-snapshots/label-color-override-md-ltr-Mobile-Safari-linux.png differ
diff --git a/core/src/components/label/test/floating/index.html b/core/src/components/label/test/floating/index.html
deleted file mode 100644
index f0d3f3665d..0000000000
--- a/core/src/components/label/test/floating/index.html
+++ /dev/null
@@ -1,122 +0,0 @@
-
-
-
-
- Label - Floating
-
-
-
-
-
-
-
-
-
-
-
-
- Label - Floating
-
-
-
-
-
-
- Default
-
-
-
- Input
-
-
-
-
- Textarea
-
-
-
-
- Datetime
-
-
-
-
- Select
-
- Option
-
-
-
-
-
-
- Placeholders
-
-
-
- Input
-
-
-
-
- Textarea
-
-
-
-
- Datetime
-
-
-
-
- Select
-
- Option
-
-
-
-
-
-
- Values
-
-
-
- Input
-
-
-
-
- Textarea
-
-
-
-
- Datetime
-
-
-
-
- Select
-
- Option
-
-
-
-
-
-
-
-
-
diff --git a/core/src/components/label/test/headings/e2e.ts b/core/src/components/label/test/headings/e2e.ts
deleted file mode 100644
index f9a89f56c8..0000000000
--- a/core/src/components/label/test/headings/e2e.ts
+++ /dev/null
@@ -1,10 +0,0 @@
-import { newE2EPage } from '@stencil/core/testing';
-
-test('label: headings', async () => {
- const page = await newE2EPage({
- url: '/src/components/label/test/headings?ionic:_testing=true',
- });
-
- const compare = await page.compareScreenshot();
- expect(compare).toMatchScreenshot();
-});
diff --git a/core/src/components/label/test/headings/label.e2e.ts b/core/src/components/label/test/headings/label.e2e.ts
new file mode 100644
index 0000000000..9592060497
--- /dev/null
+++ b/core/src/components/label/test/headings/label.e2e.ts
@@ -0,0 +1,13 @@
+import { expect } from '@playwright/test';
+import { test } from '@utils/test/playwright';
+
+test.describe('label: rendering', () => {
+ test.beforeEach(({ skip }) => {
+ skip.rtl();
+ });
+ test('should inherit text overflow for headings', async ({ page }) => {
+ await page.goto(`/src/components/label/test/headings`);
+
+ expect(await page.screenshot()).toMatchSnapshot(`item-headings-inherit-${page.getSnapshotSettings()}.png`);
+ });
+});
diff --git a/core/src/components/label/test/headings/label.e2e.ts-snapshots/item-headings-inherit-ios-ltr-Mobile-Chrome-linux.png b/core/src/components/label/test/headings/label.e2e.ts-snapshots/item-headings-inherit-ios-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..a7a97a05dd
Binary files /dev/null and b/core/src/components/label/test/headings/label.e2e.ts-snapshots/item-headings-inherit-ios-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/label/test/headings/label.e2e.ts-snapshots/item-headings-inherit-ios-ltr-Mobile-Firefox-linux.png b/core/src/components/label/test/headings/label.e2e.ts-snapshots/item-headings-inherit-ios-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..3fe03de153
Binary files /dev/null and b/core/src/components/label/test/headings/label.e2e.ts-snapshots/item-headings-inherit-ios-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/label/test/headings/label.e2e.ts-snapshots/item-headings-inherit-ios-ltr-Mobile-Safari-linux.png b/core/src/components/label/test/headings/label.e2e.ts-snapshots/item-headings-inherit-ios-ltr-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..35feb185d2
Binary files /dev/null and b/core/src/components/label/test/headings/label.e2e.ts-snapshots/item-headings-inherit-ios-ltr-Mobile-Safari-linux.png differ
diff --git a/core/src/components/label/test/headings/label.e2e.ts-snapshots/item-headings-inherit-md-ltr-Mobile-Chrome-linux.png b/core/src/components/label/test/headings/label.e2e.ts-snapshots/item-headings-inherit-md-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..27cf13f2f8
Binary files /dev/null and b/core/src/components/label/test/headings/label.e2e.ts-snapshots/item-headings-inherit-md-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/label/test/headings/label.e2e.ts-snapshots/item-headings-inherit-md-ltr-Mobile-Firefox-linux.png b/core/src/components/label/test/headings/label.e2e.ts-snapshots/item-headings-inherit-md-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..ebc435cb8b
Binary files /dev/null and b/core/src/components/label/test/headings/label.e2e.ts-snapshots/item-headings-inherit-md-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/label/test/headings/label.e2e.ts-snapshots/item-headings-inherit-md-ltr-Mobile-Safari-linux.png b/core/src/components/label/test/headings/label.e2e.ts-snapshots/item-headings-inherit-md-ltr-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..e00f6c744b
Binary files /dev/null and b/core/src/components/label/test/headings/label.e2e.ts-snapshots/item-headings-inherit-md-ltr-Mobile-Safari-linux.png differ
diff --git a/core/src/components/label/test/standalone/e2e.ts b/core/src/components/label/test/standalone/e2e.ts
deleted file mode 100644
index 8840935b9c..0000000000
--- a/core/src/components/label/test/standalone/e2e.ts
+++ /dev/null
@@ -1,10 +0,0 @@
-import { newE2EPage } from '@stencil/core/testing';
-
-test('label: standalone', async () => {
- const page = await newE2EPage({
- url: '/src/components/label/test/standalone?ionic:_testing=true',
- });
-
- const compare = await page.compareScreenshot();
- expect(compare).toMatchScreenshot();
-});
diff --git a/core/src/components/label/test/standalone/index.html b/core/src/components/label/test/standalone/index.html
deleted file mode 100644
index a628fda012..0000000000
--- a/core/src/components/label/test/standalone/index.html
+++ /dev/null
@@ -1,43 +0,0 @@
-
-
-
-
- Label - Standalone
-
-
-
-
-
-
-
-
-
- Default
- Default
- Wrap label this label just goes on and on and on
- Fixed
- Floating
- Stacked
-
- Colors
- Primary
- Secondary
- Tertiary
- Success
- Warning
- Danger
- Light
- Medium
- Dark
- Custom
-
-
-
-