代码之家  ›  专栏  ›  技术社区  ›  deostroll

当我们将鼠标悬停在元素上并设置其边界时,如何避免震动?

  •  11
  • deostroll  · 技术社区  · 14 年前

    当我们将鼠标悬停在元素上并设置其边界时,如何避免震动?以下是我编写的代码示例:

    http://jsfiddle.net/s3N2h/

    有没有办法避免震动?假设我将鼠标悬停在文件上,就会出现边框,但由于边框被渲染,该文本行会向右移动一点。如果我们离开,它会再次摇晃。

    有没有什么CSS方法可以避免这种震动?

    2 回复  |  直到 14 年前
        1
  •  19
  •   Andy E    14 年前

    解决这个问题的通常方法是从一个透明的边框开始,然后在悬停时给边框一个颜色。

    我已经用这种方法更新了你的小提琴:

    http://jsfiddle.net/s3N2h/1/

    CSS和JavaScript:

    #my_menu li {
        border: 1px solid transparent;
    }
    li.hover(function() {
        $(this).css('border-color', 'white #808080 #808080 white');
    }, function() {
        $(this).css('border-color', 'transparent');
    });​
    
        2
  •  2
  •   Radomir Dopieralski    14 年前

    或者,在设置边框时,添加相同大小的负边距。