样式组件的 Nth-child 不工作
Nth-child of styled component not working
我创建了一个名为 FilterOptions 的 ReactComponet。我将像这样使用它:
<Filter>
<FilterOptions> example1 </FilterOptions>
<FilterOptions> example2 </FilterOptions>
<FilterOptions> example3 </FilterOptions>
<Filter>
我只希望第一个 "FilterOptions" 有红色背景。
在 FilterOptions 内部,最外面的 Container 有一个 &:nth-child(1),我正在尝试使用它,但由于某种原因不起作用? :
export const Container = styled.div
background: ${({theme}) => theme.COLORS.HIGHLIGHT};
padding: 8px 14px;
margin-top: 15px;
border-radius: 18px;
display: flex;
flex-flow: row nowrap;
align-items: center;
&:nth-child(1) {
background: red;
height: 200px;
width: 300px;
margin: 200px;
};
;
我已经尝试了很多组合,例如 &:nth-child(1)、:nth-child(1)、::nth-child(1)、&&:nth-child(1)。不知道这里有什么问题。
您的样式化组件名为 Container,而您的 FilterOptions 位于名为 Filter 的组件内。所以当然不行。试试这个:
<Container>
<FilterOptions> example1 </FilterOptions>
<FilterOptions> example2 </FilterOptions>
<FilterOptions> example3 </FilterOptions>
<Container>
顺便说一下,你的 css 语法 &:nth-child(1) 是正确的
只需对 HermitCrab 的回答稍作改动,我的样式组件就可以正常工作:
<Filter>
<Container> example1 </FilterOptions>
<Container> example2 </FilterOptions>
<Container> example3 </FilterOptions>
<Filter>
因为 &:nth-child(1) 检查组件本身是否是第一个子组件(在本例中为容器)
我创建了一个名为 FilterOptions 的 ReactComponet。我将像这样使用它:
<Filter>
<FilterOptions> example1 </FilterOptions>
<FilterOptions> example2 </FilterOptions>
<FilterOptions> example3 </FilterOptions>
<Filter>
我只希望第一个 "FilterOptions" 有红色背景。
在 FilterOptions 内部,最外面的 Container 有一个 &:nth-child(1),我正在尝试使用它,但由于某种原因不起作用? :
export const Container = styled.div
background: ${({theme}) => theme.COLORS.HIGHLIGHT};
padding: 8px 14px;
margin-top: 15px;
border-radius: 18px;
display: flex;
flex-flow: row nowrap;
align-items: center;
&:nth-child(1) {
background: red;
height: 200px;
width: 300px;
margin: 200px;
};
;
我已经尝试了很多组合,例如 &:nth-child(1)、:nth-child(1)、::nth-child(1)、&&:nth-child(1)。不知道这里有什么问题。
您的样式化组件名为 Container,而您的 FilterOptions 位于名为 Filter 的组件内。所以当然不行。试试这个:
<Container>
<FilterOptions> example1 </FilterOptions>
<FilterOptions> example2 </FilterOptions>
<FilterOptions> example3 </FilterOptions>
<Container>
顺便说一下,你的 css 语法 &:nth-child(1) 是正确的
只需对 HermitCrab 的回答稍作改动,我的样式组件就可以正常工作:
<Filter>
<Container> example1 </FilterOptions>
<Container> example2 </FilterOptions>
<Container> example3 </FilterOptions>
<Filter>
因为 &:nth-child(1) 检查组件本身是否是第一个子组件(在本例中为容器)