Element HTML a służy do tworzenia dwóch rodzajów łączy: zewnętrznych, do innych stron internetowych, i wewnętrznych, do wybranych miejsc w obrębie jednej strony internetowej. Treścią łącza może być nie tylko tekst, lecz również obraz graficzny.
<a href="">www.shebang.pl</a>
<a href="/#fragment">odnośnik do części strony</a>
<a href="">
<img border="0" alt="Shebang" src="shebang.png" width="50" height="50">
</a>
Jeśli element a ma zdefiniowany atrybut href, to reprezentuje na stronie internetowej hiperłącze. Domyślnie nieodwiedzone hiperłącze jest podkreślone i ma kolor niebieski, a po odwiedzeniu robi się fioletowe.
Za pomocą atrybutu target można wybrać, czy łącze ma zostać otwarte w tym samym oknie lub w tej samej karcie przeglądarki, czy w nowym oknie lub w nowej karcie.
Jeśli atrybut href zostanie opuszczony, nie mogą być zdefiniowane atrybuty target, download, ping, rel, media, hreflang oraz type.
Jeśli atrybut itemprop jest zdefiniowany, dodatkowo musi być zdefiniowany także atrybut href.
Dodatkowe przykłady
Otwieranie strony w nowej karcie:
<a href="" target="_blank">Shebang.pl</a>
Łącze do adresu e-mail:
<a href="mailto:jakisadres@mailowy.com">Skontaktuj się z nami</a>
Łącze do Skype:
<a href="skype:nazwa_profilu">Skype</a>
Łącze do numeru telefonu:
<a href="tel:+123456789">123456789</a>
JavaScript w hiperłączu:
<a href="" onclick="javascript:alert('Witaj, świecie!');" >Przejdź na Shegang.pl</a>
Atrybuty obowiązkowe
Element a nie ma atrybutów obowiązkowych, ale zobacz opis na początku strony.
Atrybuty opcjonalne
Atrybuty globalne HTML 5 oraz:
| Atrybut | Opis | HTML 4.01 | HTML 5 |
|---|---|---|---|
href |
Adres URL, pod który prowadzi łącze. Łącza mogą wskazywać nie tylko strony internetowe przy użyciu protokołu HTTP, ale również inne rodzaje zasobów, np. przy użyciu protokołów file, ftp czy mailto. |
✔ | ✔ |
hreflang |
Określa język dokumentu, do którego prowadzi łącze. Dla języka HTML 5 dozowlone wartości tego atrybutu są opisane w dokumencie BCP47, a dla HTML 4.01 — w dokumencie RFC1766 | ✔ | ✔ |
download |
Określa, że kliknięcie łącza powinno spowodować pobranie wskazywanego zasobu, a nie jego otwarcie w oknie przeglądarki | ✘ | ✔ |
ping |
Zawiera listę adresów URL zasobów, które powinny być powiadomione o kliknięciu łącza mającego zdefiniowany ten atrybut | ✘ | ✔ |
rel |
Określa relację między bieżącym dokumentem a dokumentem, do którego prowadzi łącze | ✔ | ✔ |
media |
Określa rodzaje mediów, dla których przeznaczony jest wskazywany zasób | ✔ | ✔ |
name |
Określa nazwę elementu, dzięki której można się do niego odwoływać w skryptach i stylach | ✔ | ✘ |
rev |
Określa relację między bieżącym dokumentem a dokumentem, do którego prowadzi łącze. Odwrotność atrybutu rel |
✔ | ✘ |
shape |
Określa kształt obszaru mapy obrazkowej | ✔ | ✘ |
target |
Określa sposób otwarcia dokumentu, do którego prowadzi łącze | ✔ | ✔ |
type |
Określa typ MIME dokumentu zgodny z punktem 3.7 dokumentu RFC2616 | ✔ | ✔ |
Kontekst użycia
| Modele treści HTML5 | treść ogólna, syntagmatyczna, interaktywna |
|---|---|
| Elementy nadrzędne | elementy syntagmatyczne |
| Elementy potomne | elementy przezroczyste |
| Znaczniki | Musi mieć zarówno znacznik otwierający jak i zamykający |
| Normy | HTML 5 — podrozdział 4.6.1; HTML 4.01 — podrozdział 12.2 |
| Interfejs DOM | HTMLAnchorElement |
| Różnice między HTML 4.01 a HTML 5 | W HTML 5 atrybut W HTML 5 atrybut W HTML 5 element |
Obsługa przez przeglądarki
| Firefox | Chrome | Opera | Safari | Internet Explorer |
|---|---|---|---|---|
| ✔ | ✔ | ✔ | ✔ | ✔ |
