Ramki pozwalają na wczytanie w jednym oknie kilku plików jednocześnie. Obecnie stosowanie ramek jest niezalecane i stosowane jedynie w przypadkach, gdy istnieje konieczność wczytania w jednym oknie podstron w kilku różnych domenach.
Strony, które składają się z ramek powinny posiadać następujący DOCTYPE:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
Zamiast elementu
<body></body> strona powinna posiadać element <frameset></frameset> zawierający definicje ramek. W zależności od tego, czy chcemy podzielić stronę w poziomie czy w pionie dopisujemy atrybut cols lub rows, w którym wymieniamy oddzielone przecinkami szerokości ramek.W środku elementu
<frameset></frameset> wstawiamy elementy <frame>.<frameset rows="20%,*"> <!-- szerokość ramki możemy zastąpić gwiazdką - szerokość zostanie dobrana automatycznie -->
<frame src="./plik.html" scrolling="no" name="ramka">
<frame src="http://www.google.pl/" name="google">
</frameset>
<noframes>
<!-- tutaj wstawiamy tekst dla starszych wersji przeglądarek, które nie obsługują ramek -->
</noframes>
<frame src="./plik.html" scrolling="no" name="ramka">
<frame src="http://www.google.pl/" name="google">
</frameset>
<noframes>
<!-- tutaj wstawiamy tekst dla starszych wersji przeglądarek, które nie obsługują ramek -->
</noframes>
Atrybut
src określa jaki plik lub adres ma być wczytany, scrolling określa istnienie paska przewijania - może mieć wartość yes, no lub auto. Jeśli chcemy skorzystać z możliwości otwierania linku w konkretnej ramce, należy dopisać atrybut name z dowolną nazwą. Linki opatrzone atrybutem target będą otwierane w ramce o nazwie takiej, jak wartość tego atrybutu: