【问题标题】:How to get border-radius to stay on hover effect如何让边界半径保持悬停效果
【发布时间】:2014-01-09 14:23:26
【问题描述】:

我创建了一个只是图像的 div,但是当悬停时,原始 div 被另一个带有一些文本和纯色背景的 div 掩盖。

这就是我在 jsfiddle 中的意思:'Mask on Hover'

代码似乎都可以正常工作,包括一些不错的 css 转换。我遇到的问题是原始 div 和蒙版 div 都有一个边界半径,但是当我将鼠标悬停在它们上面时,边界半径消失了一秒钟然后突然返回。出于某种原因,它有时也会出现故障,并且在我悬停时完全没有边界半径。

有什么办法可以防止这种情况发生吗?也许一种无论如何都可以将内容保留在该 div 中的方法?我尝试过使用overflow:none 以及实际使用border,但它继续发生。

【问题讨论】:

    标签: html css css-transitions


    【解决方案1】:

    您也在为边界半径设置动画。这意味着当您悬停或取消悬停时,边框从正方形开始,然后作为动画的一部分进入半径。

    【讨论】:

    • 哦,我明白了,好点子!有没有办法为 div 而不是边界半径设置动画?换句话说,有没有办法保持相同的功能而不是动画边框?
    • 抱歉花了点时间 - 如果你将视图 img 的所有转换属性更改为转换转换(和 -webkit-transition -webkit-transform),它应该避免为边界半径设置动画。但是,显然 webkit 浏览器中存在一个错误,即在转换后应用边框半径,这意味着无论如何都会显示方角。 stackoverflow.com/questions/16687023/…
    【解决方案2】:

    您可以使用图像的父 div 执行此操作:

    position: relative;
    z-index: 99;

    希望一切顺利。

    【讨论】:

      猜你喜欢
      • 2015-09-10
      • 2016-03-17
      • 1970-01-01
      • 2014-07-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-25
      相关资源
      最近更新 更多