材质UI对话框的阴影去除

时间:2020-10-30 01:15:42

标签: javascript css reactjs material-ui

我当前正在使用“材质UI”对话框来显示有关位置标记的一些信息。我想禁用组件周围的难看的盒子阴影。我设置了box-shadow: none并尝试了多种解决方案,但似乎都没有用!

屏幕截图enter image description here

这是我对此组件的代码

const useStyles = makeStyles({
  root: {
    maxWidth: '400px',
    marginLeft: '5px',
    width: '446px',
    height: '200px',
    marginTop: '50px',
    overflow: 'hidden',
    boxShadow: 'none',
  },
  closeButton: {
    color: Colours.Black,
    float: 'right',
    paddingTop: '15px',
    marginRight: '5px',
    marginLeft: 'auto',
    height: '24px',
    width: '24px',
  },
  flexContainerContent: {
    display: 'flex',
    justifyContent: 'space-between',
    paddingRight: '10px',
  },
  flexContainerButtons: {
    display: 'flex',
    justifyContent: 'space-between',
    padding: '0px 18px 15px 18px',
  },
});

const InfoWindow = ({
  title,
  address,
  open,
  handleClose,
}: {
  title: string;
  address: string;
  open: boolean;
  handleClose: () => void;
}) => {
  const infoStyles = useStyles();

  return (
    <Dialog
      classes={{ root: infoStyles.root }}
      open={open}
      onClose={handleClose}
      hideBackdrop
      disableEnforceFocus
    >
      <Container classes={{ root: infoStyles.flexContainerContent }}>
        <DialogContent style={{ overflow: 'hidden', paddingLeft: '0px', boxShadow: 'none' }}>
          <Typography variant="body1" color="textSecondary">
            Name:
            <span
              style={{ display: 'inline', color: Colours.Black }}
              color="textPrimary"
            >
              {` ${title} `}
            </span>
          </Typography>
          <Typography variant="body1" color="textSecondary">
            Location:
            <span
              style={{ display: 'inline', color: Colours.Black }}
              color="textPrimary"
            >
              {` ${address} `}
            </span>
          </Typography>
        </DialogContent>
        <CloseIcon
          onClick={handleClose}
          classes={{ root: infoStyles.closeButton }}
        />
      </Container>
      <DialogActions style={{ padding: '0px', boxShadow: 'none' }}>
        <Container classes={{ root: infoStyles.flexContainerButtons }}>
          <Button size="small" style={{ color: Colours.Danger }}>
            Delete
          </Button>
          <Button size="small" style={{ color: Colours.Secondary }}>
            Edit
          </Button>
        </Container>
      </DialogActions>
    </Dialog>
  );
};

export default InfoWindow;

非常感谢您提供任何帮助或建议!

1 个答案:

答案 0 :(得分:0)

您需要在对话框内定位纸张。 一种方法是添加此 CSS 规则:

.MuiDialog-container .MuiPaper-root {
    box-shadow: none;
}