Easy-to-follow video tutorials help you learn software, creative, and business skills.Become a member
There's a lot more finesse to Transitions than just specifying a property and the duration. In this video I'll show you how you can make the transition more lifelike with the timing functions and even how you can control the period before the animation kicks in. Without any additional specifications, transitions start out slow, speed up and then slow down a bit before finishing, this is known as an ease transition. Taken from the animators so-called easing functions, and in a graph it looks like this.
You can modify how transitions are applied through the transition-timing-function property. There're five preset values, starting with a default ease. Next is linear, which displays the transition at a constant rate. Then there is ease-in, which starts slow and speeds up. The opposite of that is ease-out, which starts quickly and then slows down. And then there's the combination of the two ease-in-out, that starts slow, speeds up, and then slows down again.
You may notice that ease-in and ease-in-out are similar, but the middle part of the ease transition is notably faster. For transition-timing-function property has one more possible value: cubic-Bezier, which takes as parameters two sets of two numbers, all comma separated, typically between 0 and 1. These X/Y coordinates describes the position of the Bezier handles. This flexibility allows you to create custom timing functions like this one that starts out very slow and speeds up at the end.
The first pair of numbers, 0.950 and 0.050, plots the initial Bezier handle, and the second, 0.795 and 0.035, the ending handle. It's one thing to see the graph of these options, but how they do look in the browser? I've prepared an example page so you can see that for yourself. You will find it in the exercise files under Chapter 1, subfolder 01_02, called timing_function_examples.htm.
So let's run through the paces, so you can see how these work. So first, let's take a look at Ease (default). I started up so that it also changes color during the transition, and when I have a route, it comes back. You can see the difference in speed as it progresses across the page. Now let's try Linear, very even transition, I will bring it back. Ease-In will start out slow and then speed up, and it reverse again, slow and speeding up. Ease-Out, as I said, the opposite of that, so it will start out quickly and then slowdown.
And then there is Ease-In-Out, as I said, for the combination of the two that starts slow, speeds up and slows down again. Now finally, here's a cubic-Bezier value, using the custom values that I mentioned earlier. This will start out extremely slowly and then zoom across the page and in reverse. In addition to changing the timing of the transition, you can also add a delay. Now, granted, there are few cases in which you want to hold back on a user of direction, but it's good to know that the option is there should you need it.
Here's the code transition-delay value, for both transition delay and transition-timing function, you can use S for seconds or M-S for milliseconds. I've added a half second delay to the transition timing function, so you can check out the effect for yourself on the file called delay-examples.htm, found in the same folder. So now I'll hover over the first one, and you'll see there will be a brief delay before it takes off. And again, when I hover out, together for transition timing function and transition delay properties, bring a high degree of finesse and customization to your transitions.
As always, you'll want to apply these properties judiciously.
Get unlimited access to all courses for just $25/month.Become a member
Access exercise files from a button right under the course name.
Search within course videos and transcripts, and jump right to the results.
Remove icons showing you already watched videos if you want to start over.
Make the video wide, narrow, full-screen, or pop the player out of the page into its own window.
Click on text in the transcript to jump to that spot in the video. As the video plays, the relevant spot in the transcript will be highlighted.