W języku HTML atrybut shape znacznika area, określający typ obszaru, może przyjąć wartość
Poprawna wartość to zestaw: rect, poly, circle. Atrybut shape w elemencie area służy do określenia kształtu klikalnego obszaru w mapie obrazkowej, czyli w mechanizmie image map. W praktyce działa to tak, że jeden obraz może mieć kilka różnych stref prowadzących do różnych adresów, np. na grafice z planem budynku można kliknąć osobno salę, wejście albo sekretariat. Wartość rect oznacza prostokąt i korzysta zwykle z czterech współrzędnych: lewy górny róg oraz prawy dolny róg. Wartość circle opisuje okrąg, gdzie podaje się środek i promień. Wartość poly pozwala zdefiniować wielokąt, czyli bardziej nieregularny obszar złożony z wielu punktów. To jest najbardziej elastyczne, ale też najłatwiej się pomylić przy współrzędnych. Z mojego doświadczenia najlepiej najpierw przygotować grafikę w edytorze i odczytać pozycje punktów, zamiast wpisywać je całkiem na oko. W standardach HTML element area jest używany razem z map oraz obrazem mającym atrybut usemap. Dobrą praktyką jest też dodanie sensownego opisu alternatywnego alt, bo mapa obrazkowa bez opisu bywa słaba pod kątem dostępności i SEO. Warto pamiętać, że nie istnieją tu wartości typu square albo triangle jako osobne typy shape. Kwadrat można zrobić jako rect, a trójkąt jako poly z trzema punktami.
W niepoprawnych odpowiedziach pojawia się dość typowa pułapka: ktoś próbuje dopasować nazwy kształtów z geometrii do wartości atrybutu HTML. Brzmi logicznie, bo skoro obszar może być kwadratem albo trójkątem, to można by oczekiwać wartości square i triangle. Tyle że HTML nie działa na zasadzie dowolnych opisów po angielsku, tylko na podstawie ściśle określonych wartości zapisanych w specyfikacji. Dla atrybutu shape elementu area używa się przede wszystkim rect, circle oraz poly. W standardzie spotyka się też default, ale w tym pytaniu poprawny zestaw spośród odpowiedzi to rect, poly, circle. Wartość square nie jest osobnym typem, ponieważ kwadrat jest po prostu szczególnym przypadkiem prostokąta, więc opisuje się go przez rect i odpowiednie współrzędne. Podobnie triangle nie występuje jako oddzielna wartość, bo trójkąt można zdefiniować jako poly, czyli wielokąt z trzema wierzchołkami. Błąd często bierze się stąd, że uczymy się pojęć wizualnie: widzę kwadrat, więc szukam square. W kodzie ważniejsza jest jednak składnia dopuszczona przez przeglądarkę. Jeśli wpiszesz nieobsługiwaną wartość shape, mapa obrazkowa może działać nieprzewidywalnie albo wcale nie zadziałać tak, jak chcesz. Moim zdaniem warto zapamiętać prostą zasadę: prostokąt i kwadrat to rect, okrąg to circle, a wszystko bardziej nieregularne, także trójkąt, to poly. To bardzo praktyczne przy tworzeniu klikalnych infografik, map sklepów, schematów technicznych czy interaktywnych planów.