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 kończąc już temat wskaźnika focusu opowiem
o według mnie najfajniejszej właściwości css-owej która może służyć jako alternatywa
dla outlineu i jest to box-shadow więc mamy tutaj przykład w którym
mamy usunięty outline no i musimy go zaimplementować samodzielnie więc co możemy
zrobić no to na początku możemy stworzyć ten box-shadow i
ustawić go na 00 to są jakby offsety czyli z
lewej i z góry offset jest zerowy powiedzmy że 0,2
rem to jest szerokość naszego box-shadowu no
i tutaj ustawiamy color na niebieski zobaczmy co się wtedy stanie
zapisujemy no i mamy
tutaj taki bardzo mały niewyraźny box-shadow prawdopodobnie
musimy jeszcze tutaj trzeci parametr to jest blur i ten blur możemy
wyłączyć i teraz jest to o wiele jaśniejsze i generalnie no wygląda
to identycznie jak outline w tym momencie więc nie jest to jakoś o wiele fajniejsze ale co
można zrobić fajnego z box-shadowem to jest to że box-shadow przyjmie
dokładnie taki sam kształt jaki jest na elemencie na którym on jest
narzucony czy jeżeli tutaj zaokrąglijmy sobie rogi no to ten box-shadow też
będzie zaokrąglony jeżeli przytniemy ten element innymi właściwościami css-owymi no
to ten box-shadow również będzie się zgadzał z tym jak to jest przycięte możemy
to sprawdzić w jeden prosty sposób ustawimy sobie tutaj border-radius na
powiedzmy 10 pikseli i zrobimy overflow
hidden w tym
momencie tego nie widać ale jeżeli wejdziemy na taba no to faktycznie
widzimy że ten shadow się już nam zaokrąglił no bo faktycznie cały
ten box ma taki oto zaokrąglenie możemy to oczywiście zwiększyć
na 25% 25 pikseli i wtedy mamy już bardzo
ładny outline stworzony z box-shadow generalnie
takiego kształtu outlinem nie możemy osiągnąć nie ma takiej możliwości w css-esie więc
box-shadow jest fajny pod tym względem i jeszcze ciekawą rzeczą jest to że możemy
box-shadow jakby stackować po przecinku jeżeli po przecinku
damy inne właściwości jak na przykład tutaj
będzie niebieskiego na 2 remy pierwszy
to jest box-shadow drugi box-shadow to będzie czarny
i on będzie miał już 4 remy no
i trzeci box-shadow to znowu będzie niebieski 2 remy i
mamy taki podwójny podkreślenie danego elementu nie
ma takich możliwości żeby zrobić to samym outlinem a tutaj już faktycznie możemy
robić dużo innych rzeczy tak naprawdę ten element mógłby mieć normalny
faktyczny cień i my bylibyśmy w stanie tutaj zaaplikować outline
na bazie box-shadow co w przypadku borderu na przykład nie byłoby
możliwe ponieważ jeśli spróbowali byśmy nadać outline przez border
ale na tym elemencie już by był zadeklarowany border no to niestety byśmy go nadpisali
z box-shadowem nie ma tego problemu możemy to zrobić w ten sposób
i efekty są naprawdę bardzo bardzo fajne możemy to uzupełnić
oczywiście o to żeby sam element który jest fokusowany
ustawiał na labelce
color na niebieski sam
swój color wybierał z tej zmiennej więc
po najechaniu oczywiście wszystko będzie niebieskie więc mam już taki
fajny neonowy tutaj efekt ale po zaznaczeniu też to zmienimy czyli input
checked plus
label i zmieniamy color na
zielony jest
ok tylko jeszcze musimy zmienić obramowanie więc jeżeli tutaj zrobimy też
color zapiszemy to faktycznie widzimy
że elementy które są wybrane świecą się na zielono te
które jeszcze możemy wybrać na niebiesko szczerze mówiąc box-shadow
tak jak już wspomniałem jest moim ulubionym sposobem na stylowanie
outlineu to prawda że dalej może zostać on ucięty natomiast po prostu staram
się unikać sytuacji żeby rodzic ucinał box-model
danego elementu na którym ustawiam wskaźnik focusu jeżeli nie da się tego
zrobić inaczej no to wtedy faktycznie korzystam z technik takie jak tło elementu
czy border natomiast zaletą box-shadow jest jeszcze to że nie jest
on domyślnie zablokowany na przykład przez css resety jeżeli pracujecie
z jakimiś agencjami interaktywnymi one mogą faktycznie dawać taki outline none
na wszystko i jeżeli jeszcze nie daj boże jest to z importantem no
to później jest to ciężko nadpisać to zamiast walczyć ze specificity możecie ustawić
na każdym elemencie który ma mieć focus taką regułę box-shadow i
box-shadow jest o wiele mniej używane a nawet jeżeli będzie używane to możecie po przecinku
to dać więc to jest bardzo fajne jeżeli chodzi o po prostu zarządzanie css-em i
dostarczaniem dostępnego rozwiązania dla użytkownika końcowego