使用 styled-components 的兄弟组件样式
Sibling component styling with styled-components
这是一个非常简单的案例,出于某种原因我无法开始工作。我有一个 styled-components
容器,我想在该容器内定义 p
的样式,如下所示:
const Container = styled.div`
& p {
margin: 0;
& + & {
margin-top: 10px;
}
}
`
因此,我希望每当 Container
中的 p
上有更多内容时,第二个 p
会得到 top-margin
,但这不会发生了。
这里是 codesandbox。
有什么想法吗?
我只是把条件倒过来了。
这是你想要的吗?
import styled from "styled-components";
const Container = styled.div`
background: grey;
& p:nth-child(1) {
margin: 0px;
}
& p {
margin-top: 10px;
}
`;
export default function App() {
return (
<div className="App">
<h1>Hello CodeSandbox</h1>
<h2>Start editing to see some magic happen!</h2>
<Container>
<p>Line One</p>
<p>Line Two</p>
<p>Line Two</p>
</Container>
</div>
);
}
这是一个非常简单的案例,出于某种原因我无法开始工作。我有一个 styled-components
容器,我想在该容器内定义 p
的样式,如下所示:
const Container = styled.div`
& p {
margin: 0;
& + & {
margin-top: 10px;
}
}
`
因此,我希望每当 Container
中的 p
上有更多内容时,第二个 p
会得到 top-margin
,但这不会发生了。
这里是 codesandbox。
有什么想法吗?
我只是把条件倒过来了。 这是你想要的吗?
import styled from "styled-components";
const Container = styled.div`
background: grey;
& p:nth-child(1) {
margin: 0px;
}
& p {
margin-top: 10px;
}
`;
export default function App() {
return (
<div className="App">
<h1>Hello CodeSandbox</h1>
<h2>Start editing to see some magic happen!</h2>
<Container>
<p>Line One</p>
<p>Line Two</p>
<p>Line Two</p>
</Container>
</div>
);
}