处理样式组件中悬停的最佳方法是什么。我有一个包装元素,当悬停时会显示一个按钮。
我可以在组件上实现一些状态并在悬停时切换属性,但想知道是否有更好的方法来使用 styled-cmponents。
像下面这样的东西不起作用,但会是理想的:
const Wrapper = styled.div`
border-radius: 0.25rem;
overflow: hidden;
box-shadow: 0 3px 10px -3px rgba(0, 0, 0, 0.25);
&:not(:last-child) {
margin-bottom: 2rem;
}
&:hover {
.button {
display: none;
}
}
`
原文由 nickspiel 发布,翻译遵循 CC BY-SA 4.0 许可协议
从 styled-components v2 开始,您可以插入其他样式组件以引用它们自动生成的类名。在你的情况下,你可能想要做这样的事情:
有关更多信息,请参阅 文档!
组件的顺序很重要。只有在
Button
在Wrapper
之前/之前定义时,它才会起作用。如果您使用的是 v1 并且需要这样做,您可以使用自定义类名来解决它:
由于 v2 是 v1 的直接升级,我建议更新,但如果这不在卡片中,这是一个很好的解决方法。