HTML
Ach, HTML, drugie z brzydkich kaczątek Sieci, obok CSS-a. No bo w końcu to ten śmieszny język znaczników, który nawet nie jest programowaniem. Cóż może być w nim takiego trudnego, prawda?
Otóż, wbrew pozorom, bardzo dużo. Bo mimo wszystko HTML stanowi warstwę treści. Najłatwiej porównać go do formatowania, jakie dostępne jest w edytorze tekstu. W Wordzie też mogę pogrubić jakiś tekst, przekreślić go, wskazać, że stanowi nagłówek… Formatowanie pozwala treści lepiej wyrażać swoje znaczenie. Dokładnie tak samo jest w przypadku Sieci i HTML-a. To najbardziej podstawowa forma strony WWW, jej szkielet. I jeśli on będzie nieprawidłowy, to wiele rzeczy może nie działać poprawnie – nawet jeśli na pierwszy rzut oka nie sposób to zauważyć.
W kontekście HTML-a najczęściej mówi się o semantyce – czyli o znaczeniu poszczególnych elementów. I w sumie nic w tym dziwnego: semantyka to tak naprawdę trzon HTML-a. Tylko że jest to też trzon bardzo abstrakcyjny, który nie brzmi porywająco. Gdy mówi się o tym, że należy odpowiednio dobrać elementy na stronie, to często nie czuć stawki. No bo co złego tak naprawdę się stanie, gdy zamiast nagłówka użyjemy odpowiednio ostylowanego akapitu? Przecież widoczny rezultat jest dokładnie ten sam…
I tutaj na scenę wkracza Vasilis van Gemert z pojęciem HTML-owego UX-u. Owszem, HTML to semantyka – ale przecież można ją sprzedać w odpowiedni sposób. Zamiast skupiać się na teoretycznej poprawności i egzotycznych przypadkach, takich jak article vs section, skupmy się na przypadkach, w których odpowiedni wybór elementu może dać faktyczną korzyść osobie użytkowniczej. Wracając do naszego nagłówka: prawdziwy nagłówek pozwala choćby na nawigację po stronie przy pomocy technologii asystującej. Krótka demonstracja tego, w jaki sposób przeskakiwać między nagłówkami przy pomocy czytnika ekranowego, o wiele bardziej uzmysłowiłaby ważność nagłówków, niż nawet najdłuższe elaboraty o ważności semantyki. Najbardziej wdzięcznymi przykładami jednak bez wątpienia są elementy interaktywne. Ot, taki przycisk. Ten domyślny, HTML-owy – a więc element button – dostarcza bardzo sporo UX-u. Można go sfocusować przy pomocy klawiatury, kliknąć przy pomocy Entera albo spacji, domyślnie jest też nieprzeciągalny, może wysłać formularz i to bez potrzeby dodawania żadnego JS-a… Słowem: odtworzenie tego zachowania skryptami jest niezwykle trudne.
A po takich “wow” elementach można przejść do tych bardziej abstrakcyjnych. Bo okazuje się, że sekcje i artykuły też mają swoje praktyczne zastosowanie. Jednym z nich jest choćby dobór treści w trybie czytania w przeglądarkach. I tak można schodzić głębiej i głębiej, pokazując np. jak obrazki bez atrybutu [alt] wpływają na osoby użytkownicze czytników ekranowych. I nagle się okaże, że ludzie mimowolnie dbają o semantykę. I to nawet nie dlatego, że jest ważna i że należy to robić. A dlatego, że dobry HTML to dobry UX.
Źródła
- Jon Kantner, That Time I Tried Browsing the Web Without CSS, (data dostępu: ), w: CSS Tricks, (data dostępu: ).
- David A. Kennedy, Background: What is Semantic HTML?, (data dostępu: ), w: The A11Y Project, (data dostępu: ).
- Tomasz "Comandeer" Jakut, O semantyce słów kilka, (data dostępu: ), w: Tomasz "Comandeer" Jakut, Comandeer's blog, (data dostępu: ).
- Vasilis van Gemert, The UX of HTML, (data dostępu: ).
- Jerry Jones, The Importance of HTML, (data dostępu: ), w: Jerry Jones, Jerry Jones, (data dostępu: ).
- Ben Myers, How (Not) to Build a Button, (data dostępu: ), w: Ben Myers, Ben Myers, (data dostępu: ).
- Devon Govett, Building a Button Part 1: Press Events, (data dostępu: ), w: React Spectrum Blog, (data dostępu: ).
- Bruce Lawson, The practical value of semantic HTML, (data dostępu: ), w: Bruce Lawson, Bruce Lawson's personal site, (data dostępu: ).
- Sara Soueidan, Design for reading: tips for optimizing content for Reader modes and reading apps, (data dostępu: ), w: Sara Soueidan, Sara Soueidan, (data dostępu: ).
- Holly Tuke, 5 most annoying website features I face as a blind person every single day, (data dostępu: ), w: Scope for Business, (data dostępu: ).
Dodatkowe materiały
- GDG Berlin, HTML: The good parts - Vadim Makeev, (data uploadu: , data dostępu: ), w: YouTube, (data dostępu: ).
- Ricky Mondello, Tweet Ricky'iego Mondelli z 24.03.2019, (data dostępu: ), w: Twitter, (data dostępu: ).
- Nolan Lawson, What I’ve learned about accessibility in SPAs, (data dostępu: ), w: Nolan Lawson, Read the Tea Leaves, (data dostępu: ).
- Martin Underhill, When design breaks semantics, (data dostępu: ), w: Martin Underhill, tempertemper, (data dostępu: ).
- Adrian Roselli, My Priority of Methods for Labeling a Control, (data dostępu: ), w: Adrian Roselli, Adrian Roselli, (data dostępu: ).
- Manuel Matuzović, The Button Cheat Sheet, (data dostępu: ).
- Steve Faulkner, Representation of style, (data dostępu: ), w: Steve Faulkner, HTML Accessibility, (data dostępu: ).
- Steve Faulkner, Screen Readers support for text level HTML semantics, (data dostępu: ), w: TPGi, (data dostępu: ).
- Mozilla Developer, HTML Landmark Roles Screen Reader Demo - #html #accessibility, (data uploadu: , data dostępu: ), w: YouTube, (data dostępu: ).
- Radosław Gryczan, Jak zacząć tworzenie stron WWW?, (data dostępu: ), w: Radosław Gryczan, Byki w kodzie, (data dostępu: ).
- Tomasz "Comandeer" Jakut, Semantyczny blog w HTML, (data dostępu: ), w: Tomasz "Comandeer" Jakut, Tutorials, (data dostępu: ).
- devjs Poland, ⌨ Przycisk i accessibility, czyli o pozornej prostocie dostępności – Tomasz Jakut, (data uploadu: , data dostępu: ), w: YouTube, (data dostępu: ).
- Blake Watson, HTML for People, (data dostępu: ).