Dostępność stron WWW
3 godz. 32 min · HTML i CSS · Full-stack i Programowanie
Wojciech PołowniakSr. Fullstack EngineerHTML został wynaleziony już w 1989 roku i jest on podstawą tworzenia stron internetowych do dziś. W ciągu ponad 30 lat społeczność programistów tworzących strony internetowe odkrywała coraz to nowe problemy w tworzeniu treści pod unikalne medium jakim jest internet. Jednak na przełomie dekad społeczność zdaje się zapominać o pierwotnych założeniach sieci - treści dostępnych dla każdego. W czasach gdy nowe JavaScriptowe frameworki stawiają... developer experience ponad user experience, paradoksalnie - jest coraz mniej stron internetowych, które są szybkie oraz dostępne dla szerokiej grupy odbiorców.
Dostępność w tym kontekście to tworzenie rozwiązań, z których korzystać może każdy - niezależnie od tego czy zapomniał słuchawek, niedowidzi, zepsuła mu się myszka czy mówi w innym języku. To także troska o użytkownika bez względu na jego potencjalne ograniczenia. Przekłada się to bezpośrednio na ilość osób, które mogą skorzystać z Twojej strony WWW. To właśnie przedstawimy Ci w tym kursie - poznasz techniki tworzenia stron internetowych, które z założenia dbają o użytkownika i pozostawiają kontrolę w jego rękach. Dowiesz się też jaki ma to wpływ dla biznesu czy Ciebie - jako użytkownika sieci.
Troska o użytkownika to dobry User Experience - co z kolei tworzy przywiązanie do produktu. Ale mniej oczywistymi aspektami dostępności jest wpływ na pozycjonowanie stron internetowych. Poprzez korzystanie z semantycznych znaczników i jawne wyrażanie treści poprzez markup możemy - jako przyjemny efekt uboczny - wpłynąć na silniki wyszukiwarek internetowych, by pojawiać się w wynikach wyżej niż dotychczas.
Niestety, łatwo jest tworzyć strony niedostępne - głównie ze względu na niewiedzę. W kursie zrozumiesz najczęściej popełniane błędy dostępności, przez które Twoje treści mogą nie docierać do Twoich potencjalnych użytkowników, oraz dowiesz się jak tworzyć te same rozwiązania w sposób dostępny.
Jesteś znudzony tym, co oferuje Front-End? Każdy framework brzmi jak koło wynajdywane na nowo? Wątek dostępności to zupełnie nowy poziom postrzegania produktu i pracy na rzecz użytkownika. Ilość potencjalnych przypadków do rozwiązania, jeśli chodzi o formę konsumpcji treści przez użytkownika, jest ogromna - możesz ponownie rozpalić swoje zainteresowanie web developmentem!
Aby móc efektywnie skorzystać z tego kursu, potrzebujesz podstawowej wiedzy na temat HTML i CSS. Przyda się również znajomość języka angielskiego, ale nie jest to obowiązkowe, pojedyncze zwroty są tłumaczone na bieżąco.
Cześć w tej lekcji opowiem o skip linkach czyli linkach które nie
przynoszą nas na inną podstronę tylko przenoszą nas na inny fragment tej samej
podstrony są one specjalnie przydatne dla osób korzystających z klawiatury czy z czytników
ekranowych niekoniecznie przydatne dla użytkowników wizualnych
ponieważ z reguły korzystają powiedzmy z myszki ich idea jest prosta tworzymy
link który przenosi nas do innej w sekcji strony tak aby nawigacja z tamtego
miejsca była wygodniejsza więc możemy zacząć to robić stworzymy sobie link
lokalny do sekcji main do
tej sekcji main-content czyli odnosimy się tutaj do id main-content
no i nazywamy to skip
to main content to jest bardzo popularne jeżeli odwiedzacie stronę
która próbuje dbać o accessibility to możecie spróbować się przez nią przetabować
i jeżeli jest skip link skip to main content to znaczy że ktoś tam faktycznie o tym
po prostu pomyślał no z tym że skip to main content powinno być widoczne tylko dla
użytkowników klawiatury czyli nie powinno być domyślnie widoczne czyli tak
naprawdę możemy zaaplikować tutaj visually hidden z tym że nie chcemy
tego umieszczać w ten sposób poprzez klasę ponieważ
będziemy to włączać i wyłączać warunkowo w zależności od tego czy jest wskaźnik
skupienia na tym czy nie więc możemy nazwać to po prostu skip-link i
teraz mżemy ostylować tego skip linka w ten sposób że
jeżeli skip link będzie nie sfokusowany
no to wtedy wklejamy sobie tutaj tą regułę która nam ukrywa
ten element czyli dopóki nie ma żadnego fokusu no to nic
nie widzimy zaczynamy się tabować i faktycznie pojawia się nam skip to main content super
więc połowa jakby za nami oczywiście jak się odfocusujemy o ten link nam zniknie możemy
sprawdzić jak to działa z czytnikiem ekranowym screen readery fokusują nam
elementy domyślnie i generalnie zaraz odwiedzimy ten link ale gdybyśmy mieli
lecieć z góry na dół no to widzimy że będzie tutaj
tak jest po prostu nagłówek przeczytany no i cała treść po kolei natomiast
jeśli weźmiemy skip to main content to widzimy
że od razu przeskoczyliśmy te 2 paragrafy i header no
i faktycznie znajdujemy się w demographics czyli przeskoczyliśmy
tą sekcję ponieważ wykorzystaliśmy tego skip linka to
jest fajne zwłaszcza że jeżeli mamy duże sekcje nawigacyjne i użytkownik
nie koniecznie chce przez tą nawigację przechodzić tylko chce przeczytać treść artykułu no
to wtedy skip to main content jest bardzo fajna i pozwala użytkownikowi czytnika ekranowego
szybciej dotrzeć do elementów które chce usłyszeć tak
samo jeżeli mamy w głównej treści artykułu jakieś elementy interaktywne no
to skip link będzie przydatny też dla osób widzących które po prostu chcą
szybciej pojawić się w tej głównej treści artykułu no i wypełnić jakiś na przykład
formularz a niekoniecznie tabować się przez całą nawigację z tym że skip linki
nie muszą być tylko i wyłącznie do głównej treści możemy zrobić skip
linki do sekcji komentarzy do nawigacji ich idea jest
taka że mają przyśpieszyć nawigację po stronie dla osób korzystających z klawiatury
i takim mniej oczywistym przypadkiem kiedy skip linki mogą się przydać jest przechodzenie przez tabele
jeżeli będziemy nawigować się po tabeli
no to zanim przejdziemy przez całą tabelę to faktycznie trzeba
się troszkę naklikać oczywiście możemy też
wejść w tryb nawigacji po tabeli i poruszać się po osi x i osi y
natomiast generalnie no nie jest to wygodne żeby przeskakiwać przez całą tabelę zwłaszcza
jeżeli mamy kilka tabel na stronie no to nawigacja pomiędzy każdą z
nich będzie po prostu uciążliwa co możemy zrobić no to możemy wziąć skip linka
i przed tabelą
dać taki skip link
i napisać na przykład jump after respondent
region table czyli
skocz za tą tabelę oczywiście nie możemy tutaj kierować do
main content tylko do czegoś innego stworzymy zaraz element respondent table
after tak nazwiemy nasz element no i oczywiście
takiego elementu nie mamy i nie możemy sfokusować się za tabelą nie ma takiej możliwości jakby
w html-u i w webie ale możemy zrobić po prostu pustego diva czy spana który
będzie miał id takie jak tu nadaliśmy zapiszę to
tak jeżeli teraz zrobię chromevox
w dół no to wchodzę w tabelę a jeżeli wezmę aktywuje
ten link to przeskoczyliśmy od razu do następnego
paragrafu czyli ominęliśmy całą tą tabelę jest to bardzo fajne
rozwiązanie z tym że jeżeli przejdziemy skip linkiem
w dół i będziemy chcieli wrócić w
górę no to znowu już musimy przechodzić przez całą tabelę więc warto
zrobić to w dwie strony czyli tutaj zrobiliśmy nawigację
w dół i tutaj zrobimy nawigację w górę czyli
tu jest table before i tutaj daje ją przed skip linkiem po
to żeby to było po prostu płynniejsza nawigacja no i oczywiście
musimy tutaj zrobić drugi link za tabelą i
tutaj dajemy link jump before respondent region table
i tutaj dajemy before zapisujemy
ja się upewnię czy dobrze napisałem tak więc zaczynamy
skip to main content jesteśmy
w demographics następnie znowu tabujemy
skaczemy za
tabelę respondent region przeskoczyliśmy
i teraz jeżeli zrobimy shift z tab to mamy możliwość
przeskoczenia przed tą tabelę klikamy to
i mamy możliwość przeskoczenia
znowu do przodu czyli jest tutaj płynna nawigacja w obu kierunkach
dookoła tabeli i dla każdej z tabeli dla
każdej sekcji komentarzy dla każdej treści która jest ciężka do nawigacji
poprzez czytnik ekranowy możemy robić takie skip linki i taki jest ich właśnie
zamysł jeśli nie chcemy żeby skip linki nam się pojawiały i
znikały niszcząc nam layout no to oczywiście możemy zrobić tutaj jakieś
albo po prostu rozmiar padding żeby tutaj była ta przestrzeń na
ten skip link jak on się pojawi albo możemy to wypozycjonować absolutnie tutaj możliwości
jest bardzo dużo ale generalnie takie podejście też jest dobre skakanie tego typu treści
nie jest generalnie takim dużym problemem więc skip linki są
bardzo fajnym rozwiązaniem polecam ich używać nie trzeba używać skip linków tylko i wyłącznie
do sekcji głównej naszego dokumentu możemy przeskakiwać do dowolnej
innej sekcji strony tak długo jak ma to sens i faktycznie skip link przyśpiesza
nawigację a nie ją spowalnia no i możemy też używać jej aby przeskakiwać tabele
sekcję komentarzy czy inne treści które są generalnie długie
do przeglądania