└── README.md /README.md: -------------------------------------------------------------------------------- 1 | # The problem 2 | 3 | If you want to transition between pages, your current option is to fetch the new page with JavaScript, update the URL with [`pushState`](https://developer.mozilla.org/en-US/docs/Web/API/History_API#The_pushState()_method), and animate between the two. 4 | 5 | Having to reimplement navigation for a simple transition is a bit much, often leading developers to use large frameworks where they could otherwise be avoided. This proposal provides a low-level way to create transitions while maintaining regular browser navigation. 6 | 7 | # Goals 8 | 9 | * Enable complex transitions. 10 | * Allow transitions to start while the next page is being fetched. 11 | * Allow transitions to differ between navigation from clicking a link, back button, forward button, reload button, etc. 12 | * Allow transitions to cater for a non-zero scroll position in the navigated-to page. 13 | 14 | # Experiments, talks & reading materials 15 | 16 | ## Web Navigation Transitions (2014): CSS-based experiment by Google Chrome team 17 | * [**Spec:** Initial (deprecated) spec for experimental Web Navigation Transitions prototype (2014)](https://docs.google.com/document/d/17jg1RRL3RI969cLwbKBIcoGDsPwqaEdBxafGNYGwiY4/edit) 18 | * [**Talk (video):** Ryan Schoen's talk, Wicked Fast: Performance investments (Chrome Dev Summit 2014)](https://www.youtube.com/watch?v=v0xRTEf-ytE) 19 | * [**Demo (video):** Web Navigation Transitions in Chrome on Android](https://www.youtube.com/watch?v=v0xRTEf-ytE&t=968) 20 | * [**Demo (video):** Android's Activities Transitions API and experimental Web Navigation Transitions in Chrome on Android](https://www.youtube.com/watch?v=v0xRTEf-ytE&t=1075) 21 | 22 | ## Web Navigation Transitions (2015): CSS-based proposal by Chris Lord (Mozilla, Firefox OS) 23 | * [**Article:** Web Navigation Transitions by Chris Lord (Mozilla)](http://chrislord.net/index.php/2015/04/24/web-navigation-transitions/) 24 | * [**Examples:** Web Navigation Transitions examples (emulated with CSS Animations, custom CSS media queries, events, `