css - Why doesn't transition-duration work on this view transition? - Stack Overflow

This is working, but the duration setting is ignored. What am I missing?function onClick(e) {e.target

This is working, but the duration setting is ignored. What am I missing?

/

function onClick(e) {
  e.target.classList.add('clicked_media_transition')
  document.startViewTransition(() => {
    e.target.classList.add('expand')
  })
}
body {
  margin: 0;
}

div {
  width: 300px;
  height: 300px;
  background-color: pink;
  position: absolute;
}

.expand {
  width: 100vw;
  height: 100vh;
  top: 0;
  left: 0;
}

::view-transition-group(clicked_media_transition) {
  transition-duration: 5s;
  transition-timing-function: ease-out;
}

.clicked_media_transition {
  view-transition-name: clicked_media_transition;
}
<div onclick="onClick(event)"></div>

This is working, but the duration setting is ignored. What am I missing?

https://jsfiddle/r76z0o8s/

function onClick(e) {
  e.target.classList.add('clicked_media_transition')
  document.startViewTransition(() => {
    e.target.classList.add('expand')
  })
}
body {
  margin: 0;
}

div {
  width: 300px;
  height: 300px;
  background-color: pink;
  position: absolute;
}

.expand {
  width: 100vw;
  height: 100vh;
  top: 0;
  left: 0;
}

::view-transition-group(clicked_media_transition) {
  transition-duration: 5s;
  transition-timing-function: ease-out;
}

.clicked_media_transition {
  view-transition-name: clicked_media_transition;
}
<div onclick="onClick(event)"></div>

Share Improve this question edited Nov 18, 2024 at 21:46 Daniel Beck 21.5k5 gold badges43 silver badges60 bronze badges asked Nov 18, 2024 at 21:43 JorenJoren 9,94520 gold badges67 silver badges106 bronze badges 1
  • @Yogi you're right! You should post that as the answer. – Joren Commented Nov 18, 2024 at 22:06
Add a comment  | 

1 Answer 1

Reset to default 2

As mentioned by @Yogi:

Changing transition-duration: 5s; to animation-duration: 5s; seems to work.

In general, transition-duration is used between two distinct states (start/end), while animation-duration involves a sequence of keyframes. When you're trying to trigger the animation on click, the use of animation-duration should be used.

发布者:admin,转转请注明出处:http://www.yc00.com/questions/1745592393a4634911.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信