Semantyczne łącza
Silktide wyszukuje grupy łączy, które działają jak menu lub sekcja nawigacyjna, ale nie są oznaczone jako lista. Wykrywa też tabele jednokolumnowe używane do układu tego, co w rzeczywistości jest listą elementów.
Grupy powiązanych łączy — menu, stopki, bloki „powiązane strony” — powinny być zapisane jako listy w , aby ich struktura była jawna:
<!-- Problem: blok nawigacyjny bez struktury -->
<a href="/about">O nas</a>
<a href="/products">Produkty</a>
<a href="/contact">Skontaktuj się z nami</a>
<!-- Poprawnie: łącza są elementami listy -->
<ul>
<li><a href="/about">O nas</a></li>
<li><a href="/products">Produkty</a></li>
<li><a href="/contact">Skontaktuj się z nami</a></li>
</ul>
Dlaczego to jest ważne
Gdy łącza znajdują się na liście, ogłasza grupę i jej rozmiar, a osoba korzystająca z niego może pominąć całą grupę jednym krokiem — co jest niezbędne, gdy ta sama nawigacja powtarza się na każdej stronie. Łącza zapisane bez struktury nie oferują takiego skrótu: odwiedzający może być zmuszony przechodzić przez dziesiątki lub setki łączy jedno po drugim, zanim dotrze do treści, na każdej odwiedzanej stronie.
Jak to naprawić
- Otocz każdą grupę powiązanych łączy elementem
<ul>(lub<ol>, gdy kolejność ma znaczenie), umieszczając każde łącze w osobnym elemencie<li>. W przypadku nawigacji otocz też listę elementem<nav>, aby została ogłoszona jako nawigacja. - Zastąp tabele jednokolumnowe listą — tabela z jedną kolumną nie ma relacji tabelarycznych, a znaczniki listy lepiej ją opisują:
<!-- Problem: tabela jednokolumnowa użyta jako lista -->
<table>
<tr><td>Banan</td></tr>
<tr><td>Jabłko</td></tr>
</table>
<!-- Poprawnie -->
<ul>
<li>Banan</li>
<li>Jabłko</li>
</ul>
Jak Silktide to testuje
- Przechodzi przez elementy każdej strony, pomijając treści znajdujące się już wewnątrz znaczników listy.
- Zgłasza element zawierający trzy lub więcej łączy w rzędzie, między którymi znajduje się mniej niż 30 znaków innego tekstu — to silna oznaka menu lub grupy łączy. Bloki przerwane treścią, taką jak akapity, nagłówki lub obrazy, nie są uznawane za grupy łączy.
- Osobno zgłasza tabele, które mają tylko jedną kolumnę i zawierają tekst, jako listy ukryte w tabelach.
Rozwiązywanie problemów
Moje łącza są rozdzielone rzeczywistą treścią
Silktide przestaje traktować blok jako nawigację, gdy zawiera on znaczący tekst lub elementy treści między łączami. Jeśli oznaczona grupa rzeczywiście jest odczytywana jako proza, a nie menu, możesz wynik.
Łącza śródliniowe w zdaniu
Łącza występujące w zdaniu nie powinny znajdować się na liście. Ta kontrola toleruje krótkie fragmenty tekstu między łączami, ale jeśli zdanie z połączonymi frazami zostanie oznaczone, zatwierdź je.