diff --git a/src/lib/slide-toggle/slide-toggle.spec.ts b/src/lib/slide-toggle/slide-toggle.spec.ts index e39739bced06..8fc548e2fe0e 100644 --- a/src/lib/slide-toggle/slide-toggle.spec.ts +++ b/src/lib/slide-toggle/slide-toggle.spec.ts @@ -348,6 +348,15 @@ describe('MatSlideToggle without forms', () => { expect(slideToggle.tabIndex) .toBe(5, 'Expected tabIndex property to have been set based on the native attribute'); })); + + it('should clear the tabindex from the host element', fakeAsync(() => { + const fixture = TestBed.createComponent(SlideToggleWithTabindexAttr); + + fixture.detectChanges(); + + const slideToggle = fixture.debugElement.query(By.directive(MatSlideToggle)).nativeElement; + expect(slideToggle.getAttribute('tabindex')).toBeFalsy(); + })); }); describe('custom action configuration', () => { diff --git a/src/lib/slide-toggle/slide-toggle.ts b/src/lib/slide-toggle/slide-toggle.ts index 0bd9f23cc912..ffb79f33a633 100644 --- a/src/lib/slide-toggle/slide-toggle.ts +++ b/src/lib/slide-toggle/slide-toggle.ts @@ -85,6 +85,7 @@ export const _MatSlideToggleMixinBase: host: { 'class': 'mat-slide-toggle', '[id]': 'id', + '[attr.tabindex]': 'null', '[class.mat-checked]': 'checked', '[class.mat-disabled]': 'disabled', '[class.mat-slide-toggle-label-before]': 'labelPosition == "before"',