javascript - Vue 元素类转换

标签 javascript css vue.js transition

我正在尝试在两个不同的 css 类之间进行转换,唯一的区别是背景图像。

Vue 代码:

<div id="flip-list-demo" class="demo">
    <transition-group name="flip-list" tag="ol">
      <div v-for="item, in items" class="licontainer" v-bind:key="item.text">
        <li :data-shares="item.shares" :data-pos="item.datapos">
          <a href="#">
        {{ item.text }}
        </a>
        </li>
        <transition name="fade">
          <div :id = "'icon' + item.uid" :class="item.icon"></div>
        </transition>
      </div>
    </transition-group>
  </div>

CSS:

ol .red, .yellow, .green {
  display: inline-block;
  width: 40px;
  height: 40px;
  position: relative;
  top: 50%;
  transform: translateY(-50%)
}

ol .yellow {
    transition: background-image 2s;
  background-image: Long SVG code;
}

ol .green {
  transition: background-image 2s;
background-image: Long SVG code;
}

ol .red{
  transition: background-image 2s;
    background-image: Long SVG code;
}

图标属性在 Vue 实例内动态更新,方法是触发重绘并更改图标。

我的问题是是否可以使用过渡,特别是两个类之间的不透明度淡入淡出?我不是添加或删除元素,只是更新类,因此我在使用 Vue 转换类时遇到问题。

最佳答案

通过在每个 css 类顶部的背景图像之前添加 transition: background-image 2s; 解决了这个问题。

关于javascript - Vue 元素类转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48753115/

相关文章:

css - django 添加样式表到站点

css - 通过子项设置父级样式

vue.js - 我应该如何处理 Vuex 中的事件?

javascript - 像 'some ${string}' 这样的 ECMAScript 模板文字不起作用

javascript - 如何在 JQuery 中访问 Angular 6 变量

javascript - 在php中查找一年中剩余的天数

jquery - 使用特定宽度的视口(viewport)

javascript - 从 Flask 网络服务器将全局 JSON 传递给 Vue 应用程序

javascript - 我可以在嵌套在 'index' 中的 'v-for' 中使用 'method' 参数吗?

javascript - 拼接对象的属性?