首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >悬停在字体大小和背景大小上

悬停在字体大小和背景大小上
EN

Stack Overflow用户
提问于 2012-09-22 00:17:29
回答 4查看 1.4K关注 0票数 0

我正在尝试用CSS实现一个很好的Hover Off effect。有一个非常好的here示例,但是我不能用background-sizefont-size属性重现它。

其效果只是在鼠标悬停时放大图像和文本,并以一种干净的方式返回到原始状态(使用-webkit-transition)。此代码失败:

代码语言:javascript
复制
.nice a {
    background:  url(../my_image.png) no-repeat;
    background-size: 40px 37px;
    font-size: 12px;

    /* HOVER OFF */
    -webkit-transition: background-size 2s;
    -webkit-transition: font-size 2s;
}

.nice a:hover{
    background: url(../my_image.png) no-repeat ;
    background-size: 43px 39px;
    font-size: 13px;

    /* HOVER ON */
    -webkit-transition: background-size 2s;
    -webkit-transition: font-size 2s;
}

有什么想法吗?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-09-22 04:14:11

我认为问题是,在你提供的代码中,没有足够的“步骤”或“关键帧”让动画流畅地运行。

请看这个演示:http://dabblet.com/gist/3763579。使用你的属性的方框在右边,时钟上有2秒的时间来制作一个或两个像素的动画,所以在工件跳到下一个像素之前会有一个明显的延迟。与动画返回原地相同,因此会出现起伏不定的不平滑过渡。

票数 1
EN

Stack Overflow用户

发布于 2012-09-22 00:22:07

您可以使用transform:scale(value);

Test it

代码语言:javascript
复制
.nice a {
    font-size: 12px;
    display:block;
    -webkit-transition:all 2s ease;
    -webkit-transform-origin:top left;
}

.nice a:hover {
    -webkit-transform:scale(1.3);
}​
票数 1
EN

Stack Overflow用户

发布于 2012-09-22 17:24:12

下面是有效的Demo

和教程,了解有关background的更多信息

这是使用转换的另一种方式。

代码语言:javascript
复制
.nice a { -webkit-transition: font-size .2s ease-in-out; }
.nice a:hover { -webkit-transform: scale(1.1); }

关键帧的例子(缺点是不是一直悬停,它不会停留)。

代码语言:javascript
复制
@-webkit-keyframes  scalar{
    from{
         background-size: 40px 37px;
    font-size: 22px;
}
to{
    background-size: 103px 79px;
    font-size: 32px;
}
}

.nice2 a{
    background:  skyblue;
    background-image:url("http://lorempixel.com/300/200/abstract");
   background-repeat:no-repeat;
    background-size: 40px 37px;
    font-size: 22px;
    color:white;
}
.nice2 a:hover{
    -webkit-animation: scalar 1s;
}
​

使用keyframes的升级演示

我们已经看到了三种方法。让我们决定哪一个最适合它。

  1. Transitions,它提供了平滑和漂亮的appearance.
  2. Transforms,在生长content.
  3. Keyframes的过程中变得模糊,这导致了高端但...

选择权在你!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12534269

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档