Język html udostępnia znaczniki pozwalające w łatwy sposób stworzyć listę. 

Rodzaje list:
-wypunktowana
-numerowana
-definicji
-zagnieżdzona

Lista wypunktowana
Tworzy się ją za pomocą znacznika <ul>, wewnątrz którego umieszcza się pozycje listy w znacznikach <li>.
<ul>
<li>pozycja 1
<li>pozycja 2
<li>pozycja 3
</ul>

W języku html nie jest wymagany znacznik zamykający , ale już w XHTML tak.

Lista numerowana
Tworzy się ją za pomocą znacznika <ol>, wewnątrz którego umieszcza się pozycje listy w znacznikach <li>, podobnie jak w liście wypunktowanej.
<ol>
<li>pozycja 1
<li>pozycja 2
<li>pozycja 3
</ol>  

Lista definicji
Tworzy się ją za pomocą znacznika <dl>, wewnątrz którego umieszcza się nagłówek w znaczniku <dt> i pozycje listy w <dd>.
<dl>
<dt>nagłówek 1
<dd>pozycja 1
<dt>nagłówek 2
<dd>pozycja 2
</dl>  

Lista zagnieżdżona
Zagnieżdżanie polega na umieszczaniu jednej listy wewnątrz drugiej.
<ul>nagłówek 1
<li>pozycja 1.1
<li>pozycja 1.2
<ul>nagłówek 1.2
<li>Pozycja 1.2.1
</ul>
<li>pozycja 1.3
</ul>  

Wygląd list można definiować w arkuszu stylów CSS.
Np.
ul { list-style-type: typ }
Typ określa rodzaj wyróżnika:
-disc - koło
-circle - okrąg
-square - kwadrat
-decimal - liczby arabskie
-lower-alpha - małe litery
-upper-alpha - duże litery
-upper-roman - duże liczby rzymskie
-lower-roman - małe liczby rzymskie
-none - brak wyróżnika
Zamiast wyżej wymienionych wyróżników można użyć własnego zapisanego jak plik graficzny.
ul { list-style-image: url(ścieżka dostępu) }