【问题标题】:React datepicker styling反应日期选择器样式
【发布时间】:2021-02-09 22:39:04
【问题描述】:

我的网页中有一个 react datepicker (https://reactdatepicker.com/) 组件。

理想情况下,当我点击日期时,popper 将充当页面上的元素(而不是 popper)。

理想的样子:

然而,目前发生了什么?

它的样子:

我试图弄乱样式以强制 popper 存在于页面中而不是顶部,但我真的不知道如何做到这一点(网络编程新手)。

有没有人知道从哪里开始强制日历组件表现得像第一张图片而不是第二张图片?将不胜感激。

我知道它可以内联,但我希望折叠行为 -> 点击日期 -> 打开日历。

【问题讨论】:

  • 您希望在用户单击日历时强制关闭其余内容?对我来说,这不是好的设计。你为什么要那个?

标签: javascript html css reactjs react-datepicker


【解决方案1】:

根据项目页面下方的example,您可以给日期选择器一个inline 属性以使其成为非popper,如下所示:

() => {
  const [startDate, setStartDate] = useState(new Date());
  return (
    <DatePicker
      selected={startDate}
      onChange={date => setStartDate(date)}
      inline
    />
  );
};

产生预期结果:

这样一来,您只需将日期/时间存储在 onChange 中任何需要的地方。

【讨论】:

  • 我知道内联属性,但是我想要实现的是一个日期选择器,如果需要,用户也可以在其中输入。目前我有日历内联和一个单独的文本字段,我正在(有点)验证,但我想看看是否有更多 css 经验的人可以想办法强制这种行为。第一个屏幕截图是一个内联 datePicker 和一个输入文本字段。日期选择器在文本验证方面做得很好,并考虑了语言环境等,这意味着它不仅仅是检查 mm/dd/yyyy
  • 该库似乎无法同时显示字段和内联选择器,但如果允许编辑本地副本,您可以更改 this line 以保留该字段when the picker is marked as inline.考虑到琐碎性,也许开发人员愿意为它添加一个额外的标志。
猜你喜欢
  • 1970-01-01
  • 2023-04-03
  • 2020-10-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-07-16
  • 1970-01-01
相关资源
最近更新 更多