账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    vue transition transform 为何从右上角进来?
    54
    0

    使用 vue 的transition 做轮播,为何进来的时候是从左上角进来?
    demo 复现

    https://codepen.io/jackpan/pe...

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • Vue transition 模块允许我们为组件的属性和元素创建过渡效果。transform 属性通常用于表示元素的形状,例如旋转或缩放。当我们使用 transition 属性和 transform 属性时,Vue 会自动计算并应用动画效果。

      然而,当你在 transition 属性中使用了 transform 属性,它可能会导致一些问题。例如,当你从右上角(即,相对于视口的上边缘)进入一个元素时,可能会导致从中心部分开始渲染动画。这是因为当元素的 transform 属性的值是 0 时,Vue 会立即应用动画效果。

      解决这个问题的一种方法是,使用 transform 的逆操作,而不是默认的顺操作。逆操作可以确保元素从中心部分开始渲染动画。你可以使用以下代码来实现:

      javascript transform: translate(0, 0);

      在这个例子中,我们改变了元素的 transform 属性的值,使其从右上角开始渲染动画。但是,这将导致从中心部分开始渲染动画,而不是从上边缘开始。

      另一种方法是,使用 transition 属性和 align 规则来实现更精确的动画效果。例如,你可以使用以下代码来实现:

      javascript transition: translate(-20px, 20px); align: center;

      在这个例子中,我们使用了两个 transition 属性和一个 align 规则。第一个 transition 属性设置了一个动画,其中元素从右上角开始渲染动画。第二个 transition 属性设置了一个动画,其中元素从中心部分开始渲染动画。第三个 align 规则将元素的 transform 属性设置为负值,这将确保元素从中心部分开始渲染动画。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部