zoukankan      html  css  js  c++  java
  • 仿饿了吗购物车列表的效果

    实现效果:

       

    代码:第一张图的效果

    <transition name="fold">
          <div class="shopcart-list" v-show="listShow">
            <div class="list-header">
              <h1>购物车</h1>
              <span>清空</span>
            </div>
            <div class="list-content">
              <ul>
                <li class="food clear" v-for="(food, i) in foods" :key="i">
                  <div class="name">{{food.name}}</div>
                  <div class="price">
                    <span>¥{{food.price * food.count}}</span>
                  </div>
                  <cart-control :food="food" class="cart-add-sub"></cart-control>
                </li>
              </ul>
            </div>
          </div>
        </transition>
    // 折叠与显示的动画
      .shopcart-list {
        position: absolute;
        top: 0;
        left: 0;
         100%;
        z-index: 99;
        transform: translate3d(0, -100%, 0);
        &.fold-enter-active,
        &.fold-leave-active {
          transition: all 0.5s linear;
          transform: translate3d(0, -100%, 0);
        }
        &.fold-enter,
        &.fold-leave-active {
          transform: translate3d(0, 0, 0);
        }

    参考:https://blog.csdn.net/qq_22317389/article/details/80391407

    第二张图的效果:参考:https://www.cnblogs.com/yujihang/p/6886532.html

    <div class="cartcontrol-wrapper">
        <div class="cartcontrol">
          <!-- 外层渐变,减号图标-->
          <transition name="fade">
            <div
              class="cart-decrease"
              v-show="food.count > 0"
              @click.stop.prevent="subCart(food)"
            >
              <!-- 内层滚动,滚动时包含字体,字体在inner中-->
              <transition name="inner">
                <i class="iconfont icon-jianhao inner"></i>
              </transition>
            </div>
          </transition>
          <transition name="count">
            <div class="cart-count" v-show="food.count > 0">{{ food.count }}</div>
          </transition>
          <div class="cart-add" @click.stop.prevent="addCart(food)">
            <i class="iconfont icon-jiahao"></i>
          </div>
        </div>
      </div>
    // 动画---显示
        .cart-decrease {
          float: left;
          @include wh(1.25rem, 1.25rem);
          background-color: $blue;
          border-radius: 50%;
          margin-top: 0.3125rem;
          transform: translate3d(0, 0, 0);
          transform: rotate(180deg);
          // 进入动画的状态/离开动画时生效
          &.fade-enter-active,
          &.fade-leave-active {
            transition: all 0.5s linear;
            // opacity: 1;
            // transform: translate3d(0, 0, 0);
          }
          // 动画的开始状态,动画一开始透明度要设为0 / 离开动画的结束状态
          &.fade-enter,
          &.fade-leave-active {
            opacity: 0;
            transform: translate3d(56px, 0, 0);
          }
          .inner {
            @include inbwh(100%, 100%);
            color: #fff;
            text-align: center;
            line-height: 1.125rem;
            font-weight: 700;
            font-size: 0.875rem;
            &.inner-enter-active,
            &.inner-leave-active {
              transition: all 0.5s linear;
              // opacity: 1;
              transform: rotate(0);
            }
            &.inner-enter,
            &.inner-leave-active {
              opacity: 0;
              transform: rotate(180deg);
            }
          }
        }

  • 相关阅读:
    Linux下命令设置别名--alias(同实用于mac)
    mac 下配置连接Linux服务器方法,上传下载文件操作
    Jdbc和工具类
    MySQL和数据库
    validate和bootstrap学习
    jQuery学习
    JavaScripe学习
    CSS学习
    HTML学习
    Metail Design入门(一)
  • 原文地址:https://www.cnblogs.com/hahahakc/p/13065840.html
Copyright © 2011-2022 走看看