diff --git a/src/lib/menu/menu-directive.ts b/src/lib/menu/menu-directive.ts
index e8e674e6beb4..52222e503d19 100644
--- a/src/lib/menu/menu-directive.ts
+++ b/src/lib/menu/menu-directive.ts
@@ -33,7 +33,6 @@ import {ESCAPE} from '../core/keyboard/keycodes';
@Component({
moduleId: module.id,
selector: 'md-menu, mat-menu',
- host: {'role': 'menu'},
templateUrl: 'menu.html',
styleUrls: ['menu.css'],
encapsulation: ViewEncapsulation.None,
diff --git a/src/lib/menu/menu.html b/src/lib/menu/menu.html
index 10972059e8c5..a4f41ded140b 100644
--- a/src/lib/menu/menu.html
+++ b/src/lib/menu/menu.html
@@ -1,9 +1,8 @@
-
diff --git a/src/lib/menu/menu.spec.ts b/src/lib/menu/menu.spec.ts
index ba0bdd194791..ab4d0a66b230 100644
--- a/src/lib/menu/menu.spec.ts
+++ b/src/lib/menu/menu.spec.ts
@@ -132,6 +132,18 @@ describe('MdMenu', () => {
expect(panel.classList).toContain('custom-two');
});
+ it('should set the "menu" role on the overlay panel', () => {
+ const fixture = TestBed.createComponent(SimpleMenu);
+ fixture.detectChanges();
+ fixture.componentInstance.trigger.openMenu();
+ fixture.detectChanges();
+
+ const menuPanel = overlayContainerElement.querySelector('.mat-menu-panel');
+
+ expect(menuPanel).toBeTruthy('Expected to find a menu panel.');
+ expect(menuPanel.getAttribute('role')).toBe('menu', 'Expected panel to have the "menu" role.');
+ });
+
describe('positions', () => {
let fixture: ComponentFixture;
let panel: HTMLElement;