HTML - Les frames
Présentation des frames
Grâce à la technologie des frames (en français "cadres") il est désormais possible
d'afficher plusieurs pages HTML dans différentes zones (ou cadres).
|  | Les frames ne font pas partie de la spécification du HTML 3.x,
il faut donc déclarer sa page comme étant écrite
en HTML 4.0 ! | 
Créer des frames
Afin de créer un site contenant des cadres, il
suffit de créer un fichier contenant l'agencement des cadres : ce fichier HTML a pour particularité
d'avoir un conteneur  <FRAMESET> à la place du jeu de balises <BODY>.
C'est cette balise qui définit les cadres par leur dimension en pixels ou en pourcentage (%).
Voyons ceci sur 3 exemples: 
	- 2 cadres verticaux
- 2 cadres horizontaux
- 2 cadres horizontaux et un vertical
Exemple n°1
<FRAMESET COLS="20%,
80%">
<FRAME SRC="frame1.htm" NAME="gauche">
<FRAME SRC="frame2.htm" NAME="droite">
</FRAMESET> 
 
 
Exemple n°2
<FRAMESET ROWS="20%,
80%">
<FRAME SRC="frame1.htm" NAME="haut">
<FRAME SRC="frame2.htm" NAME="bas">
</FRAMESET> 
 
 
Exemple n°3
<FRAMESET COLS="20%,
80%"> 
<FRAME SRC="frame1.htm" NAME="gauche">
<FRAMESET ROWS="50%, 50%">
<FRAME SRC="frame2.htm"
	  NAME="droit_haut">
<FRAME SRC="frame3.htm"
	  NAME="droit_bas">
</FRAMESET> 
 
Les attributs de la balise <FRAMESET>
	
		| Attribut | Valeur | Action | 
	
		| Rows | pourcentage (entre 1 et 100) valeur en pixels
 En fixant une seules des valeurs et en donnant à l'autre la valeur *, la valeur s'ajuste automatiquement
 | Cadre horizontal | 
	
		| Cols | pourcentage (entre 1 et 100) valeur en pixels
 En fixant une seules des valeurs et en donnant à l'autre la valeur *, la valeur s'ajuste automatiquement
 | Cadre vertical | 
	
		| Frameborder | YES NO
 | Indique si le cadre a une bordure
		ou non | 
	
		| Border=n | n est une valeur définissant la taille de la bordure | Indique la taille de la bordure | 
	
		| Bordercolor | Nom de la couleur Valeur de la couleur en hexadécimal
 | Indique la couleur de la bordure | 
	
		| Framespacing=n | n est une valeur définissant l'espace entre les cadres | Indique l'espace entre les cadres | 
Les attributs de la balise <FRAME>
La balise <FRAME> permet de définir un
ou plusieurs cadres au sein de la balise <FRAMESET>
	
		| Attribut | Valeur | Action | 
	
		| Src | URL | Définit l'emplacement de la page à afficher dans le cadre | 
	
		| Name | "nom" | Définit un nom qui permettra d'afficher un autre document dans le cadre gâce à l'attribut Target | 
	
		| Marginwidth=n | n est un entier spécifiant le nombre de pixels | Taille des marges latérales | 
	
		| Marginheight=n | n est un entier spécifiant le nombre de pixels | Taille des marges du haut et du bas | 
	
		| Frameborder | YES NO
 | Détermine si les cadres auront ou non une bordure | 
	
		| Border=n | n est un entier spécifiant le nombre de pixels | Taille de l'espace entre les cadres (uniquement pour Netscape) | 
	
		| Noresize | (Aucune) | Interdit à l'utilisateur de redimensionner les cadres (Ce n'est pas la valeur par défaut) | 
	
		| Scrolling | YES NO
 AUTO
 | Permet ou non l'affichage d'une barre de défilement (Auto laisse le navigateur décider de son utilité) | 
Comment éviter les erreurs avec les navigateurs non compatibles?
On utilisera les balises <NOFRAMES> et </NOFRAMES>
permettant de spécifier un texte HTML à afficher en cas de
navigateur ne permettant pas d'afficher les frames. Le texte
entre les balises <NOFRAMES> et </NOFRAMES> doit donc
contenir les balises <BODY> ... </BODY>.
Exemple :
<FRAMESET COLS="20%,
80%">
<FRAME SRC="frame1.htm" NAME="gauche">
<FRAME SRC="frame2.htm" NAME="droite">
</FRAMESET>
<NOFRAMES>
<BODY>
Cette page HTML nécessite un navigateur supportant les frames,
veuillez nous en excuser.
</BODY>
</NOFRAMES>
Désigner un cadre avec un lien hypertexte
Pour faire afficher des liens dans un des cadres, il suffit
d'utiliser l'attribut target dans la balise <A HREF ..>
pour spécifier le nom du cadre qui a été spécifié dans la
balise <FRAME> par l'attribut NAME.
Par exemple:
<A HREF="page.htm" TARGET="gauche">
	
		| Valeur | Action | 
	
		| _self | Affiche la cible dans le même cadre que le lien | 
	
		| _parent | Affiche la cible dans le cadre de niveau supérieur | 
	
		| _blank | Affiche la cible dans une nouvelle fenêtre | 
	
		| _top | Affiche la cible dans la fenêtre entière du navigateur | 
Trucs & astuces pertinents trouvés dans la base de connaissances
Discussions pertinentes trouvées dans le forum
 
