我想更改<span />的样式,它不是输入的子元素。我试着用+和>找到+和>,但是我永远无法改变它。
可以用纯css/scss改变它的风格吗?
#input:hover,
#input:focus-within {
span { color: red; }
}<input type="search" id="input" value='' />
<div>
<span>My colour should change when hovering the input.</span>
</div>
发布于 2019-10-24 17:20:33
#input:hover+div>span,
#input:focus-within+div>span {
color: red;
}<input type="search" id="input" value='' />
<div>
<span>My colour should change when hovering the input.</span>
</div>
注意,不需要子组合器(>)组合器,但是它确保您只选择作为子子的span,而不是所有跨后代都应该有其他的。您也可以使用普通同胞组合器 (~),而不是相邻的,但在您的情况下,它的特殊性似乎更有帮助。
发布于 2019-10-24 17:28:36
您可以尝试以下代码:
input[type="search"]#input:hover ~ div span {
color: red;
}<input type="search" id="input" value='' />
<div>
<span>My colour should change when hovering the input.</span>
</div>
https://stackoverflow.com/questions/58546265
复制相似问题