html - 我的 :hover selector is interrupted by text, 我该如何解决这个问题?

标签 html css hover css-selectors pseudo-class

所以我的问题是我有一个图像,当我将鼠标悬停在它上面时,框阴影会改变颜色。但是,我在图像上也有一些文本在单击图像时会发生变化,问题是文本所在的区域阻止了我的框阴影生效。仅当我将鼠标悬停在未被文本占据的图像部分上时,阴影才会起作用。有没有什么办法解决这一问题?我也刚刚意识到这会影响我点击功能,因为文本可能会阻止我点击图片。

HTML:

//The next pickaxe price
<p id="picklvl">Upgrade Pickaxe $<span id="picklvlc">5000</span></p>


//My location for my img
<img id="buy2" src="img/buy2.png">

CSS:

// Text that displays price of next pickaxe
#picklvl { 
    z-index: 100;
    position: absolute;
    font-family: fantasy;
    top: 52%;
    left: 55px;
    font-size: 15px;
    width: 130px;
}

// Gives location + shadow to my buy2 image
#buy2 {  
    position: absolute;
    top: 60%;
    left: 13px;
    box-shadow: 5px 5px 5px black;
    border: 1px solid;
    border-radius: 5px;
    z-index: -1;
}

// When I hover over buy2, shadow changes color
#buy2:hover { 
    box-shadow: 5px 5px 5px #272727;
}

最佳答案

您的文本位于图像之上,因此悬停不起作用是浏览器的正常行为。因为文本和图像不在彼此内部,而是在 DOM 中处于同一级别的元素,所以您一次只能悬停一个。

当文本悬停时也应用效果的修复:

#buy2:hover,
#picklvl:hover ~ #buy2 { 
    box-shadow: 5px 5px 5px #272727;
}

关于html - 我的 :hover selector is interrupted by text, 我该如何解决这个问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25965045/

相关文章:

php - 没有在 div 中显示数据库用户,以用户获取 0 登录

html - 区域 map 悬停隐藏在 DIV 元素后面

html - 如何制作没有水平滚动的悬停菜单?

html - 文字装饰不起作用?在 HTML/CSS 中

html - 在 div 悬停时更改其他 div css

javascript - 记住来自不同页面的表单字段的值

JavaScript 单选按钮 html 网络表单

css - 如何为 calc 添加 webkit 支持?

css - 避免悬停过渡时文本和背景颜色的不同变化速度

javascript - Jquery .hover 添加一个类 - 或者 Child :hover to affect parent?