Check out the Core Animated Pages Polymer element https://elements.polymer-project.org/elements/neon-animation
They have great demos that are very similar to meaningful transitions https://elements.polymer-project.org/elements/neon-animation?view=demo:demo/index.html&active=neon-animated-pages
The "Icon to top bar" demo is probably the most similar to the one you referenced (you can simply view the source to see the Polymer web components used, as well as the necessary CSS and JS
You can import into your project through Bower:
bower install Polymer/core-animated-pages
And wrap your elements and define transitions with an attribute like
Here is the code for an example of cross fading:
<style> #hero1 { position: absolute; top: 0; left: 0; width: 300px; height: 300px; background-color: orange; } #hero2 { position: absolute; top: 200px; left: 300px; width: 300px; height: 300px; background-color: orange; } #bottom1, #bottom2 { position: absolute; bottom: 0; top: 0; left: 0; height: 50px; } #bottom1 { background-color: blue; } #bottom2 { background-color: green; } </style> // hero-transition and cross-fade are declared elsewhere <core-animated-pages transitions="hero-transition cross-fade"> <section id="page1"> <div id="hero1" hero-id="hero" hero></div> <div id="bottom1" cross-fade></div> </section> <section id="page2"> <div id="hero2" hero-id="hero" hero></div> <div id="bottom2" cross-fade></div> </section> </core-animated-pages>
source share