【发布时间】:2015-12-04 09:23:26
【问题描述】:
我有<input type="text"/> 和:hover 上的样式,例如:
input:hover {
border-color: red;
}
我想在我的输入中添加搜索图标。当我将鼠标悬停在图标上时,输入:hover 样式效果很好,试试吧:
input, span {
display: inline-block;
vertical-align: middle;
height: 30px;
}
input:hover {
border-color: red;
}
span {
background: url(https://cdn1.iconfinder.com/data/icons/hawcons/32/698627-icon-111-search-128.png) 50% 50%/100% 100% no-repeat;
width: 25px;
height: 25px;
}
<label>
<input type="text"/>
<span></span>
</label>
但如果我将搜索图标直观地放在输入上,则当我将图标悬停时,输入 :hover 样式将不适用:
label {
position: relative;
}
input, span {
display: inline-block;
vertical-align: middle;
height: 30px;
}
input:hover {
border-color: red;
}
span {
background: url(https://cdn1.iconfinder.com/data/icons/hawcons/32/698627-icon-111-search-128.png) 50% 50%/100% 100% no-repeat;
width: 25px;
height: 25px;
position: absolute;
top: -4px;
right: 4px;
}
<label>
<input type="text"/>
<span></span>
</label>
问题:我可以解决这个问题吗?当我将输入悬停在任何点时,我想应用输入 :hover 样式。
PS 我知道我可以在<label> 上设置:hover 样式或使用Javascript/jQuery 设置它,但我不想这样做,因为我有很多使用@987654335 的案例@ 而在其他情况下,我没有<label> 和一个图标,只有<input>。我想要没有它的解决方案。
【问题讨论】:
标签: html css css-selectors hover pseudo-class