我正在使用webpack,react-datepicker,并且已经设法用提供的css模块导入了它的css。import 'react-datepicker/dist/react-datepicker-cssmodules.css
组件看起来很好,但现在我想让它像上面的时间元素一样全宽。
看一下CSS,它需要的是库动态添加的react-datepicker-wrapper
元素具有display: block
。我在自己的css中对react-datepicker-wrapper
所做的任何修改都没有任何作用。
我该怎么办?
日期选取器.组件.jsx
import React from 'react';
import DatePicker from 'react-datepicker';
import 'react-datepicker/dist/react-datepicker-cssmodules.css';
import './date-picker.component.bootstrap.css';
// eslint-disable-next-line no-confusing-arrow
const buildClassNames = (touched, isInvalid) =>
touched && isInvalid ? 'form-control is-invalid' : 'form-control';
export const DatePickerBootstrap = (props) => {
const { setFieldValue, setFieldTouched, errors, touched } = props;
const { name, value, label, ...rest } = props;
return (
<div className="form-group">
<label className='datePickerLabel' htmlFor={name}>{label}</label>
<DatePicker
selected={value}
onChange={(e) => {
setFieldValue(name, e);
setFieldTouched(name);
}}
className={buildClassNames(touched, !!errors)}
customInput={
<input
type="text"
id={name}
placeholder={label} />
}
{...rest}
/>
<div className="invalid-feedback">
{errors}
</div>
</div>
);
};
export default DatePickerBootstrap;
9条答案
按热度按时间laawzig21#
我想你只是缺少了一些CSS。在你的自定义样式表中试试这个(在日期选择器样式表之后的任何地方):
Demo
vom3gejh2#
来自https://github.com/Hacker0x01/react-datepicker/issues/2099#issuecomment-704194903
尝试使用wrapperClassName属性:
CSS:
这样,您就不必修改整个应用程序的样式
样式组件奖励:
pxq42qpu3#
样式化组件
ct3nt3jp4#
你可以通过把!important放在行的末尾来得到你的css工作:
并且,您应该在最后导入您的css文件:
zynd9foi5#
覆盖默认的css,如
working example
xoshrz7s6#
你可以把它放在一个flexbox里面。
如果您使用的是引导程序,则可以在 Package 元素上使用
d-flex
和flex-column
类。如果没有,您可以使用CSS属性设定 Package 函数的样式。
CSS:
zqry0prt7#
可以向样式表中添加:
}
Output
dgjrabp28#
您可以使用选取器的每个元素的类来覆盖其默认样式,使用检查工具可以标识每个元素的类,如果不应用新样式,则可以使用**!important**属性来覆盖默认样式
以下代码适用于大多数选取器元素
8yoxcaq79#
来自https://github.com/Hacker0x01/react-datepicker/issues/2099#issuecomment-704194903
尝试