Netscape a implémenté le partage de la fenêtre en "cadres" ou "cellules" autonomes. Ceci revient à diviser la fenêtre en plusieurs zones appelées frames. Chaque zone est gérée indépendamment des autres. Chaque zone porte un nom.
Trois commandes permettent de gérer cette fonctionnalité, mais
attention le corps du fichier n'est plus inclus dans <BODY> et </BODY> mais dans <FRAMESET> et </FRAMESET>.
<FRAMESET ROWS COLS BORDER> </FRAMESET>
permet de diviser une zone en cellules horizontales ou verticales.
ROWS="n,n%,*,..."
divise la zone en cellules horizontales.
n = hauteur en nombre de pixels
n%= hauteur de la cellule en pourcentage de l'écran
* = hauteur restante
COLS="n,n%,*,..."
divise la zone en cellules verticales.
n = largeur en nombre de pixels
n%= largeur de la cellule en pourcentage de l'écran
* = largeur restante
BORDER
permet de supprimer (BORDER=0) ou d'agrandir la valeur du séparateur de cellules.
<FRAME NAME SRC SCROLLING MARGINWIDTH MARGINHEIGHT NORESIZE BORDER FRAMEBORDER FRAMESPACING BORDERCOLOR>
caractérise la cellule
NAME="nom_de_la_zone"
SRC="URL"
SCROLLING="yes" ou "no" ou "auto"
MARGINWIDTH= nombre de pixels de la marge verticale
MARGINHEIGHT= nombre de pixels de la marge horizontale
NORESIZE évite la modification de la taille par l'utilisateur
BORDER= nombre de pixels du bord
FRAMEBORDER="yes" ou "no" par défaut = "yes"
"yes" le séparateur est en 3-D
"no" le séparateur est plat
FRAMESPACING= nombre de pixels de la séparation
BORDERCOLOR="#RRVVBB" couleur de la séparation
<NOFRAME> </NOFRAME>
à partir de cette commande, le texte ne sera affiché que par les Browsers ne sachant pas gérer les frames.
Pour utiliser les "frames", un nouvel attribut "TARGET" de la commande <A> permet de donner le nom
de la cellule ( cf attribut "NAME" de la commande <FRAME>) dans laquelle le document sera affiché
<A HREF="url" TARGET= >lien</A>
TARGET="Cellule-1" affichage dans la cellule "Cellule-1"
TARGET="_self" affichage dans la même cellule
TARGET="_blank" affichage dans une nouvelle fenêtre
TARGET="_top" suppression de toutes les frames, retour à un affichage classique
Exemple: Le but de l'exemple est de fabriquer une page qui ressemble au tableau ci-dessous
Cellule gauche
Cellule droite-haute
Cellule droite-basse
<HTML>
<FRAMESET COLS="25%,*">
<FRAME SCROLLING="yes" NAME="cel-g" SRC="frame-1.html">
<FRAMESET ROWS="50%,50%">
<FRAME SCROLLING="yes" NAME="cel-d-h" SRC="frame-dh.html">
<FRAME SCROLLING="yes" NAME="cel-d-b" SRC="frame-dg.html">
</FRAMESET>
</FRAMESET>
<NOFRAME>
Dommage, votre <I>Browser</I> ne permet pas les <I>frames</I>.
</NOFRAME>
</HTML>