N'oubliez pas, vous pouvez reduire les fenetres pour organiser la page...
Telechargez ici Eclipse, logiciel tres puissant pour coder ; De nombreux plugs-in sont disponibles.
Plier le cadre - Tutoriaux HTML - 1ere partie : presentation


1ere Partie : Présentation

Pour commencer, une petite mise au point de vocabulaire, même si je tenterais de parler le plus simplement possible :
Une balise, un marqueur ou un tag est définit entre " < " & " > " !
Une balise accepte des attributs : <font face> . Ici, c'est donc la balise <font> qui prend comme attribut " face ".
Un attribut, dans 99,9% des cas accepte une valeur : <font face="Verdana"> . Ici, la balise <font> prend comme attribut
" face " qui a pris comme valeur " Verdana ".
ATTENTION, le sens des trois termes vu ci-dessus est à savoir reconnaitre ! Sans cela, vous aurez du mal à comprendre
la suite des cours.

Verdana est entre guillemets. Dans ce cas, Verdana est définit comme une chaîne de caractères. Une chaîne de caractères
est définie par des guillemets, c'est une suite de caractères qui ne veulent rien dire .... pour le PC ! Ce qui ne veut
rien dire pour le PC veut dire quelque chose pour vous, donc en simple, tout ce qui vous parrez français (ou du moins
dans votre langue) est une chaîne de caractère !
Ici, Verdana est un nom de police manuscrite, ce n'est donc pas du code proprement dit.

Un navigateur est un logiciel d'exploration du Web. Vous êtes dedans ! Pour la plupart, ce sera Internet Explorer, mais
il existe aussi Netscape Navigator, Mozilla, Opera, etc ! Vous vous en rendrez compte, cette multitude de logiciels
différents vous posera problème...
L'HTML est donc lu par le navigateur, c'est lui qui le lit pour vous afficher ce qui doit en résulter. Je ne parlerais
donc plus de la lecture du PC, mais de la lecture du navigateur, du rendu de votre page dans celui-ci.

Un lien (hypertexte) est un bout de texte cliquable. Lorsque vous cliquez sur le texte (souvent souligné ou mis en valeur),
vous changez de page ou une autre apparait. On recconnait un lien (habituellement), par le changement d'état du curseur
lorsque l'on passe dessus (en principe, une main sans manche).

Commencons dés à présent avec les rudiments d'une page...



Plier le cadre - Tutoriaux HTML - 2eme Partie : Comment construire une page ?


Une page Web n'est que du texte. Ce texte appellé code HTML peut se saisir dans un éditeur de
texte des plus simples et des plus pratiques qui soient : le bloc-notes de Windows (je considérerais
par ailleurs que vous êtes sous Windows, même si peut de différences seront à constater pour un autre OS).
Pour ouvrir le bloc-notes :

Soit par le raccourci clavier Win+R puis "notepad", soit par Démarrer puis Programmes, Accesoires et enfin Bloc-notes.
Le bloc-notes est un éditeur de texte qui ne tape que ce que vous lui demandez. Pour Microsoft Word, par exemple,
lorsque vous voulez mettre un texte en gras, il vous suffit de cliquer sur un bouton. Dans ce cas, il rajoutera
du code que vous ne verrez pas. Ici, bloc-notes ne rajoute rien.
Construire une page de base
Dans le bloc-notes, entrez ce code :

<html>
<head>
<title>The life of my flowers</title>
</head>
<body>
My flowers are beautiful !
</body>
</html>

Puis enregistrez ce fichier dans un répertoire que vous dédirez à votre futur site sous le nom de fichier "index.htm". Remarque :
Si vous l'enregistrez simplement avec le nom "index", il vous enregistrera par logique un fichier bloc-notes, en l'occurence
"index.txt". Ajouter .htm permet de préciser qu'il s'agit d'une page internet.

Remarque :

Il est également possible d'utiliser l'extension .html, cela ne fait aucune différence avec .htm. Ceci dit, il est préférable de
toujours utiliser la même extension, pour éviter au maximum les erreurs de lien. Vous pouvez maintenant voir dans votre dossier
une page internet appellée "index". Ouvrez-là avec votre navigateur. Vous constatez que la page se nomme "The life of my flowers"
(regardez dans la barre des titres, en haut) et qu'elle affiche "My flowers are beautiful !".

Etudions à présent ce code :

Une balise en HTML se referme (presque) toujours :
<html> est ouvert, alors </html> le fermera. Le slash (/) permet donc de fermer la balise.
<html> déclare la page HTML, puis viens <head> (en anglais, tête) qui contiendra tout ce qui représente le cerveau de la page.
En clair, une page est comme un humain, il y a une tête et un corps. La tête contrôle, et le corps affiche. Tout ce qui se
trouvera entre <head> et </head> sera donc du domaine de la tête de la page. Par logique, tout ce qui sera dans le body
(en anglais, corps) de la page, entre <body> et </body> sera affiché. Dans le head (donc entre <head> et </head> ), on
peut remarquer le titre pris entre <title> et </title> , c'est pareil, par logique et avec un minimum d'anglais, on peut
en déduire que tout ce qui sera dans le title de la page (donc, entre <title> et </title> ) apparaitera dans la barre de
titre. Cela fait partie de la tête (dans le head, entre <head> et </head> ), ce qui est logique vu que le texte entré ne
sera pas affiché directement dans la page.
Maintenant que les grand principes ont été vus, entrons dans les détails avec par exemple le formatage de textes.

