【发布时间】:2017-04-14 23:10:15
【问题描述】:
我已经阅读并尝试了解决我的问题的其他解决方案,但似乎都没有。
我有 3 张图片,每张图片都在各自的 4 列 div 中。我设置了一个 css 过渡,以便当用户的鼠标悬停在图像上时,这些图像从灰度渐变为彩色。我现在需要让一个按钮出现在悬停时。我附上了一张图片来说明我的意思。
这是中间 4 列的 HTML 和 CSS 的 sn-p。
---------HTML------------------ ---
<div class="small-4 columns">
<img src="/wp-content/themes/adamslaw/assets/img/woman.png">
<a class="button" href="/jane/">View Jane's Profile</a>
</div>
---------CSS------------------ ---
.greyish {
background: $smoke !important;
h1 {
margin: rem-calc(100) 0 0;
}
img {
filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#grayscale"); /* Firefox 3.5+ */
filter: gray; /* IE6-9 */
-webkit-filter: grayscale(100%); /* Chrome 19+ & Safari 6+ */
-o-transition:.5s;
-ms-transition:.5s;
-moz-transition:.5s;
-webkit-transition:.5s;
transition:.5s;
}
img:hover {
filter: none;
-webkit-filter: grayscale(0%);
.button:hover {
display: inline-block;
}
}
}
注意:我使用的是 SCSS,因此看起来很奇怪,嵌套的 CSS 规则。
【问题讨论】:
-
我将鼠标悬停在包装元素上,然后使用它来更改图像并显示按钮。
-
如果 .button 最初是 display: none,则用户无法将鼠标悬停在其上,您的 SCSS 需要这样才能更改显示属性。尝试从 .button 中删除 :hover 并使用它。
-
@BjornJohnson 不应该在那里!我在取出所有失败的代码时忘记删除它。