如何将我的:: after元素悬停在样式化组件中

时间:2019-05-24 08:56:59

标签: css pseudo-element gatsby styled-components

我尝试使用样式化的组件将::after元素悬停,但是它不起作用。

下面,我粘贴了我希望可以正常运行的代码,但效果不佳。

const Div = styled.div`
display:flex;
flex-direction:column;
justify-content:center;
align-items:center;
postition:relative;
&::after{
  content: '';
  background:rgba(255, 193, 5, 1);
  position:absolute;
  top:60%;
  left:-15%;
  width:20vw;
  height:20vw;
  border-radius:50%;
  &:hover{
    transform: scale(1.2);
  }
}
`

1 个答案:

答案 0 :(得分:1)

您不能在:hover伪元素上使用::after。您可以在this blog by Martin Wolf中了解有关此内容的更多信息。

您提供的代码并不是最好的处理方式,因为项目的上下文不多,但在Sass中应该看起来像这样(我假设您正在使用?)。

.example-container {
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    postition:relative;

    &::after{
        content: '';
        background:rgba(255, 193, 5, 1);
        position:absolute;
        top:60%;
        left:-15%;
        width:20vw;
        height:20vw;
        border-radius:50%;
    }

    &:hover {
        &::after {
            transform: scale(1.2);
        }
    }
}