Plier le cadre - Tutoriaux HTML - 3eme Partie : Formatage, mises en valeur, effets sur bouton ?


Mettre en gras : b est utilisé pour mettre le texte en gras. Son origine provient de l'anglais bold qui signifie graisse, dans le contexte informatique.
Exemple : <b>My flowers are beautiful</b>

Résultat : My flowers are beautiful

Mettre en italique :

i est utilisé pour mettre le texte en italique. Son origine provient de l'anglais italic.

Exemple : <i>My flowers are beautiful</i>

Résultat :My flowers are beautiful Souligner : u est utilisé pour souligner du texte. Son origine provient de l'anglais underline qui signifie souligner.

Exemple : <u>My flowers are beautiful</u>

Résultat :My flowers are beautiful Barrer : s est utilisé pour barrer du texte. Son origine provient de l'anglais strike qui signifie barrer.

Exemple :
<s>My flowers are beautiful</s>

Résultat : My flowers are beautiful
Remarque :
strike lui-même est aussi accepté à la place du s seul :
<strike>My flowers are beautiful</strike>
Nous avons ici l'occasion d'expliquer un des fondements de HTML.

Nous voulons maintenant mettre My flowers are beautiful en gras-italique-souligné :
<u><i><b>My flowers are beautiful</b></i></u>

Nous remarquons que bien évidemment, toutes les balises ouvertes avant le texte sont bien entendu fermées aprés. Mais en respectant toujours un principe, les balises sont toujours fermées dans l'ordre inverse de leur ouverture.
Ainsi, <u><i><b>My flowers are beautiful</u></i></b> est complétement faux. Centrer un texte : Pour cela, ce sera principalement <div> qui sera utilisé, accompagné de son attribut align .
align prendra alors au choix 3 valeurs possibles : left , right , center (respectivement: gauche, droite, centré).

Exemple : <div align="center">My flowers are beautiful</div> Remarque :
Il existe également justify qui justifiera le texte (de façon à en faire un rectangle le plus parfait possible). Cependant, cette valeur est très peu utilisée, fiable et compatible. Mettre de la couleur à un texte : <font> s'attribuera de cette tâche. Il prendra pour cela color comme attribut qui prendra la couleur désirée comme valeur.


Exemple : <font color="red">My flowers are beautiful</font>

Résultat : My flowers are beautiful

