diff --git a/packages/mui-material/src/Drawer/Drawer.js b/packages/mui-material/src/Drawer/Drawer.js
index b7c1aca48129a4..f1c1d0366c48d6 100644
--- a/packages/mui-material/src/Drawer/Drawer.js
+++ b/packages/mui-material/src/Drawer/Drawer.js
@@ -23,7 +23,7 @@ const overridesResolver = (props, styles) => {
return [
styles.root,
(ownerState.variant === 'permanent' || ownerState.variant === 'persistent') && styles.docked,
- styles.modal,
+ ownerState.variant === 'temporary' && styles.modal,
];
};
diff --git a/packages/mui-material/src/Drawer/Drawer.test.js b/packages/mui-material/src/Drawer/Drawer.test.js
index b67d771cd081bc..e5bd91f3188f39 100644
--- a/packages/mui-material/src/Drawer/Drawer.test.js
+++ b/packages/mui-material/src/Drawer/Drawer.test.js
@@ -450,4 +450,36 @@ describe('', () => {
expect(document.querySelector(`.${classes.root}`)).to.have.class(classes.anchorBottom);
});
});
+
+ ['permanent', 'persistent'].forEach((variant) => {
+ it.skipIf(isJsdom())(
+ `should not apply modal styles from theme styleOverrides for variant=${variant}`,
+ () => {
+ const theme = createTheme({
+ components: {
+ MuiDrawer: {
+ styleOverrides: {
+ modal: {
+ backgroundColor: 'rgb(0, 0, 255)',
+ },
+ },
+ },
+ },
+ });
+
+ const { container } = render(
+
+
+
+
+ ,
+ );
+
+ const root = container.querySelector(`.${classes.root}`);
+ expect(root).not.toHaveComputedStyle({
+ backgroundColor: 'rgb(0, 0, 255)',
+ });
+ },
+ );
+ });
});