Kursor HyperText Markup Language (HTML) odnosi się do wyglądu wskaźnika myszy, tak jak jest on reprezentowany na ekranie. Chociaż kursor ma zestaw domyślnych wyglądów i zachowań, które są kontrolowane zarówno przez system operacyjny komputera, jak i sam program do przeglądania sieci, oba te elementy można zmienić w dokumencie HTML. Zmiana kształtu kursora może mieć charakter czysto estetyczny lub projektowy, może też służyć podkreśleniu użyteczności elementu strony internetowej. Oprócz możliwości zmiany kursora na jeden z predefiniowanych formularzy systemu, można go również zmienić na niestandardowy obraz. Istnieją pewne problemy z używaniem kursora HTML, jednak większość z nich wynika z niekompletnej implementacji przeglądarki w przeglądarce lub ograniczeń systemu operacyjnego.
Możliwość modyfikowania stanu i obrazu kursora HTML była prawie zawsze funkcją, którą można było osiągnąć online poprzez użycie bardzo długich i niekonsekwentnie wykonujących się skryptów lub wtyczek, ale wprowadzenie drugiej wersji Kaskadowych Arkuszy Stylów ( CSS) w HTML znacznie uprościł ten proces i uczynił go bardziej spójnym. Zmieniając właściwość kursora dokumentu obiektowego modelu (DOM), kursor, który pojawia się w oknie przeglądania przeglądarki, może zostać zmodyfikowany. Rzeczywista funkcjonalność myszy, jeśli chodzi o klikanie i przeciąganie, nie może zostać w ten sposób zmieniona.
Kursor HTML można zmienić na dowolny z wielu wstępnie zdefiniowanych kształtów. Większość z tych kształtów jest wykorzystywana przez system operacyjny podczas normalnego użytkowania i obejmuje standardową strzałkę wskazującą, krzyżyk, ikonę oczekiwania lub strzałki używane podczas zmiany rozmiaru okien w różnych kierunkach. Istnieje również możliwość określenia niestandardowego obrazu, który będzie używany zamiast kursora. Aby określić kursor HTML klienta, plik obrazu nie może być większy niż 32 piksele szerokości i wysokości. Powinien być również zaprojektowany w formacie pliku, który zapewnia przezroczystość, tak aby części witryny pod nieużywanymi sekcjami kursora były widoczne, a sam kursor nie był wyświetlany jako solidny nieprzezroczysty blok z narysowaną na nim ikoną.
Nie wszystkie przeglądarki implementują wszystkie funkcje w ten sam sposób, więc zmiana kursora HTML nie zawsze daje takie same wyniki. Niektóre przeglądarki obsługują różne nazwy dla różnych kursorów systemowych, podczas gdy inne wymagają dostosowania kodu, aby pojawił się niestandardowy kursor HTML. Ponadto używany system operacyjny i kontekst, w którym działa przeglądarka, również mogą uniemożliwić zmianę kursora.