diff --git a/src/material/menu/menu.html b/src/material/menu/menu.html
index d8988e08ef3f..c5f8d76784d0 100644
--- a/src/material/menu/menu.html
+++ b/src/material/menu/menu.html
@@ -1,22 +1,24 @@
 <ng-template>
-  <div
-    class="mat-mdc-menu-panel"
-    [id]="panelId"
-    [class]="_classList"
-    [class.mat-menu-panel-animations-disabled]="_animationsDisabled"
-    [class.mat-menu-panel-exit-animation]="_panelAnimationState === 'void'"
-    [class.mat-menu-panel-animating]="_isAnimating"
-    (click)="closed.emit('click')"
-    tabindex="-1"
-    role="menu"
-    (animationstart)="_onAnimationStart($event.animationName)"
-    (animationend)="_onAnimationDone($event.animationName)"
-    (animationcancel)="_onAnimationDone($event.animationName)"
-    [attr.aria-label]="ariaLabel || null"
-    [attr.aria-labelledby]="ariaLabelledby || null"
-    [attr.aria-describedby]="ariaDescribedby || null">
-    <div class="mat-mdc-menu-content">
-      <ng-content></ng-content>
+  <div role="dialog">
+    <div
+      class="mat-mdc-menu-panel"
+      [id]="panelId"
+      [class]="_classList"
+      [class.mat-menu-panel-animations-disabled]="_animationsDisabled"
+      [class.mat-menu-panel-exit-animation]="_panelAnimationState === 'void'"
+      [class.mat-menu-panel-animating]="_isAnimating"
+      (click)="closed.emit('click')"
+      tabindex="-1"
+      role="menu"
+      (animationstart)="_onAnimationStart($event.animationName)"
+      (animationend)="_onAnimationDone($event.animationName)"
+      (animationcancel)="_onAnimationDone($event.animationName)"
+      [attr.aria-label]="ariaLabel || null"
+      [attr.aria-labelledby]="ariaLabelledby || null"
+      [attr.aria-describedby]="ariaDescribedby || null">
+      <div class="mat-mdc-menu-content">
+        <ng-content></ng-content>
+      </div>
     </div>
   </div>
 </ng-template>