Blog

Scroll-driven animations: animation-timeline zamiast IntersectionObserver

Jest powód, dla którego parallax w JavaScripcie zawsze wygląda odrobinę nie tak – lekko odklejony, jakby warstwy pływały pół klatki za stroną. To nie niechlujny kod. To fakt, że zdarzenia scrolla docierają do twojego JavaScriptu już po tym, jak przeglądarka narysowała przewinięcie. Przeglądarka rozwiązała to już raz, zamieniając przyklejone nagłówki w position: sticky. Scroll-driven animations to ten sam ruch, zastosowany od razu do wszystkich efektów powiązanych ze scrollem.

Popover API i natywny <dialog>: koniec modali budowanych ręcznie od zera

W artykule o dostępności modal z display:none, który dalej istniał w drzewie dostępności, był przykładem błędu wynikającego z budowania modala od zera na divach. Prawdziwe pytanie brzmi: dlaczego w ogóle trzeba było go budować od zera? Sprawdzam, co daje za darmo natywny <dialog> i atrybut popover – top layer, pułapkę fokusu, light dismiss – i gdzie te dwa mechanizmy się różnią na tyle, że pomylenie ich to prosta droga do niedostępnego interfejsu.