如何在悬停时为元素设置动画



悬停时,如何使<div>元素增长(并且内容将文本大小更改为更大)?我把它们放在一个班上,试着:

size: 150%;

height: +30px;
width: +30px;

第一次尝试根本不起作用,第二次代码只是使div的flash和diss部分出现。

CSS3解决方案:

div {
    background: #999;
    width: 200px;
    height: 20px; 
    transition: width 1s;
}
div:hover{
    width: 300px;
}
<div>
    <p>Im content</p>
</div>

http://jsfiddle.net/MrdvW/

我针对类似的问题做了类似的事情(你可以将比例更改为适合你的):

div:hover {
 -webkit-transform: scale(1.1);
 -moz-transform:    scale(1.1);
 -o-transform:      scale(1.1);
 -ms-transform:     scale(1.1);
}

请注意,这将缩放div及其内容,我认为这正是您想要的。

使用CSS可以将悬停样式添加到div:

div.container {
    width: 80%;
    background-color: blue;
}
div.container:hover {
    width: 100%;
    background-color: red;
}

请参阅此jsFiddle进行演示。

jQuery解决方案

另一个可能对您有用的选项是jQuery。这是一个JavaScript库,它简化了像这样常见的功能。使用jQuery,您可以很容易地将悬停效果添加到元素中:

//hover effect applies to any elements using the 'container' class
$(".container").hover(
    function(){ //mouse over
        $(this).width($(this).width() + 30);
    },
    function(){ //mouse out
        $(this).width($(this).width() - 30);
    }
);

请参阅此jsFiddle进行演示。

相关内容

  • 没有找到相关文章

最新更新