Nie zawiera treści zastępczych na wypadek niedostępności JavaScriptu

Stopniowe ulepszanie to strategia tworzenia stron internetowych, która daje pewność, że witryna będzie dostępna dla jak najszerszego grona odbiorców. Podstawową zasadą jest to, że podstawowe funkcje treści i stron opierają się wyłącznie na najbardziej podstawowych technologiach internetowych. W przeglądarkach obsługujących te technologie możesz nakładać na siebie udoskonalone funkcje, takie jak wyrafinowane stylizacje z wykorzystaniem kodu CSS czy interaktywność z użyciem JavaScriptu. Podstawowe funkcje treści i strony nie powinny jednak opierać się na CSS czy JavaScript.

Co się dzieje z kontrolą zawartości zastępczej w Lighthouse

Gdy JavaScript jest niedostępny, Lighthouse oznacza strony, które nie zawierają pewnej treści:

Inspekcja Lighthouse: strona nie zawiera niektórych treści, gdy kod JS jest niedostępny

Lighthouse wyłącza JavaScript na stronie, a potem sprawdza jej kod HTML. Jeśli kod HTML jest pusty, kontrola się nie powiedzie.

Jak sprawdzić, czy strona zawiera treści bez JavaScriptu

Stopniowe wprowadzanie udoskonaleń to duży i kontrowersyjny temat. W jednym z obowiązków stwierdzono, że zgodnie ze strategią progresywnego ulepszania strony powinny być nałożone na siebie w taki sposób, aby podstawowe treści i funkcje stron wymagały tylko kodu HTML. Przykład takiego podejścia znajdziesz w artykule Progressive Ulepszanie: Co to jest, i jak go używać na stronie Smashing Magazine.

Ktoś z innego uniwersytetu uważa, że takie rygorystyczne podejście jest niewykonalne lub niepotrzebne w przypadku wielu nowoczesnych, dużych aplikacji internetowych. Sugeruje użycie wbudowanego kodu CSS z krytyczną ścieżką w dokumencie <head> na potrzeby stylów stron o absolutnie krytycznym znaczeniu.

W związku z tym audyt Lighthouse pozwala w prosty sposób sprawdzić, czy po wyłączeniu JavaScriptu Twoja strona nie jest pusta. Debaty wciąż dotyczą tego, w jakim stopniu aplikacja przestrzega stopniowego ulepszania, ale panuje powszechna zgoda co do tego, że po wyłączeniu JavaScriptu na wszystkich stronach powinno się wyświetlać co najmniej pewne informacje, nawet jeśli treść jest tylko ostrzeżeniem dla użytkownika, że do korzystania z niej wymagany jest JavaScript.

W przypadku stron, które bezwzględnie muszą opierać się na JavaScriptu, jednym ze sposobów jest użycie elementu <noscript>, który zasygnalizuje użytkownikowi, że na danej stronie jest wymagany JavaScript. To lepsze rozwiązanie niż pusta strona, bo nie jest ona pewna, czy problem dotyczy jej strony, przeglądarki czy komputera.

Aby sprawdzić, jak wygląda i jak działa Twoja witryna, gdy JavaScript jest wyłączony, użyj funkcji Wyłącz JavaScript w Narzędziach deweloperskich w Chrome.

Zasoby