From 89a79e2cd17b24b7d6729ef840d44b53eb938421 Mon Sep 17 00:00:00 2001 From: crisbeto Date: Fri, 4 Aug 2017 18:40:04 +0200 Subject: [PATCH] fix(input): required asterisk being read out by screen readers Fixes the asterisk that gets added after a required input being read out by screen readers. --- src/lib/input/input-container.html | 5 ++++- src/lib/input/input-container.spec.ts | 9 +++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/src/lib/input/input-container.html b/src/lib/input/input-container.html index 05b9ebabb24f..3e2de133f9cc 100644 --- a/src/lib/input/input-container.html +++ b/src/lib/input/input-container.html @@ -17,7 +17,10 @@ *ngIf="_hasPlaceholder()"> {{_mdInputChild.placeholder}} - * + diff --git a/src/lib/input/input-container.spec.ts b/src/lib/input/input-container.spec.ts index 58cd7889fbc4..6aac7aa5eb37 100644 --- a/src/lib/input/input-container.spec.ts +++ b/src/lib/input/input-container.spec.ts @@ -377,6 +377,15 @@ describe('MdInputContainer without forms', function () { expect(el.nativeElement.textContent).toMatch(/hello\s+\*/g); }); + it('should hide the required star from screen readers', () => { + let fixture = TestBed.createComponent(MdInputContainerPlaceholderRequiredTestComponent); + fixture.detectChanges(); + + let el = fixture.debugElement.query(By.css('.mat-placeholder-required')).nativeElement; + + expect(el.getAttribute('aria-hidden')).toBe('true'); + }); + it('hide placeholder required star when set to hide the required marker', () => { let fixture = TestBed.createComponent(MdInputContainerPlaceholderRequiredTestComponent); fixture.detectChanges();