【发布时间】:2019-08-06 22:49:26
【问题描述】:
我正在为我的项目使用rc-time-picker 包,但我在自定义pop-up 组件的pop-up 样式时遇到问题。这是我的组件的屏幕截图:
首先,我需要将时间li中时间item的背景颜色从light grey(在屏幕截图中)更改为#edeffe,当时间悬停并选择时。以下是我的代码:
import React from "react";
import TimePicker from "rc-time-picker";
import "rc-time-picker/assets/index.css";
import styled from 'styled-components';
const StyledTimePicker = styled(TimePicker)`
&.rc-time-picker-panel-select-option-selected{
background-color: #edeffe !important;
}
`;
const DeliTimePicker = ({ value, onChange, ...others }) => {
return (
<StyledTimePicker
showSecond={false}
onChange={onChange}
hideDisabledOptions
minuteStep={5}
{...others}
value={value}
use12Hours
/>
);
};
export default DeliTimePicker;
通过在浏览器中的检查,我发现选中每个项目时的className 是rc-time-picker-panel-select-option-selected。我还必须在我的项目中使用styled component 包进行样式设置。我无法弄清楚为什么它不能通过这种方法工作。最终组件应如下所示:
这是代码框链接:https://codesandbox.io/s/kk8lllwwp7?fontsize=14
任何答案将不胜感激!
【问题讨论】:
-
&.不需要。
-
删除了还是不行。
-
试试添加这个 &:hover { background: #hexcode; }
-
他们仍然无法工作。通过在浏览器中检查,此 css 代码甚至没有出现在两种方法的
className下。 -
嗯,你能不能创建一个代码沙箱,我去看看
标签: javascript css reactjs frontend timepicker