css - div 中的 styles.less 背景图像过渡

标签 css less

我有一个重复背景 png 的 div,我想用 styles.less 提供 0.4s 的过渡,如果我使用颜色有效,但如果我在背景上使用图像不起作用,为什么? 这是我的代码:

.transition_bg{
    transition-property: background; /*standard*/
    transition-duration: 0.4s;

    -webkit-transition-property: background; /*Safari e Chrome */
    -webkit-transition-duration: 0.4s;

    -o-transition-property: background;      /*Opera*/
    -o-transition-duration: 0.4s;

    -moz-transition-property: background;    /*Firefox*/
    -moz-transition-duration: 0.4s; 
}

#navigation li
{
    margin: 0;
    width:126px;
    height:40px;
    padding-left:0px;
    padding-right:0px;
    list-style:none;
    float:left;
    background:url(../img/header/bg_nav.jpg) top left repeat-x;
    .transition_bg;
}

#navigation li:hover{
    background:url(../img/header/bg_nav_hover.jpg) top left repeat-x;
}

最佳答案

CSS 过渡不会淡入/淡出背景图像(除非有人能纠正我)。

如果您确信需要这样做,也许您可​​以使用两个容器,每个容器中都有一个背景图像,但是当您将鼠标悬停时,一个容器的不透明度设置为 1,另一个设置为 0,而默认设置为对面的。这将满足您的要求,但您必须处理 DOM 中的另一个元素,这可能会导致问题。

我打算提供一个示例,认为您希望将背景应用于通用容器,但由于您希望在列表项内执行此操作,因此您必须大幅增加代码。

关于css - div 中的 styles.less 背景图像过渡,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11399092/

相关文章:

css - 文本长度未知的 LI 中的中心文本

html - 为什么我的 Bootstrap 不工作?

html - 如何根据 div 中的文本调整 div 大小

html - 在 Twitter Bootstrap 中更改 .table-bordered 的线条颜色

javascript - 如何在 jquery 中返回 img.onload = function() 中的变量?

html - 消除分类多个倾斜图像的末端

javascript - 在 div 中围绕 href 包裹标签

支持查询的CSS预处理器

html - Twitter Bootstrap 3 删除 RIGHT margin 和 padding on a row and col-12

css - 在 CSS 中混合简单的颜色