似乎这个问题已经以不同方式被问答和回答了很多次,但我看到的答案要么与情感无关,要么与情感相关的答案对我没有用。 我正在使用@emtion/core@10.0.28和@emtion/styled@10.0.27.
基本上我想在父元素悬停/活动/聚焦时对子组件应用样式。 父元素是一个按钮,子元素是一个可选图标。 以下样式是通过
第一段样式成功应用。因此,乍一看,按钮和子图标似乎已经正确地设置了样式。但是,当您悬停/聚焦/活动化按钮时,图标不会改变。我尝试了上面的实现,以及
基本上我想在父元素悬停/活动/聚焦时对子组件应用样式。 父元素是一个按钮,子元素是一个可选图标。 以下样式是通过
styled
语法添加到(父)按钮中的。const iconWrapperStyles = (props) => {
return css`
${props.IconWrapper} {
width: ${iconSizeMedium};
height: ${iconSizeMedium};
margin-left: ${spacingSizeSmall};
color: ${textColor};
fill: ${textColor};
background: ${backgroundColor};
border-color: ${borderColor};
}
&:hover:not(:disabled),
&:focus:not(:disabled),
&:active:not(:disabled) ${props.IconWrapper} {
outline: none;
color: ${textColorHover};
fill: ${textColorHover};
background: ${backgroundColorHover};
border-color: ${borderColorHover};
}
`;
};
第一段样式成功应用。因此,乍一看,按钮和子图标似乎已经正确地设置了样式。但是,当您悬停/聚焦/活动化按钮时,图标不会改变。我尝试了上面的实现,以及
... + ${IconWrapper}
和... & ${IconWrapper}
;对于我来说这三个都失败了。官方文档表明,&
应该管用。 官方文档