View Transitions и предзагрузка страниц
Современный CSS должен убить SPA с его джаваскиптами, провозглашает статья. Вау, круто, я тоже такого мнения, думаю я. Звучит очень интересно, молочные берега, кисельные реки, CSS может почти все! Просто добавь красивые переходы между страницами десятком строчек и у пользователя не будет ощущения, что он загружает новую страницу! Демки еще прикольные — прогресс же!
Пробую добавить на сайтик — не работает. Выясняется, что в Firefox поддержка не реализована. Пробуем в Chrome — все равно дергается при переходе на другую страницу. Может, дело в полосе прокрутки? В зависимости от ее наличия меню выравнивается по-разному. Лепим scrollbar-gutter — все равно все дергается. Отключаю полоску сверху — дергается, но поменьше.
Ладно, гулять так гулять — может, спекулятивную загрузку еще сделать, как в статье предлагалось? Добавляем в заголовок скрипт (фу, я же хотел меньше JS) и… ничего не поменялось. Ок, лезем в инструменты разработчика — “130 not triggered”. Спрашиваем GPT, получаем порцию газлайтинга, но в итоге после “глубокого анализа” получаем предложение в настройках хрома включить расширенную загрузку — ура, теперь инструменты разработчика светятся зелененьким, что страницы предзагружаются!
Правда, дерганье никуда не делось. Т.е. я загружаю две страницы с идентичным шаблоном, у которых отличается только тело, куча элементов вверху буквально те же самые, но браузер все равно не может отрендерить их на одном месте? Ну его нахуй, пойду писать бэкэнды на котлине ужасы на джаве…