【问题标题】:How to fade in background image by CSS3 Animation如何通过 CSS3 动画淡入背景图像
【发布时间】:2013-05-30 03:04:35
【问题描述】:

我正在制作一个菜单,其中每个项目都有一个文本,如 item1、item2 等。悬停时背景颜色会发生变化,文本变得透明并替换背景图像。我使用此代码来简化样式。但它仅适用于背景颜色,不适用于图像。

#nav li:hover {
    color:transparent !important;
    text-shadow: none;
    background-color: rgba(255, 0, 0, .5);

    -webkit-transition: all 1s ease-in;
    -moz-transition: all 1s ease-in;
    -o-transition: all 1s ease-in;
    -ms-transition: all 1s ease-in;
    transition: all 1s ease-in;
}

这里是在线版本: http://jsfiddle.net/q4uHz/

【问题讨论】:

    标签: css animation background-image css-transitions css-animations


    【解决方案1】:

    背景图片不能动画;不会有算法。一个简单的解决方案是在 HTML 中包含带有图标的 <img> 而不是 opacity: 0 并为其设置动画。类似的东西。

    <li id="home">
    <img src="http://cdn3.iconfinder.com/data/icons/picons-social/57/16-apple-48.png">
    <a href="#home">Home</a></li>
    
    #nav li {
        position: relative;
    }
    #nav li img {
        opacity: 0;
        position: absolute;
        transition: all 1s ease-in;
        top: 0;
        left: 0;
    }
    #nav li:hover img {
        opacity: 1;
    }
    

    http://jsfiddle.net/ExplosionPIlls/q4uHz/1/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-09-28
      • 1970-01-01
      • 2014-02-08
      • 1970-01-01
      • 2019-08-29
      • 1970-01-01
      • 2014-09-16
      • 1970-01-01
      相关资源
      最近更新 更多