css react-date-picker in Material ui对话框关闭日期选择器

t1qtbnec  于 2023-05-19  发布在  React
关注(0)|答案(3)|浏览(178)

嗨,我有Datepicker(基于react-date-picker包)在Material ui Dialog中。Dialog工作完美,但当我点击Datepicker时,它向下滚动并切断和滚动显示。
这是我的Example我如何克服这个与css
溢出滚动无法解决这个问题,因为我有一个列表项

ut6juiuv

ut6juiuv1#

您正在使用react-date-pickermaterial-ui<Dialog>组件,问题是日期选择器呈现在Dialog的DOM中,因此它被阻挡在对话框的可见部分。
基于react-date-picker的API,无法更改元素以呈现日期选择器框,因此一个选项是使用另一个日期选择器。
您可以使用材料拾取器组件:

import DateFnsUtils from "@date-io/date-fns";
import { MuiPickersUtilsProvider } from "@material-ui/pickers";
import { DatePicker } from "@material-ui/pickers";

<Dialog open={true} aria-labelledby="form-dialog-title">
  <DialogContent>
    <DialogContentText>
      Lorem ipsum, or lipsum as it is sometimes known, is dummy text used
      in laying out print, graphic or web designs. The passage is
      attributed to an unknown typesetter in the 15th century
    </DialogContentText>
    <MuiPickersUtilsProvider utils={DateFnsUtils}>
      <DatePicker />
    </MuiPickersUtilsProvider>
  </DialogContent>
  <DialogActions>
    <Button>ok</Button>
  </DialogActions>
</Dialog>

在这里检查:https://codesandbox.io/s/material-datepicker-inside-dialog-i6wts
您可以在API docs中找到材质日期选择器的所有选项。

plicqrtu

plicqrtu2#

我已经解决了这个问题。请注意,这只适用于某些情况。因为在我的情况下,截止问题只发生在第一行。您可以在CSS中使用第一个子元素进行修复
我已经应用的立场,以日历只有当它在第一个孩子

.react-calendar {

position: fixed !important;
top: calc(100% - 479px) !important;

}

如果你有问题,请先修改你的模型。这只会在使用on模式时发生。
我只是一个CSS的初学者,所以这一个是第一个,它为我工作。谢谢@Dekel

sg24os4d

sg24os4d3#

我也有这个问题,我的解决方法是在拾取器根上设置一个max-height:
.MuiYearPicker-root{ max-height: 200px; }
这使选择器对话框保持在文本字段的上方而不是下方,并且防止其被其中的模态切断。

相关问题