【发布时间】:2021-07-12 14:09:16
【问题描述】:
我在docs 和其他地方读到& 指的是“回到主”样式组件,它位于其中。例如,在本例中,它指的是MyDiv,当 div 悬停时,div 的文本会变成红色:
const MyDiv = styled.div`
&:hover { color: red; }
`
文档还说,当 & 号不存在时,CSS 声明将引用组件的子组件,但是,我注意到,特别是对于像 :hover 这样的伪类,如果我省略 & 号行为仍然相同。例如,使用下面的代码,我认为 hover 仅适用于子 Text 跨度,但如果您只悬停 div,跨度中的文本仍会变为红色。
const MyDiv = styled.div`
:hover { color: red; }
// these other style declarations are provided just to help
// illustrate what happens if you want to try this in a code editor:
color: blue;
border: 1px solid black;
width: 100%;
padding: 10px;
`
const Text = styled.span`
border: 1px solid blue;
`
export default App() {
render(
<MyDiv>
<Text>Hello world</Text>
</MyDiv>
)
}
如果有人能帮助阐明这一点,我将不胜感激!
【问题讨论】:
标签: css reactjs styled-components