Remarque :
Les couleur peuvent principalement s'exprimer de deux façon, en donnant leur nom anglais (cf: exemple) ou en utilisant le système hexadécimal.
Les codes hexadécimals commencent par un diése (#) et comportent 6 chiffres ou caractères.
En voici leur syntaxe : #RRVVBB (avec R pour rouge, V pour vert et B pour bleu).
Les codes vont de 0 à F (0 1 2 3 4 5 6 7 8 9 A B C D E F). 0 désigne l'absence de la couleur, F son maximum.

Ainsi, #FF0000 désignera un rouge parfait.
#00FF00 un vert parfait et #0000FF un bleu parfait.
Par logique, #FFFF00 donnera un jaune parfait (rouge + vert) !
Le #FFFFFF sera le blanc et #000000 le noir.
Des intermédiaires comme #A4BCE0 donneront le bleu qui entoure ces tutos.

Pour les codes constitués de 6 caractères identiques il est possible de n'en préciser que 3, ceci dans l'optique d'alléger le code.
Ainsi, #CCCCCC (gris) pourra s'écrire #CCC (qui entres parenthèses correspond à grey). Choisir la police d'écriture : Ici encore, <font> sera utilisé mais en employant ce coup-ci l'attribut face qui prendra un nom de police comme valeur.

Exemple : <font face="courrier new ">My flowers are beautiful</font>

Résultat : My flowers are beautiful

Remarque :
Les polices sont cherchées sur le poste (PC) du client (visiteur). Il faut donc qu'elles s'y trouvent pour pouvoir être utilisées. Si la police demandée par face n'existe pas, ce sera celle par défaut qui sera utilisée, en l'occurence New Times Roman.
Il est donc conseillé de n'utiliser que les polices courante comme Arial, New Times Roman, Verdana, Tahoma ou MS Sans Serif.
On peut aussi faire la liste des polices de remplacement, si la première n'est pas trouvée, la deuxième sera utilisée et ainsi de suite :
<font face="Verdana, Arial, Tahoma">My flowers are beautiful</font> Définir la taille des caractères : C'est cette fois-ci l'attribut size (de l'anglais taille) qui acceptera comme valeur les numéros de 1 à 7 .

Exemple : <font size="18">My flowers are beautiful</font>

Résultat : My flowers are beautiful

Remarque :
La taille des textes définie par font est assujettie aux paramétres du navigateur du client (visiteur).
Ainsi, dans Internet Explorer par exemple, on pourra changer/augmenter toutes les tailles ou au contraire les rabaisser en actionnant la touche Ctrl et en utilisant simultanément la molette de la souris.
Maintenant que nous avons passé en revue les trois attributs les plus courants de <font> , voyons pour les additionner.
Supposons la phrase traditionnelle en taille 5 , en noir et avec la police Verdana :
<font face="Verdana" color="#000" size="5">My flowers are beautiful</font>


Des balises exprés pour la gestion des titres sont également disponibles :

<h1>My flowers are beautiful</h1> donnera :

My flowers are beautiful


<h2>My flowers are beautiful</h2> donnera :

My flowers are beautiful


<h3>My flowers are beautiful</h3> donnera :

My flowers are beautiful


<h4>My flowers are beautiful</h4> donnera :

My flowers are beautiful


<h5>My flowers are beautiful</h5> donnera :
My flowers are beautiful

<h6>My flowers are beautiful</h6> donnera :
My flowers are beautiful

Quelques balises en vrac :

<sub> met en indice
<sup> en exposant

<small> en plus petit que normal

<big> en plus gros que normal Remarque :

Beaucoup de balises différentes comme entres autres <cite> (pour citer) sont disponibles, mais la plupart ne servent finalement pas à grand chose et s'avérent plus un luxe qu'autre chose.

Former un paragraphe :

Un texte entouré de <p> sera présenté comme un bloc délimité par deux entrées au dessus et en dessous de façon à faire ressortir un paragraphe.

Exemple :
...textotextatextotextatextotextatextotexta... <p>Coucou ! My flowers are beautiful !</p> ...textotextatextotextatextotextatextotexta...

Résultat :
...textotextatextotextatextotextatextotexta...

Coucou ! My flowers are beautiful !

...textotextatextotextatextotextatextotexta... Remarque :
p peut accepter des attributs comme align .
Ainsi, <p align="center"> centrera le paragraphe, ce qui évite d'imbriquer un div au p .

Un simple retour à la ligne :

Vous pourrez toujours appuyer sur la touche Entrée pour revenir à la ligne ou en passer, la navigateur n'en tiendra pas compte.
<br> représentera donc un retour à la ligne.

Exemple : My flowers are beautiful<br><br>My flowers are beautiful

Résultat :
My flowers are beautiful

My flowers are beautiful

Remarque :
<br> est une balise orpheline. Elle n'attend donc pas de de fermeture, ce serait même une erreur.
Précisons aussi au passage que la version 5 de HTML (XHTML - eXtensible HyperText Markup Language) n'accepte pas les balises orphelines et demande de les fermer d'une certaine façon ; en l'occurence pour <br> : <br /> .

Plier le cadre - Tutoriaux HTML - 4ere partie : Hypertext : Creation des liens


Pour passer d'une page à l'autre, vous cliquez sur du texte ou une image. Ces derniers sont donc dôtés de ce que l'on appelle des liens.
Un lien est défini grâce à la balise <a> accompagnée obligatoirement de son attribut href qui indiquera la page cible :
<a href="mattemyflowers.htm">Look ! My flowers are beautiful !</a>

Dans la plupart des navigateurs, un lien sera par défaut souligné, en bleu. Si il a déjà été visité, il passe en violet.

L'attribut target viendra préciser le mode d'ouverture de la page. Ainsi, ses valeurs _blank , _self , ou _parent (les plus courantes) ouvrirons respectivement la page dans une nouvelle fenêtre, dans la même ou dans la fenêtre mére (principale).
<a href="mattemyflowers.htm" target="_blank">Look ! My flowers are beautiful !</a>

Remarque :
target peut également servir pour cibler les frames en y indiquant le nom que vous leur aurez donné à l'aide de name . Nous en détaillerons leur utilisation dans un prochain chapitre.

Définir des liens internes : Nous parlerons ici d'ancres, qui serviront à accéder à un endroit précis de la page.
Une ancre se définit grâce à <a> accompagné de l'attribut name qui précisera le nom de l'ancre.

Hellloooooooooooooo !
<a name="comment">My flowers are very beautiful !</a>
Gooooooooodbyeee !
Au fait, comment sont mes fleurs ??
<a href="#comment">Clique ici pour savoir</a>


Si l'on clique sur "Clique ici pour savoir", la page remontra à "My flowers are beautiful".
Une ancre est appellée comme un lien avec un diése (#) devant son nom.
Si on souhaite atteindre un endroit précis de la page b.htm à partir de la page a.htm, on placera une ancre <a name="endroit"> à l'endroit souhaité dans b.htm et on proposera <a href="b.htm#endroit"> comme lien dans la page a.htm. Remarque :
Pour atteindre une page, on devra définir son chemin.
Les slashs (/) séparent les dossier et le lien spécial " ../ " permet de remonter d'un dossier.
Si la page b.htm est dans le dossier d1, que la page est dans b.htm est dans le dossier d2 qui lui-même est dans le d1, on utilisera <a href="../b.htm"> pour atteindre la page b.htm à partir de a.htm (à méditer ;). Pour proposer un envoi de mail, le protocole mailto est à votre disposition.

<a href="mailto:myflowers@beautiful.are">Mailez-moi, petites fleurs !</a>

Ce lien ouvrira le logiciel de messagerie par défaut avec l'utilisateur par défaut du visiteur en indiquant directement l'adresse myflowers@beautiful.are dans le champs A:.

Vous pouvez également préciser l'objet :
<a href="mailto:myflowers@beautiful.are?subject=Very beautiful !!">Mailez-moi, petites fleurs !</a>

Mais un site sans couleurs ni images, c'est moche ! Voici le sujet du prochain chapitre...

Plier le cadre - Tutoriaux HTML - 5eme partie : Gestion de graphismes


Ce que nous appellerons Graphisme est une image, une couleur d'arrière plan ou une image d'arrière plan.

Définir la couleur de fond :

Pour définir la couleur d'arrière plan de l'ensemble de la page courante, ce sera l'attribut bgcolor de <body> qui sera employé en prenant une couleur comme valeur.

Exemple : <body bgcolor="#3c5d8a">

Pour connaitre la signification des couleurs, reportez-vous à un encadré vu dans un chapitre précédent.

Définir une image d'arrière plan :

Pour afficher une image en arrière plan, la méthode sera la même que pour une simple couleur hormis que ce sera l'attribut background qui sera utilisé en lui passant en valeur le chemin de l'image à afficher.

Exemple : <body background="imges/ex_cours.gif">
Remarque :
L'image définie sera par défaut dupliquée jusqu'à remplir intégralement la page. Beaucoup d'options sont disponible pour réguler et diriger les images d'arrière plan, mais ceci avec CSS (Cascading Style Sheet).

Osons un écart et apprenons un code CSS :

<body style="background-image: url(images/ex_cours.gif); bakground-repeat: repeat-x">

Dans ce cas, l'image d'arrière plan définie dans url() ne sera dupliquée que sur la largeur de la page ( -x ). Ceci pour vous donner un avant-goût des possibilités de CSS qui seront vues prochainement dans d'autres cours JSAND.

Afficher une image :

Une image sur le Web correspond au format les plus courant .gif (Graphics Interchange Format) et .jpg (Joint Photographic Expert's Group). Elle sera appellée grâce à <img> et prenda au minimum obligatoirement src comme attribut qui prendra comma valeur le chemin source de l'image à afficher.

Exemple : <img src="images/ex_cours.gif">

Résultat :



Remarque :
Les images JPEG peuvent porter l'extension .jpg ou .jpeg , il n'y a aucune différence entre les deux, bien qu'il ne faut pas se tromper en les appellant. Remarque :
Le format PNG ( .png ) a été dévelloppé pour viser à remplacer le format GIF. Au départ utilisable gratuitement, le format GIF est devenu payant lorsque la société a décidé de réclamer le paiement de droits pour l'usage de la technologie LZW. Pour éviter tout problème, le W3C (World Wide Web Consortium) a décidé de propager l'utilisation du PNG. Ce langage a donc été créé en octobre 1996 et est basé sur l'algorithme de compression Lempel-Ziv-Welch (LZW), une technologie brevetée par Unisys en 1995. Ceci dit, vous pouvez utiliser le format GIF en toute tranquilité, des milliards de pages l'utilisent et ce n'est pas demain la veille que l'on vous demandera des comptes. De plus, le PNG est encore peu fiable sous Internet Explorer.

Définir les tailles :

Il est préférable de toujours définir les tailles des images, permettant une rapidité de calcul inférieur pour leur affichage. Pour en désigner sa largeur ce sera son homonyne anglosaxon width qui sera utilisé et ce sera height pour sa hauteur. Ces deux attributs de img prendront comme valeur les tailles respectives de l'image et en pixels. Il donc également possible d'agrandir ou de rétraissir uen image par rapport à se taille réelle, mais il faut bien savoir que le fait de la rétrécir n'est qu'un écrasement des pixels, et que de ce fait, une image très grande réduite de cette façon à une petite taille s'affichera aussi lentement que si elle était grande.

Exemple : <img src="images/ex_cours.gif" width="80" height="60">

Résultat :





Afficher une infobulle sur l'image :

Pour afficher ce petit rectangle jaune qui apparait lorsque l'on passe la souris sur l'image, ce sera l'attribut alt de img qui sera utilisé. A la base utilisé pour les navigations sans images, il sert maintenant surtout pour sa fonction d'infobulle.

Exemple :
<img src="images/ex_cours.gif" alt="Enervante cette image, non ?">

Laissez votre curseur dessus :

Résultat :
Enervante cette image, non ?

Si on navigue en mode sans-images :

Résultat :

Remarque :
Comme vous pouvez le constater, une image qui a un problème d'affichage est représentée par un rectangle muni d'une petite croix rouge dans son coin supérieur gauche. Le texte de alt est donc affiché dedans pour indiquer à la base aux utilisateurs de navigateurs textes ce qu'ils auraient dû voir. En principe, le rectangle correspond à la dimension de l'image si ses tailles ont été indiquées (cf: plus haut). Si ce n'est pas le cas, il prend la taille du contenu de alt , comme dans cet exemple.

Ajouter une bordure :

Par logique anglosaxonne, border est là pour ça. Cet attribut de img prendra comme valeur l'épaisseur en pixels souhaité.


Exemple : <img src="images/ex_cours.gif" border="3">

Résultat :



Remarque :
Le bordure d'une image qui servira également de lien prendra les même codes de couleurs que les liens. Pour le cas concret le plus courant, la bordure sera bleu normalement, et violette si le visiteur a déjà actionné le lien.

Comment centrer une image ?

Cette question n'aurait en principe pas lieu d'être, mais il est peut-être préférable de la préciser. En principe, vous êtes actuellement capable de centrer une image. Pour cela, rappellez-vous de la façon dont on centre un texte, et pensez que c'est idem.

Exemple : <div align="center"><img src="images/ex_cours.gif" border="1" width="250" height="176" alt="Image centrée"></div>

Résultat :


image centree

Vous remarquerez au passage que j'ai ici utilisé tous les attributs vu dans ce chapitre en une seule fois.


Je tiens à préciser qu'il existe également un système de zone sensible utilisable sur les images qui permet de définir un endroit précis de l'image qui peut être cliqué.
Ce système fonctionant avec un code demandant des points précis de coordonnées de l'image, il s'avère vite très compliqué et plus prise de tête qu'autre chose. Je ne perdrais donc pas de temps à vous le détailler ici, c'est inutile, et je vous renvoi donc vers l'utilisation d'éditeurs HTML tels que Macromedia Dreamweaver.

Pour organiser tout cela, voyons à présent les tableaux, plus utiles que vous ne le pensez...



Plier le cadre - Tutoriaux HTML - 6eme partie : Creer un tableau


Un tableaux ne sert pas forcément à ranger des données comme cela pourrait porter à le croire. Alors que l'on pourrait penser qu'il ne servent que dans des situations particulières telles que des bilans, des relevés, ou des présentations de chiffres, les tableaux HTML dépassent de loin l'utilisation d'un simple tableau. Pour prendre exemple, la page dans laquelle vous vous trouvez actuellement n'est constituée que de tableaux, ce texte est dans une de ses cellules.

La propriété que révéle tout l'intérêt d'un tableau, c'est que ses bordures peuvent être transparentes. Ils serviront donc à construire un graphisme ou à répartir des éléments de la page, sans pour autant que ça ne se remarque.

Créer un tableaux :

Un tableaux est défini par la balise <table> . Ensuite vient une arborescence de balises qui vont jusqu'à créer une cellule proprement dîtes. Pour diviser <table> en lignes, on utilisera <tr> et pour diviser enfin en cellules (colonnes), on utilisera <td> . L'arborescence des trois et dans l'ordre donné est obligatoire.

Exemple :
<table>

<tr>
<td>Ligne 1</td>
</tr>

<tr>
<td>Ligne 2</td>
</tr>

</table>

Résultat :

Ligne 1
Ligne 2



Comme vous le constatez, les deux lignes sont présentes ; bien que le résultat soit pour l'instant le même que si l'on avait mis un <br> aprés Ligne 1. Remarque :
Il existe également la balise <th> qui permet de proposer un entête aux cellules ( <td> ). Les éléments placés dans celle-ci seront mis en valeur par le navigateur, souvent en passant le tout en gras. Cette option n'est pas indispensable, voir inutile et contraignante. Pour diviser une ligne en plusieurs colonnes, on considére que <tr> représente une ligne qui va contenir différentes colonnes. Celles-ci sont définies par <td> et sont lues de haut en bas pour les afficher de gauche à droite.

Exemple :
<table>

<tr>
<td>Ligne 1</td>
<td>Ligne 1 bis</td>
</tr>

<tr>
<td>Ligne 2</td>
<td>Ligne 2 bis</td>
</tr>

</table>

Résultat :

Ligne 1 Ligne 1 bis
Ligne 2 Ligne 2 bis

Faire apparaitre les tableaux :

Pour cela, il suffira d'utiliser logiquement l'attribut border de la balise <table> en lui passant en valeur l'épaisseur de la bordure exprimée en pixels.

Exemple :
<table border="2">

<tr>
<td>Ligne 1</td>
<td>Ligne 1 bis</td>
</tr>

<tr>
<td>Ligne 2</td>
<td>Ligne 2 bis</td>
</tr>

</table>

Résultat :

Ligne 1 Ligne 1 bis
Ligne 2 Ligne 2 bis



Comme vous pouvez le remarquer, le navigateur affiche les bordures comme un relief.

<cellspacing> permet de choisir l'espace entre la bordure externe et la bordure interne. Elle prend l'espace exprimé en pixel comme valeur.
Dans cet exemple, j'ai volontairement défini un espace (trop) important pour que vous puissiez vous rendre compte.

Exemple :
<table border="5" cellspacing="30">

<tr>
<td>Ligne 1</td>
<td>Ligne 1 bis</td>
</tr>

<tr>
<td>Ligne 2</td>
<td>Ligne 2 bis</td>
</tr>

</table>

Résultat :

Ligne 1 Ligne 1 bis
Ligne 2 Ligne 2 bis

Dimensionner un tableau :

Pour donner les dimensions d'un tableau, ce sera par logique height (hauteur) et width (largeur) qui seront employés. Les tailles s'exprimeront en pixels ou en % par rapport à la fenêtre définie du client (visiteur). Le % étant interdit pour le height par le W3C.

Exemple :
<table border="2" height="80" width="270">

<tr>
<td>Ligne 1</td>
<td>Ligne 1 bis</td>
</tr>

<tr>
<td>Ligne 2</td>
<td>Ligne 2 bis</td>
</tr>

</table>

Résultat :

Ligne 1 Ligne 1 bis
Ligne 2 Ligne 2 bis

Remarque :
Si les dimensions d'un tableau ne sont précisées, celui-ci prendra alors la forme de ce qu'il contient et collera donc à l'élément le plus long et à celui le plus haut. S'il ne contient que des éléments extrémements petits, il gardera toujours approximativement un peu moins d'un cm de hauteur. Remarque :
On peut également définir la taille d'une certaine cellule en utilisant width directement dans le <td> concerné. Attention toutes fois à rester cohérent et à bien surveiller que l'addition du width de la colonne 1 et de celui de la colonne 2 corresponde bien à la taille générale du tableau indiquée dans <table> , ceci en pixel ou en %. Si la taille d'une seule colonne est définie, l'autre prendra comme taille la soustraction logique de la colonne précisée à celle de la taille générale du tableau.

Mise en forme graphique d'un tableau :

Contrôler les ombres, ajouter une couleur de fond, définir celle des bordures...



Ajouter une couleur de fond :

Nous avons vu comment ajouter une couleur d'arrière plan à la page, pour les tableaux, c'est idem ! Faîtes appel à votre mémoire, nous utiliserons bgcolor qui cette fois-ci sera un attribut de <table> .

Exemple :
<table border="2" bgcolor="#00FF00">

<tr>
<td>Ligne 1</td>
<td>Ligne 1 bis</td>
</tr>

<tr>
<td>Ligne 2</td>
<td>Ligne 2 bis</td>
</tr>

</table>

Résultat :

Ligne 1 Ligne 1 bis
Ligne 2 Ligne 2 bis




Définir la couleur des bordures :

Cet attribut peut se deviner : nous souhaitons mettre une bordure en couleur. Ors, pour créer une bordure, nous avons vu border , et pour la couleur color . La fusion des deux donne donc l'attribut bordercolor .

Exemple :
<table border="2" bordercolor="#00FF00">

<tr>
<td>Ligne 1</td>
<td>Ligne 1 bis</td>
</tr>

<tr>
<td>Ligne 2</td>
<td>Ligne 2 bis</td>
</tr>

</table>

Résultat :

Ligne 1 Ligne 1 bis
Ligne 2 Ligne 2 bis



Contrôler les ombres :

Nous souhaitons maintenant définir seulement la bordure d'ombre (la foncée). En sachant que dans la langue de Sakespare, clair se dit "light" et que sombre se dit "dark", si on souhaite mettre en couleur la bordure foncée du tableaux, il est encore simple de deviner... border + color + dark = bordercolordark . C'est donc l'attribut bordercolordark que nous emploirons ainsi que son binôme bordercolorlight pour les bordures claires.

Exemple :
<table border="2" bordercolordark="#FF0000" bordercolorlight="#0000FF">

<tr>
<td>Ligne 1</td>
<td>Ligne 1 bis</td>
</tr>

<tr>
<td>Ligne 2</td>
<td>Ligne 2 bis</td>
</tr>

</table>

Résultat :
Ligne 1 Ligne 1 bis
Ligne 2 Ligne 2 bis

Remarque :
Tous les attributs de mise en forme vus sont aussi applicables sur une cellule en particulier. Ainsi, vous pourrez définir la couleur de fond d'une certaine ligne en précisant l'attribut bgcolor au <tr> correspondant. Si c'est à une cellule en particulier, une colonne, ce sera à son <td> .
Maintenant un dernier chapitre sur les formulaires, apprennez à les découvrir comme à les maitriser...

Plier le cadre - Tutoriaux HTML - 7eme partie : Les formulaires


Ils servent un peu à tout est sont le moyen de contact avec le visiteur le plus direct. Ils contribuent aussi souvent à l'interactivité d'un site, mais leur principal rôle reste de permettre à un visiteur de fournir des informations à un script. Comme ce n'est ni un cours JavaScript, ni un cours PHP, nous en resterons à savoir les écrire, et nous verrons dans d'autres cours comment les utiliser à bon essien.

Un formulaire de base avec bouton :

Un formulaire est avant tout délimité par la balise <form> . Tous les champs qui seront inclus dans cette délimitation verront leur valeur envoyée lors de sa validation générale. Tout ceci est flou, voyons déjà un formulaire muni d'un simple bouton.

Comme dit, le tout sera donc délimité par <form> . Un formulaire sans bouton, c'est un formulaire qui ne sert à rien. Le bouton (submit) permet de valider le formulaire dans lequel il est contenu. C'est un <input> (on en retrouvera) et prend obligatoirement comme attribut type qui prendra à son tour différentes valeurs. Pour un bouton, ce sera submit . Un bouton n'est utile que si l'on sait à quoi il sert, il faudra donc préciser l'attribut value qui prendra comme valeur le nom choisi pour le bouton.

Exemple :
<form>
<input type="submit" value="I am a button !" name="Envoi">
</form>

Résultat :
Remarque :

Le bouton submit doit obligatoirement avoir un nom défini par name et il ne peut y avoir qu'un seul et unique bouton de validation par formulaire. Remarque :
Deux autres type de bouton existent. Affecter button à type donnera un bouton vide qui n'aura aucun ordre (pour submit , il aura l'ordre d'éxecuter le formulaire) et qui servira donc principalement pour des scripts. Affecter reset affichera un bouton qui aura ordre de rétablir le formulaire dans lequel il se trouve ; concrétement, vider tout ce qui a pus être rentré par le visiteur.

Créer un champs de texte :

Pour afficher ce que nous appellerons un champs de texte, nous resterons avec <input> dont sont attribut type prendra cette fois-ci comme valeur text .

Exemple :
<form>
<input type="text"> <br>
<input type="submit" value="Valider" name="Envoi">
</form>

Résultat :



Pour définir la largeur du champs, ce sera le nombre de caractère qu'il représentera qui sera utilisé avec l'attribut size qui prendra ce nombre en valeur. Toutes-fois, même si vous indiquez qu'il fera X caractères, le visiteur qui désirera en entrer plus le pourra. Pour bloquer le nombre de caractères, imposer un nombre maximal, utilisez maxlength qui prendra comme valeur ce nombre maximal.

Le code suivant affiche un champs de texte de largeur 40 caractères dans lequel on ne peut en écrire que 12.

Exemple :
<form>
<input type="text" size="40" maxlength="12"> <br>
<input type="submit" value="Valider" name="Envoi">
</form>

Résultat :


Remarque :
Il est courant pour les champs de texte destinés à l'accés de comptes ou de pages protégées de voir des champs de texte qui affichent des * (ronds) à la place des caractères entrés, ceci dans un but de sécurité. Pour cela, il vous suffit de remplacer text par password (littéralement mot de passe en anglais).
Ainsi, ce champs de texte réagira identiquement à un normal mais visuellement n'affichera pas les caractères entrés :

Créer un champs de texte multiligne :


Il est également possible de rendre un champs de texte multilignes en utilisant <textarea> . Son attribut cols permettra de définir sa largeur de caractères (remplace size ) et rows permettra cette fois-ci de définir sa hauteur de lignes. Attention, alors que <input> est une balise orpheline, <textarea> nécessite une fermeture.

Exemple :
<form>
<textarea cols="40" rows="4"></textarea> <br>
<input type="submit" value="Valider" name="Envoi\#>
</form>

Résultat :


Remarque :
Pour tous les <input> vus, il est possible d'entrer un texte par défaut au champs de texte, ce que le visiteur verra dedans à sont "arrivée". Ceci avec l'attribut value qui prendra comme valeur le texte par défaut.

Checkboxs / Boutons radio :

Les checkboxs, littéralement Cases à cocher, sont les petits carrés blanc qui se retrouvent munis d'un signe OK lorsque vous cliquez dessus pour sélectionner l'élément designé par le texte souvent à sa droite.

Encore une fois, ce sera la balise <input> qui sera utilisée en donnant à son attribut type la valeur checkbox . L'attribut value sera dans beaucoup de cas aussi de mise, sa valeur correspondra à ce que représente le checkox, le texte de droite souvent (ceci dans un but d'envoi de données).

Exemple :
<form>
My flowers are :
<input type="checkbox" value="beautiful">Beautiful <br>
<input type="checkbox" value="bad">Bad <br>
<input type="checkbox" value="good">Good <br>
<input type="submit" value="Valider" name="Envoi">
</form>

Résultat :
My flowers are :
Beautiful
Bad
Good
Remarque :
Pour préselectionner un checkbox, il suffira de lui ajouter checked comme attribut. Celui-ci n'attend en principe pas de valeur, mais si vous comptez sur une migration vers XHTML, pensez que celui-ci n'acceptera que checked="checked" , même si c'est dénué de sens, il n'existe pas d'autre valeur pour checked que checked . Dans cet exemple, on sent bien qu'il y a un problème. Alors qu'il serait logique qu'une seule réponse soit possible, on peut en sélectionner plusieurs voir toutes. Dans ce cas, c'est illogique. C'est pourquoi voici les boutons radio qui ne permettent qu'un seul choix.

Ils utilisent encore une fois <input> , et type prendra cette fois-ci la valeur radio . Pour ces éléments, l'attribut name est obligatoire. En effet, tous les boutons radio que vous aurez créé devront porter le même nom (définit par la valeur de name ). Si cette condition est respectée, alors un seul bouton radio parmi tous ceux créés pourra être sélectionner.

Exemple :
<form>
My flowers are :
<input type="radio" name="flowers" value="beautiful">Beautiful <br>
<input type="radio" name="flowers" value="bad">Bad <br>
<input type="radio" name="flowers" value="good">Good <br>
<input type="submit" value="Valider" name="Envoi">
</form>

Résultat :
My flowers are :
Beautiful
Bad
Good

Créer une liste d'options :

Pour ce faire, nous utiliserons la balise <select> . Celle-ci renfermera les balises <option> qui contiendront les éléments de la liste.

Exemple :
<form>
<select>

<option>Element 1</option>
<option>Element 2</option>
<option>Element 3</option>

</select>
</form>

Résultat :
Element 1 Element 2 Element 3
Remarque :
Ajouter systèmatiquement l'attribut value à <option> est une bonne habitude à prendre. Dans celui-ci, vous indiquerez ce que représente chaque élément de la liste.

Aller plus loin :

En dehors des scripts, les listes d'options peuvent être converties en menu de reroutage. Celui-ci permettra d'amener le visiteur à une certaine page en le laissant choisir sa destination dans la liste d'option. Pour cela, JavaScript intervient exeptionnellement.

Dans le code suivant, il suffira juste de mettre la destination choisie en valeur de l'attribut value de la balise <option> de l'élément concerné.

Exemple :


<html>

<head>
<script language="JavaScript">
<!--
function MM_jumpMenu(targ,selObj,restore){
eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
if (restore) selObj.selectedIndex=0;
}
//-->
</script>
</head>

<body>
<select onChange="MM_jumpMenu('parent',this,0)">
<option value="http://www.jsand.net/Element_un.htm">Element1</option>
<option value="http://www.jsand.net/Element_deux.htm">Element2</option>
<option value="http://www.jsand.net/Element_trois.htm">Element3</option>
</select>
</body>

</html>

Utiliser mailto dans un formulaire :

Les formulaires servent principalement dans le cadre de scripts. Au niveau pur de HTML, nous pouvons voir son utilisation avec mailto déjà vu dans un autre chapitre. Celui-ci permet donc l'envoi de mail, mais grâce aux formulaire avec VOS champs et options.

Reprenons l'exemple des checkbox pour étudier le principe (on ajoutera un attribut enctype ayant comme valeur text/plain à la balise form ) :

Exemple :
<form enctype="text/plain">
My flowers are :
<input type="checkbox" value="beautiful">Beautiful <br>
<input type="checkbox" value="bad">Bad <br>
<input type="checkbox" value="good">Good <br>
<input type="submit" value="Valider" name="Envoi">
</form>

Résultat :

My flowers are :
Beautiful
Bad
Good


Pour utiliser mailto dans ce script, il faut auparavant paramétrer <form> en lui passant le courant attribut action qui prendra dans ce cas une valeur ayant la syntaxe mailto:myflowers@beautiful.are . Vous remplacerez bien entendu l'adresse mail ici bidon par la votre. En plus de cela, l'attribut method prenant la valeur post est ajouté.

Exemple :

<form action="mailto:myflowers@beautiful.are" method="post" enctype="text/plain">

Ensuite, il est necessaire que chaque checkbox ait un nom définis dans la valeur de l'attribut name de <input> . Pareil pour ce qui est de l'attribut value qui devra être présent dans chaque <input> , bien qu'il ne serve pas à grand chose dans le cas des checkboxs. Mettez "OK" par exemple.

Exemple :
<form action="mailto:myflowers@beautiful.are" method="post" enctype="text/plain">

My flowers are : <br>
<input type="checkbox" name="beautiful" value="OK">Beautiful <br>
<input type="checkbox" name="bad" value="OK">Bad <br>
<input type="checkbox" name="good" value="OK">Good <br>
<br>
Vos commentaires : <br>
<input type="text" name="commentaires" size="35"> <br>
<br>
<input type="submit" value="Valider" name="Envoi">

</form>

Voyons maintenant le contenu du mail que recevra destinataire (myflowers@beautiful.are) :

Résultat :
beautiful=OK
bad=OK
commentaires=Coucou
Dans ce rapport, on peut savoir que l'utilisateur a coché le checkbox "beautiful" ainsi que "bad". Le checkbox "good" lui n'a pas été choisi, il n'apparait donc pas dans le rapport. L'utilisateur a également entré "Coucou" dans le champs de texte "commentaires" (rajouté à votre insu ;).

Si cela avait été une liste de boutons radio (celle donnée dans l'exemple plus haut) et que l'utilisateur n'aurait coché que le bouton "good" et entré "Coucou" dans le champs de texte :

Résultat :
flowers=good
commentaires=Coucou Remarque :
Pour que le formulaire puisse se valider avec la touche Entrée, il faut impérativement que l'action du bouton de validation soit précisé dans l'attribut action de <form> . Si l'action est un javascript (appellé avec un onClick au bouton), il faudra alors préfixer l'action dans action de " javascript: ". Si le bouton est un submit (validation simple), c'est l'URL de la page de destination qui devra être précisé. Vous voilà prêt à devenir un webmaster respectable, bonne chance, bonne évolution et à vous de goûter les plaisirs et le bonheur de la programmation !
Au plaisir de vous revoir surement sur les forums ou sur d'autres tutos.

Bye !



Retour au choix des languages de programmation >> ici








[C++] [PHP] [XML] [javascript] [Actionscript] [HTML] [CSS] -- [logiciels] [Musiques] [Arrieres plans] [Emoticones] [Astuces MSN] [Videos insolites] -- [Intros flash] [Bannieres] [Boutons] [Menus] [Kits graphiques] [Tutoriaux]