Archive

Archives pour la catégorie ‘HTML’

HTML – Les effets de transitions avec Microsoft Internet Explorer

  1. Le code
    1. Les évenements
    2. Les transitions

Le marché des navigateurs Web se partage principalement en deux : Netscape et Microsoft.
Chacune de ces deux marques a proposé de nouvelles innovations, parfois très interessantes.
Malheuresement, ces innovations sont rarement conformes au spécifications du W3C et à l’esprit de la portabilité.
Par exemple, l’élement <BLINK> de Netscape Navigator ne fonctionne pas avec Microsoft Internet Explorer.
Il en est de même avec <MARQUEE>, mais dans le sens inverse. Et on peut multiplier les exemples, il y en a beaucoup!

Les effets de transitions est un nouveau « concept » signée Microsoft (qui bien sur, ne
fonctionne pas avec Netscape !).
Cette innovation consiste à plus ou moins animer la phase de changement d’une page à une autre. Vous pouvez en avoir la démonstration en cliquant sur ce lien.

Le code

Pour utiliser un effet de transition, il faut utiliser l’élement <META> (voir Les méta-informations et le réferencement).
On utilisera alors l’attribut http-equiv pour déterminer le type d’évenement et l’attribut content pour
le type de transition.
Exemple :

<META http-equiv="Page-Enter" content="revealTransition(Duration=5,Transition=21)">
<!-- Lorsque l'on arrive sur cette page, on voit des barres horizontales
pendant 5 secondes -->

Les évenements

On distingue 4 types d’évenements : l’entrée sur une page, la sortie d’une page, l’entrée sur un site et la sortie d’un site. Chacun de ces évenements
est matérialisé par un « nom de code » :

  • Entrée sur une page : Page-Enter. Cette évenement se produit lorsque la page est chargée.
  • Sortie d’une page : Page-Exit. Se produit lorsque le visiteur quitte la page.
  • Entrée sur un site : Site-Enter. Se produit uniquement lors du chargement de la première page d’un site.
  • Sortie d’un site : Site-Exit. Se produit uniquement lorsque le visiteur appel une page située à l’exterieur du site.

Une fois l’évenement choisi, on doit le placer dans l’attribut http-equiv de la balise <META>

Les transitions

Une transition est configurable selon 2 paramétres : la durée et la transition.
La durée s’exprime en secondes et peut s’échelonner de 0.0 à 60.0 secondes.
Pour les transitions, il y en a 24 possibles, de 0 à 23. Les voici :

Les différents effets de transitions
Index Description Index Description
0 Un carré, de l’extérieur vers l’intérieur 1 Un carré, de l’intérieur vers l’exterieur
2 Un cercle, de l’exterieur vers l’intérieur 3 Un cercle, de l’intérieur vers l’exterieur
4 Effacement, de bas en haut 5 Effacement, de haut en bas
6 Effacement, de gauche à droite 7 Effacement, de droite à gauche
8 Volets verticaux 9 Volets horizontaux
10 Cases d’échiquier, sens horizontal 11 Cases d’échiquier, sens vertical
12 Dissolution aléatoire (neige) 13 Effacement horizontal, vers l’intérieur
14 Effacement horizontal, vers l’exterieur 15 Effacement vertical, vers l’interieur
16 Effacement vertical, vers l’exterieur 17 Effacement, du haut à droite, vers le bas à gauche
18 Effacement, du bas à droite, vers le haut à gauche 19 Effacement, du haut à gauche, vers le bas à droite
20 Effacement, du bas à gauche, vers le haut à droite 21 Rayures horizontales
22 Rayures verticales 23 Effet aléatoire (un parmi les 23 cités)

La transition est définit dans l’attribut content de la balise <META>. Voici la syntaxe de cet attribut :

revealTrans(Duration=TPS,Transition=Index)

ou

blendTrans(Duration=TPS)

Vous devez remplacer TPS par la durée de la transition en secondes, et Index par celui de la transition sélectionnée.

Vous remarquer que pour la 2ème syntaxe, seule la durée est paramétrable. En fait, blendTrans represente une transition
à part entiére. En cinéma, on appel ceci un fondu enchainé.

Categories: HTML Tags:

HTML – Et le reste…

This entry is part 22 of 23 in the series HTML - Tutoriel
  1. Les balises Made In Netscape
    1. <BLINK>
    2. <LAYER> et <ILAYER>
    3. <MULTICOL>
    4. <NOBR>
    5. <WBR>
  2. Les balises Made In Internet Explorer
    1. <BGSOUND>
    2. <IFRAME>
    3. <MARQUEE>
  3. Balises obsolétes
    1. <CENTER>
    2. <LISTING>
    3. <PLAINTEXT>
    4. <XMP>
    5. Et les balises <B>, <I>, <STRIKE>, <U>

Comme le titre le laisse penser, cette page va regrouper tout le reste. Le reste, ce sont par
exemple les balises n’étant plus d’acutalité dans HTML 4, celles Made In Netscape ou Made In Microsoft.

Ne vous étonez pas si le résultat esconté ne s’affiche pas forcement : les balises de Netscape
ne sont pas toutes interprétées pas Internet Explorer et inversement.


Les balises Made In Netscape


<BLINK>


<BLINK> permet de faire clignoter du texte. Pratique au début pour attirer l’attention
du lecteur sur un point important, trop de pseudos-WebMasters en ont rapidement abusés, jusqu’à
faire froler la crise d’épilepsie aux courageux visiteurs s’aventurant dans leurs pages.

Pour le plaisir, voilà quand même une illustration de ce phénomène :

<BLINK>Ceci est un texte qui clignote et fait mal aux yeux</BLINK>


Ceci est un texte qui clignote et fait mal aux yeux


<LAYER> et <ILAYER>


Je ne dirais rien sur les balises <LAYER> et <ILAYER>, car leur emploi
n’est pas destinné à l’HTML classique, mais à Dynamic HTML (DHTML) qui nécessite
des connaissances pointues de JavaScript.

Nous étudierons donc ces deux balises dans une autres partie.


<MULTICOL>


<MULTICOL> représentait un moyen simple et efficace de disposer du texte sur plusieurs
lignes. Elle accepte 3 attributs :

  • cols contient le nombre de colonnes à créer

  • gutter définit la largeur (en pixels) de l’espacement entre les colonnes

  • width définit la hauteur des colonnes en pixels


Que Jean-François Quénet me pardonne d’avoir une fois de plus honteusement plagié sont magnifique
Livre d’Or du Cyclisme 1998 pour illustrer le fonctionnement de la balise <MULTICOL>

<MULTICOL cols=3>Le duel en montagne est réinventé. Pantani et Tonkov se harcèlent mutuellement
et emmènent l’ancien favori Alex Zülle dans un terrible chemin de croix sur le Groce Domini. Il
navigue à une demi-heure. Et, dans l’ascension finale vers Montecampione, la «montagne du
champion», Pantani regarde son rival dans les yeux, ne parvient pas à déceler le moindre
signe de faiblesse et décrète : «C’est lui ou moi qui saute.» A moins de 3 km du
sommet, il accélère. En 2 bornes, il le relègue à 1′. Du vrai travail de grimpeur. «Pantani
aigle rose», titre <I>La Gazzetta dello sport</I>. Mais 1′28″, est-ce une avance
bien suffisante avant l’ultime contre-la-montre de Lugano?</MULTICOL>

Résultat :

Le duel en montagne est réinventé. Pantani et Tonkov se harcèlent mutuellement
et emmènent l’ancien favori Alex Zülle dans un terrible chemin de croix sur le Groce Domini. Il
navigue à une demi-heure. Et, dans l’ascension finale vers Montecampione, la «montagne du
champion», Pantani regarde son rival dans les yeux, ne parvient pas à déceler le moindre
signe de faiblesse et décrète : «C’est lui ou moi qui saute.» A moins de 3 km du
sommet, il accélère. En 2 bornes, il le relègue à 1′. Du vrai travail de grimpeur. «Pantani
aigle rose», titre La Gazzetta dello sport. Mais 1′28″, est-ce une avance
bien suffisante avant l’ultime contre-la-montre de Lugano?


<NOBR>


Etrangement, la balise <NOBR> semble être reconnue par Internet Explorer. Elle effectue
l’opération inverse à la balise <BR> : elle empéche le retour à la ligne. C’est
à dire que si une phrase de plusieurs pieds de longs se trouve dans ce conteneur, elle s’affichera
sur la même ligne :

<NOBR>Le duel en montagne est réinventé. Pantani et Tonkov se harcèlent mutuellement
et emmènent l’ancien favori Alex Zülle dans un terrible chemin de croix sur le Groce Domini. Il
navigue à une demi-heure. Et, dans l’ascension finale vers Montecampione, la «montagne du
champion», Pantani regarde son rival dans les yeux, ne parvient pas à déceler le moindre
signe de faiblesse et décrète : «C’est lui ou moi qui saute.» A moins de 3 km du
sommet, il accélère. En 2 bornes, il le relègue à 1′. Du vrai travail de grimpeur. «Pantani
aigle rose», titre <I>La Gazzetta dello sport</I>. Mais 1′28″, est-ce une avance
bien suffisante avant l’ultime contre-la-montre de Lugano?</NOBR>

Voci le résultat de cette impressionante experience :

Le duel en montagne est réinventé. Pantani et Tonkov se harcèlent mutuellement
et emmènent l’ancien favori Alex Zülle dans un terrible chemin de croix sur le Groce Domini. Il
navigue à une demi-heure. Et, dans l’ascension finale vers Montecampione, la «montagne du
champion», Pantani regarde son rival dans les yeux, ne parvient pas à déceler le moindre
signe de faiblesse et décrète : «C’est lui ou moi qui saute.» A moins de 3 km du
sommet, il accélère. En 2 bornes, il le relègue à 1′. Du vrai travail de grimpeur. «Pantani
aigle rose», titre La Gazzetta dello sport. Mais 1′28″, est-ce une avance
bien suffisante avant l’ultime contre-la-montre de Lugano?


<WBR>


<WBR> permet d’effectuer une rupture de ligne dans un texte affiché par la balise
<NOBR>.

Mais…Mystère! Alors que cette balise a vraisemblablement été crée par Netscape, celui-ci semble
l’ignorer, alors qu’Internet Explorer l’interpréte parfaitement…

<NOBR>Le duel en montagne est réinventé. Pantani et Tonkov se harcèlent mutuellement<WBR>
et emmènent l’ancien favori Alex Zülle dans un terrible chemin de croix sur le Groce Domini. Il<WBR>
navigue à une demi-heure. Et, dans l’ascension finale vers Montecampione, la «montagne du<WBR>
champion», Pantani regarde son rival dans les yeux, ne parvient pas à déceler le moindre<WBR>
signe de faiblesse et décrète : «C’est lui ou moi qui saute.» A moins de 3 km du<WBR>
sommet, il accélère. En 2 bornes, il le relègue à 1′. Du vrai travail de grimpeur. «Pantani<WBR>
aigle rose», titre <I>La Gazzetta dello sport</I>. Mais 1′28″, est-ce une avance<WBR>
bien suffisante avant l’ultime contre-la-montre de Lugano?</NOBR>

Le duel en montagne est réinventé. Pantani et Tonkov se harcèlent mutuellement
et emmènent l’ancien favori Alex Zülle dans un terrible chemin de croix sur le Groce Domini. Il
navigue à une demi-heure. Et, dans l’ascension finale vers Montecampione, la «montagne du
champion», Pantani regarde son rival dans les yeux, ne parvient pas à déceler le moindre
signe de faiblesse et décrète : «C’est lui ou moi qui saute.» A moins de 3 km du
sommet, il accélère. En 2 bornes, il le relègue à 1′. Du vrai travail de grimpeur. «Pantani
aigle rose», titre La Gazzetta dello sport. Mais 1′28″, est-ce une avance
bien suffisante avant l’ultime contre-la-montre de Lugano?


Les balises Made In Internet Explorer


<BGSOUND>


Pour l’utilisation de <BGSOUND>, reportez-vous au chapitre précedent.


<IFRAME>


La balise <IFRAME> est grandiose! Dommage que Netscape ne la reconnaisse pas!

<IFRAME> permet de créer un cadre dans un document.

Elle posséde quelques attributs que voici :

  • frameborder définit si une bordure doit être créé autour de la fenêtre :

    • 0 : pas de bordure

    • 1 : bordure


  • height spécifie la hauteur de la fenêtre en pixels ou en pourcentages

  • marginheight spécifie la hauteur des marges verticales, en pixels

  • marginwidth spécifie la largeur des marges horizontales, en pixels

  • name contient le nom atribué à la fenêtre, comme pour les cadres

  • scrolling définit si une barre de défilement doit apparaitre :

    • auto : valeur par défaut. Il y aura des barres que si nécessaire

    • no : pas de barres

    • yes : dans tout les cas, des barres de défilement seront crées


  • src contient l’URL du document à afficher

  • width spécifie la largeur de la fenêtre en pixels ou en pourcentages


Voici un exemple :

<IFRAME src= »http://scriptland.cybwarrior.com » width=100% height=200 frameborder=0>Ceci est le texte affiché
pour les navigateurs ne reconnaissant pas &lt;IFRAME&gt;<BR>
Dommage pour les Netscapers
</IFRAME>

Et voici le résultat :




<MARQUEE>


La balise <MARQUEE> était une tentative tout à fait louable de la part de Microsoft
pour réaliser facilement un message défilant à l’heure où JavaScript n’existait pas encore.

Comme pour la balise <BLINK> decrite plus haut, l’utilisation de <MARQUEE>
a vite été démocratisée. Mais contrairement à cette dernière, l’utilisation abusive de ce procédé
n’entraine pas une crise d’epilepsie, mais provoque juste une sévère migraine :-)

Voici les attributs supportés :

  • align définit l’alignement vertical de la bannière par rapport au texte :

    • bottom : pour un alignement en bas

    • middle : au milieu

    • top : en haut


  • behavior spécifie le comportement de la bannière :

    • alternate : la bannière va rebondir d’un bord à l’autre de la fenêtre (ou du cadre)

    • scroll : c’est l’option par défaut. Lorsque la bannière atteint un bord, elle ré-apparait
      par l’autre bord

    • slide : le défilement de la bannière est stoppé des de que le bord est atteint


  • bgcolor spécifie la couleur à utiliser pour l’arrière plan

  • direction définit le sens de défilement de la bannière :

    • left : vers la gauche. Option par défaut

    • right : vers la droite.


  • height définit la hauteur en pixels de la bannière

  • loop précise le nombre de défilement à effectuer. Indiquer le nombre désiré, ou
    bien le mot-clef infinite pour un défilement permanent.

  • scrollamount définit le « pas », c’est à dire la vitesse de progression de la balise.
    La valeur est en pixels et représente la distance qui sera avalée entre chaque déplacement.

  • scrolldelay définit justement le temps à attendre entre chaque déplacement. La valeur
    à attribuer est en milisecondes.

  • width définit la largeur en pixels



<MARQUEE behavior=scroll bgcolor=blue>L’utilisation abusive de la balise &lt;MARQUEE&gt; est dangereuse pour la
santé</MARQUEE>
<MARQUEE direction=right behavior=alternate bgcolor=red scrollamount=10 scrolldelay=1>À consommer
avec modération!</MARQUEE>

L’utilisation abusive de la balise <MARQUEE> est dangereuse pour la
santé

À consommer avec modération!


Balises obsolétes


Les balises ci-dessous sont considérées comme mortes (snif!) par le W3C.


<CENTER>


<CENTER> permet de centrer des élements. Le W3C a décrété qu’il faut utiliser
<DIV align=center>Mais élements</DIV>.

<CENTER>Ceci est un texte centré avec &lt;CENTER&gt;</CENTER>

Ceci est un texte centré avec <CENTER>


<LISTING>


La balise <LISTING> servait à afficher le listing d’un programme. L’effet obtenu
est identique à la balise <PRE>. La seul différence réside dans l’emploi d’une
taille de police plus petite.

L’utilisation de cette balise a été proscrite par le W3C depuis HTML 2. Cependant, l’exemple
suivant montre que Netscape et Internet Explorer continuent de l’exploiter :

<LISTING>
RANDOMIZE TIMER
PRINT « Etude des nombres aléatoires en QBasic »
DO
PRINT RND
LOOP UNTIL LEN(INKEY$)
</LISTING>


RANDOMIZE TIMER
PRINT « Etude des nombres aléatoires en QBasic »
DO
PRINT RND
LOOP UNTIL LEN(INKEY$)


<PLAINTEXT>


<PLAINTEXT> est du type marqueur. Tout ce qui suit cette balise est interprété comme
étant du texte tout court. C’est à dire que les balises sont ignorées et affichées tel quel, jusqu’à
la fin du document (la balise </HTML>)

<HTML>
<HEAD>
<TITLE>La balise &lt;PLAINTEXT&gt;</TITLE>
</HEAD>

<BODY>
Le texte qui va suivre est formaté mais va être affiché tel quel avec la balise &lt;PLAINTEXT&gt;<BR>
<PLAINTEXT>
<B>Ceci est un texte gras</B>
<I>Ceci est un texte en italique</I>
<U>Ceci est un texte souligné</U>
</BODY>
</HTML>


<XMP>


L’effet obtenu par <XMP> est identique à celui de <TEXTPLAIN>.
L’avantage est que là, on peut stopper l’affichage non-formaté avec </XMP> :

Le texte qui va suivre est formaté mais va être affiché tel quel avec la balise &lt;XMP&gt;<BR>
<XMP>
<B>Ceci est un texte gras</B>
<I>Ceci est un texte en italique</I>
<U>Ceci est un texte souligné</U>
</XMP>

Le texte qui va suivre est formaté mais va être affiché tel quel avec la balise <XMP>

<br /> <B>Ceci est un texte gras</B><br /> <I>Ceci est un texte en italique</I><br /> <U>Ceci est un texte souligné</U><br />


Et les balises <B>, <I>, <STRIKE>, <U>


Surprise! Ces balises si pratiques a utiliser sont maintenant proscrites par le W3C. Donc normalement,
il ne faut plus les utiliser.

Mais alors comment faire? Le W3C soutient que ces balises peuvent être remplacées par les feuilles
de styles.

Ok. Si sous Internet Explorer, ça fonctionne parfaitement, avec Netscape (et Amaya et Opera),
c’est plus délicat.

Moi, je continu à les utiliser, parce que je trouve que écrire <B>Ceci est en gras</B>
et plus rapide que <SPAN style= »font-weight:bold; »>Ceci est en gras</SPAN>.

Mais ceci n’engage que moi…

Categories: HTML Tags:

HTML – Les objets

This entry is part 23 of 23 in the series HTML - Tutoriel

Dans les débuts du www, les pages HTML n’affichaient que du texte. Puis sont venues les images, permettant ainsi d’agrémenter la présentation
d’un site.
Mais maintenant, on peut inclure bien d’autres objets que des images : des sons, des applets Java, des clips videos, des animations Flash… Presque
tout est possible.
Presque tout ? Et oui, car dans ce domaine, les navigateurs n’en font qu’a leur tête. Il semble que les recomandations du W3C n’aient pas été toutes
suivies dans leurs intégralité.

Pour inclure un objet dans une page, on utilise la balise du type conteneur <OBJECT>. L’exemple suivant est censé afficher une image
de la même façon qu’avec la balise <IMG>. Il en est tout autre …

<OBJECT data="../../images/banniere.gif" type="image/gif" width="520" height="95">
Vu que les navigateurs sont quasiment TOUS incomptétents avec
cette balise, vous devriez voir ce texte
</OBJECT>


Vu que les navigateurs sont quasiment TOUS incomptétents avec
cette balise, vous devriez voir ce texte

Si vous êtes sous Netscape Navigator, vous n’avez certainement rien vu. Si vous êtes sous Microsoft Internet Explorer, vous devez normalement distinguer
une sorte d’image dans un <IFRAME>. Heuresement qu'il reste <IMG>.
Mais détaillons plutôt ce code. Le code HTML contenu dans la balise <OBJECT> est destiné à être affiché au cas où le navigateur
soit incapable d'utiliser l'objet.
L'attribut data représente l'URL de la ressource à utiliser.
type corespond au type MIME. MIME veut dire Multipurpose Internet Mail Extensions.
Ce type permet au navigateur de savoir quel est le type de l'objet : si c'est une image, un clip, un son... Dans notre cas, c'est une image gif.
Reportez-vous au tableau suivant pour connaitre le type MIME à utiliser en fonction de l'objet à inclure :

Les types MIME
Type MIME Type de fichier
application/excel Document Microsoft Excel
application/msword Document Microsoft Word
application/pdf Fichier Acrobat Reader
application/rtf Document RTF
application/zip Archive ZIP
audio/midi Fichier Audio MIDI
audio/mpeg Fichier Audio du type MP3
audio/x-aiff Fichier audio AIFF
audio/x-pn-realaudio Fichier audio RealAudio
image/bmp Image Bitmap
image/jpeg Image JPEG
image/png Image PNG
image/tiff Image TIFF
multipart/x-zip Archive
text/html Document HTML
text/plain Texte brut
video/mpeg Video MPEG
video/quicktime Video QuickTime
video/x-msvideo Video du type AVI
video/x-sgi-movie Video du type MOVIE

Ce tableau est, bien entendu, loin d'être complet. Il resence cependant les types les plus fréquents.
On peut donc inclure un grand nombre de média, comme des clips ou des sons : il suffit de connaitre le type MIME appropriés.
Les attributs width et height spécifient les dimensions que doit occuper l'objet, en pixels.
Voici les autres attributs possibles :

  • align definit l'alignement horizontal ou vertical de l'objet. Les valeurs peuvent être left, center ou right
    pour l'horizontal, ou top, middle ou bottom pour la verticale.
  • standby permet d'afficher un texte durant le chargement de l'objet.
  • code spécifie l'URL d'une classe pour les applets Java.

Pour inclure une applet dans une page, on peut utiliser la balise <OBJECT> à la place de la balise <APPLET> :

<OBJECT code="NervousText.class" width="180" height="60">
<PARAM name="text" value="Cyb Warrior">
</OBJECT>



La balise <PARAM> ne se limite pas seulement aux applet. Elle permet de passer des paramêtres à l'objet et est aussi utilisée avec les
animations Flash.
La balise <PARAM> peut prendre les attributs suivants :

  • name definit le nom du paramêtre. Dans notre exemple, text
  • value est la valeur de ce paramêtre. Ici, c'est Cyb Warrior
  • valuetype définit le type de la valeur de value. Il peut prendre 2 valeurs :
    • data : c'est la valeur par défaut (c'est pourquoi nous l'avons omis volontairement dans notre exemple). La valeur est
      traitée comme étant une donnée.
    • ref : la valeur pointe alors vers une ressource externe (dans le cas d'une image, par exemple).
Categories: HTML Tags:

HTML – Les cadres (FRAMES)

This entry is part 14 of 23 in the series HTML - Tutoriel
  1. Découpage de l’écran
  2. Les attributs de la balise <FRAME>
    1. SRC (Emplacement du document)
    2. NORESIZE (Redimensionnement des cadres)
    3. FRAMEBORDER (Bordure présente ou non)
    4. SCROLLING (Barre de défilement)
    5. MARGINWIDTH et MARGINHEIGHT (Marge horizontal et vetical)
    6. NAME (Nom des cadre)
  3. Les attributs de la balise <FRAMESET>
    1. FRAMESPACING (Espacement entre les Cadres)
  4. La balise <NOFRAMES>

Les cadres ont révolutionné le monde de l’Internet. Avant que la technologie PHP atteigne ce niveau
de notoriété, on peut même dire que 90% des sites Web utilisaient les cadres.

Mais un cadre, qu’est-ce que c’est ? On pourrait dire que c’est une petite fenêtre à l’intérieur
de la fenêtre de votre navigateur. Et dans cette petite fenêtre, il y a le document à visualiser.

Les avantages sont certains : on peut par exemple placer le sommaire du site dans un cadre, et
les documents à visualiser dans un autre (si vous êtes observateur, vous aurrez remarquez que c’est
cette méthode que j’utilise…). Ainsi, il est inutile de recopier le sommaire sur chaque page.

Par contre, certains navigateurs ne reconnaissent pas les Frames (c’est la même chose, mais
en Anglais). Rassurez-vous, Internet Explorer et Netscape Navigator n’en font pas partis (du moins
dans les versions récentes…). Par contre, les nouveaux adeptes du logiciel libre et de Linux
risquent de ne pas pouvoir béneficier de ce progrès dans l’immédiat, puisqu’à ma connaissance,
les navigateurs Linux sont incapables de déchiffrer les Frames.


Découpage de l’écran


Pour pouvoir utiliser les Frames, il faut tout d’abord établir une stratégie pour définir où
chaque cadre se situera dans la fenêtre du navigateur. Cette découpe sera inscrite dans un fichier.
Pour avoir un aperçu de ce fichier, vous pouvez cliquez dans le menu ‘Affichage’, puis sur ‘Source’
si vous utilisez Internet Explorer, afin de visualiser le découpage que j’utilise pour mes afficher
mes pages.

Pour définir un ensemble de cadre, on va utiliser la balise du type conteneur <FRAMESET>.
À ce stade là, il faut spécifier un attribut pour la découpe, après avoir choisis entre découper
la fenêtre du navigateur dans le sens horizontal (en lignes), ou dans le sens vertical (en colonnes).
On utilisera selon le cas :

  • rows pour spécifier le nombres de lignes

  • cols pour spécifier le nombres de colonnes


On peut bien sur utiliser ces deux attributs en même temps, mais c’est peu conseillé.

De toute façon, le principe est le même, que ce soit avec rows ou avec cols :
on indique les largeurs des colonnes (ou des lignes, c’est selon) séparées par des virgules. Evidemment,
il y a autant de dimensions qu’il y a de cadres. Les dimensions peuvent être exprimées en pixels
(dans ce cas, les cadres gardent les même dimensions quel que soit la dimension de la fenêtre
du navigateur) ou bien en pourcentage, en ajoutant le signe % à la fin de la valeur. Dans
ce dernier cas, la largeur (ou la hauteur) du cadre sera calculé en fonction de la taille de la
fenêtre du navigateur.

À l’intérieur de cette balise <FRAMESET>, il va falloir indiquer les documents
à afficher à l’intérieur de chaque cadre. On va pour cela utiliser la balise du type marqueur
<FRAME>. Elle posséde de nombreux attributs, mais nous ferrons l’impasse dessus pour
le moment.

Bien entendu, il faut une balise <FRAME> par cadre.

Voici un exemple :

<HTML>
<HEAD>
<TITLE>Exemple d’utilisation des cadres</TITLE>
</HEAD>

<FRAMESET cols= »50%,* »>
<FRAME>
<FRAME>
</FRAMESET>

<BODY>
</BODY>
</HTML>


Cliquez-ici pour voir le résultat



Vous remarquez que la portion qui définit les cadres n’a été écrite ni dans la partie d’en-tête
(entre <HEAD> et </HEAD>), ni dans le corps du document
(entre <BODY> et </BODY>); mais bel et bien entre ces deux
parties. La balise <FRAMESET> est en fait une nouvelle section.

Pour un découpage horizontal, on aurrait utiliser cet ensemble de cadre :

<FRAMESET rows= »50%,* »>
<FRAME>
<FRAME>
</FRAMESET>

Cliquez-ici pour voir le résultat



Bien sûr, on peut tout à fait inclure des ensembles de cadres les uns dans les autres, ceci afin
de pouvoir mêler les découpages horizontaux et verticaux :

<FRAMESET rows= »50%,* »>
<FRAME>
<FRAMESET cols= »50%,* »>
<FRAME>
<FRAMESET rows= »50%,* »>
<FRAME>
<FRAME>
</FRAMESET>
</FRAMESET>
</FRAMESET>

Cliquez-ici pour voir le résultat


Les attributs de la balise <FRAME>



SRC (Emplacement du document)

C’est bien beau de faire des cadres, mais si il n’y a rien dedans ? C’est à ceci que va servir
l’attribut src. La valeur doit être celui d’un lien (reportez-vous à la partie correspondante).
L’exemple ci-dessous affiche mon écran de démarage :

<FRAMESET rows= »70, * »>
<FRAME src= »http://pcwarrior.multimania.com/titre.html »>
<FRAMESET cols= »125, * »>
<FRAME src= »http://pcwarrior.multimania.com/sommaire.htm »>
<FRAME src= »http://pcwarrior.multimania.com/presentation.htm »>
</FRAMESET>
</FRAMESET>

Cliquez-ici pour voir le résultat



Vous remarquez que la présentation est un petit peu différente. Il manque des attributs…


NORESIZE (Redimensionnement des cadres)

Les exemples de cadres précedents peuvent être redimensionnés. Mais on peut tout à fait interdire
cette option en placant l’attribut noresize dans la balise <FRAME> du
cadre choisi.

Cette attribut est booléen (voir partie précedente), c’est à dire qu’il se suffit à lui
seul et n’a pas besoin de valeur.
Exemple :

<FRAMESET rows= »50%,* »>
<FRAME noresize>
<FRAMESET cols= »50%,* »>
<FRAME noresize>
<FRAMESET rows= »50%,* »>
<FRAME noresize>
<FRAME noresize>
</FRAMESET>
</FRAMESET>
</FRAMESET>

Cliquez-ici pour voir le résultat


FRAMEBORDER (Bordure présente ou non)

Cet attribut permet d’afficher une bordure (le grand trait) autour du cadre. La valeur est :

  • 0 aucune bordure

  • 1 bordure


Exemple :

<FRAMESET rows= »50%,* »>
<FRAME frameborder= »0″>
<FRAME frameborder= »0″>
</FRAMESET>

Cliquez-ici pour voir le résultat



Ne vous inquiétez pas si il n’y a rien du tout, c’est normal…


SCROLLING (Barre de défilement)

On peut choisir de faire apparaître une barre de défilement sur les cotés du cadres avec l’attribut
scrolling. Les valeurs valides sont :

  • auto laisse le choix au navigateur : en affiche si le document déborde, en affiche
    pas si il tient dans le cadre. C’est l’option par défaut.

  • yes en affiche, quoi qu’il arrive, même si il n’y en a pas besoin.

  • no n’en affiche pas, même si il y en a besoin.


Reprenons l’exemple de ma page de démarrage et completons avec ces nouveaux attributs :

<FRAMESET rows= »70, * »>
<FRAME src= »http://pcwarrior.multimania.com/titre.html » noresize
frameborder= »0″ scrolling= »no »>
<FRAMESET cols= »125, * »>
<FRAME src= »http://pcwarrior.multimania.com/sommaire.htm » noresize
frameborder= »0″ scrolling= »auto »>
<FRAME src= »http://pcwarrior.multimania.com/presentation.htm » noresize
frameborder= »0″ scrolling= »auto »>
</FRAMESET>
</FRAMESET>

Cliquez-ici pour voir le résultat



C’est presque ça! Encore un petit effort :)


MARGINWIDTH et MARGINHEIGHT (Marge horizontal et vetical)

Ces deux attributs définissent les marges à laisser entre les bords du cadre et le début du document.
Les valeurs sont à fournir en pixels.

Completons encore l’écran de démarrage :

<FRAMESET rows= »70, * »>
<FRAME src= »http://pcwarrior.multimania.com/titre.html » noresize frameborder= »0″
scrolling= »no » marginheight= »0″>
<FRAMESET cols= »125, * »>
<FRAME src= »http://pcwarrior.multimania.com/sommaire.htm » noresize
frameborder= »0″ scrolling= »auto »>
<FRAME src= »http://pcwarrior.multimania.com/presentation.htm » noresize
frameborder= »0″ scrolling= »auto »>
</FRAMESET>
</FRAMESET>

Cliquez-ici pour voir le résultat



Il ne nous reste maintenant plus qu’à enlever ces espaces entre les cadres et améliorer le fonctionnement.


NAME (Nom des cadre)

L’attribut name est l’attribut essentiel pour le fonctionnement des Frames. Si on omet de
nommer un cadre, il sera assez délicat d’afficher un document là où on veux qu’il soit.

En effet, avec l’exemple suivant, le lien est ouvert dans le même cadre :

  • Code du document du cadre de Gauche :

    <HTML>
    <HEAD>
    </HEAD>

    <BODY>
    <A href= »http://pcwarrior.multimania.com/images/bromelfe.jpg »>
    Cliquez-ici</A>
    </BODY>
    </HTML>


  • Code du document créant les cadre :

    <HTML>
    <HEAD>
    </HEAD>

    <FRAMESET cols= »50%,* »>
    <FRAME> <!– Pas de liens –>
    <FRAME> <!– Pas de liens –>
    </FRAMESET>

    <BODY>
    </BODY>
    </HTML>



Ne tenez pas compte de l’abscence de liens dans les balises <FRAME>, c’est à
cause de JavaScript…

Cliquez-ici pour voir le résultat



Vous remarquez que comme prévu, l’image est ouverte dans le même cadre. Comment faire alors ?

Nous allons attribuer un nom à ces deux cadres avec l’attribut name. Ici, nous allons faire
simple : le cadre de gauche va s’appeler gauche, et celui de droite droite.

Ensuite, il va faloir utiliser ce nom dans l’appel de lien. Comment ? Rappelez-vous de l’attribut target.
C’est lui qui va contenir le nom du cadre où ouvrir le lien.

Notre exemple ainsi modifier sera :

  • Code du document du cadre de Gauche :

    <HTML>
    <HEAD>
    </HEAD>

    <BODY>
    <A href= »http://pcwarrior.multimania.com/images/bromelfe.jpg » target= »droite »>
    Cliquez-ici</A>
    </BODY>
    </HTML>


  • Code du document créant les cadre :

    <HTML>
    <HEAD>
    </HEAD>

    <FRAMESET cols= »50%,* »>
    <FRAME name= »gauche »> <!– Pas de liens –>
    <FRAME name= »droite »> <!– Pas de liens –>
    </FRAMESET>

    <BODY>
    </BODY>
    </HTML>



Cliquez-ici pour voir le résultat



Et cette fois ci, ça roule…

Petit détail : et si on avait des dizaines et des dizaines de liens ? On ne va tout de même pas
s’amuser à spécifier la cible dans chaque balise ?

C’est pourquoi il existe la balise <BASE> (du type marqueur). Grâce à elle, on va
pouvoir définir une cible commune à tout les liens du document. L’attribut à utiliser avec elle
sera bien évidemment target. La balise <BASE> doit se situer dans
la section d’en-tête du document, c’est à dire entre <HEAD> et </HEAD>.

On pourrait donc modifier le code du document de gauche ainsi :

<HTML>
<HEAD>
<BASE target= »droite »</BASE>
</HEAD>

<BODY>
<A href= »http://pcwarrior.multimania.com/images/bromelfe.jpg »>Cliquez-ici</A><BR>
<A href= »http://pcwarrior.multimania.com/images/pirate.gif »>Ou bien ici</A>
</BODY>
</HTML>


Cliquez-ici pour voir le résultat



Vous pouvez attribuer n’importe quel nom à un cadre, pour peu qu’il n’appartienne pas au 4 noms
ci-dessous. Les noms ci-dessous ont des fonctions particulières :

  • _parent désigne la fenêtre (ou le cadre) directement supérieur

  • _top désigne la fenêtre de départ.

  • _self désigne le propre cadre. Utile lorsque l’on à utiliser la balise <BASE>

  • _blank cré une nouvelle fenêtre pour le document


Ainsi, si pour l’attribut target d’un lien on a la valeur _blank, le
document sera ouvert dans une nouvelle fenêtre.


Les attributs de la balise <FRAMESET>



FRAMESPACING (Espacement entre les Cadres)

Les attributs de la balise <FRAME> ne sont pas surabondants. Il n’y en a qu’un
seul : framespacing. Il reçoit une valeur en pixels qui définit l’espacement à maintenir
entre les différents cadres.


La balise <NOFRAMES>


On a vu au début de cette page que certains navigateurs sont incapable d’utiliser les cadres. Au
lieu de laisser le malheureux visiteur devant une page désespérement blanche, il faut utiliser
la balise du type conteneur <NOFRAMES>. Le contenu de cette balise n’est affiché
que si le navigateur ne reconnait pas les cadres. Sinon, il est ignoré.

Son utilisation est simple : il doit englober la balise <BODY>, comme dans
l’exemple suivant :

<HTML>
<HEAD>
<TITLE>Exemple d’utilisation des cadres</TITLE>
</HEAD>

<FRAMESET cols= »50%,* »>
<FRAME>
<FRAME>
</FRAMESET>

<NOFRAMES>
<BODY>
</BODY>
</NOFRAMES>
</HTML>


Je vous conseille fortement d’utiliser cette balise à chaque fois que vous aurez recours à des
Frames. D’ailleurs, certains moteurs de rechercher, comme Lycos, refuse de réferencer vos page
dans leur base de données si une page utilisant les Frames ne posséde pas de balise <NOFRAMES>.

Ensuite, certains moteurs de recherche effectue leur réferencement suivant le contenu de la page.
Il est évident qu’ils ne vont pas trouver grand chose si vous vous limitez simplement aux balises
<FRAMESET> et <FRAME>.

Mais alors qu’écrire dans cette balise ? Vous pouvez déjà informer le visiteur qu’il posséde un
navigateur incompétent, bien qu’il doit certainement le savoir.

Puis vous pouvez lui décrire les merveilleuses choses qu’il rate, le malheureux!

Vous pouvez aussi créer un petit sommaire succint des pages pouvant être vues sans avoir recours
au cadres.

Certains WebMasters n’hésitent pas à réaliser deux versions de leur site : une avec Frames, et
l’autre sans. C’est à vous de voir…

Categories: HTML Tags:

HTML – Les formulaires

This entry is part 15 of 23 in the series HTML - Tutoriel
  1. La balise <FORM>
    1. ACTION (URL)
    2. METHOD (Méthode de transmition des données)
    3. NAME (Identification du formulaire)
  2. La balise <INPUT>
  3. Petit sondage…
  4. Les balises <SELECT> et <OPTION> (liste déroulante)
  5. La balise <TEXTAREA> (Zone de texte)

Avec la venue des formulaires dans la spécification HTML, le dialogue document-visisteur est désormais
possible. L’utilisateur du formulaire peut alors passer des données, qui pourront ensuite être
traiter par des Scripts, ou bien envoyés par E-mail.


La balise <FORM>


La balise <FORM> délimite le formulaire. Tout les élements sont compris à l’intérieur,
que ce soit les cases à cocher, les boites de saisie, les boutons d’option…

Il s’agit d’une balise du type conteneur. Il y a donc une balise de départ (<FORM>),
et une balise de fin (</FORM>). Et comme toute balise, il y a des attributs.


ACTION (URL)

L’attribut action précise que faire avec le formulaire. Il n’est obligatoire que si vous
voulez traiter le formulaire avec un Script CGI, ou si vous voulez recevoir le formulaire via
l’e-mail. Il n’en est nul besoin si vous vous servez d’un formulaire visant à être traité avec
du JavaScript.

La valeur de cet attribut doit être une URL. Pour l’envoyer à un CGI, ce sera une URL http://.
Pour le recevoir par e-mail, ce sera bien évidemment mailto:.

Chez Multimania, il y a par exemple un CGI pour traiter les formulaires. L’attribut action
doit pointer sur l’URL /cgi-bin/mailer. Bien sûr, il faut avoir un compte sur Multimania
pour pouvoir s’en servir.


METHOD (Méthode de transmition des données)

Cet attribut définit la façon dont le données du formulaire sont transmises à l’URL désigné par
l’attribut action. Il peut avoir deux valeurs :

  • post les données sont transmises selon le standard établi par le serveur. Si l’attribut
    action renforme une URL du type mailto:, ce sera l’unique valeur
    valide.

  • get les données sont transmises à la suite de l’URL définit par l’attribut action.
    Vous avez certainement déjà été confronté à cette méthode lors de vos nombreux surfs.


NAME (Identification du formulaire)

name permet d’identifier le formulaire dans le document. Il n’est pas nécaissaire pour
un formulaire classique. Par contre, si vous voulez y mêler les formidables capacités de JavaScript,
il sera requis.


La balise <INPUT>


La balise <INPUT> (du type marqueur) est certainement l’élement le plus important
et le plus employé dans la constitution des formulaires. Il peut révêtir plusieurs aspect dans
le document suivant la valeur de son attribut type. Etant un élement des formuaires, il
devra obligatoirement être placé dans le conteneur <FORM>.

Trois attributs sont à mentionner :

  • type pour définir le type d’élement à créer. La valeur à utiliser doit être :

    • text : zone de texte

    • password : zone de texte. Les caractères apparaissent sous formes d’étoiles
      à l’écran.

    • checkbox : case à cocher.

    • radio : bouton radio ou bouton d’option. L’attribut value doit
      obligatoirement être utilisés.

    • submit : bouton de commande. Le formulaire est transmis lors de son appui.

    • image : idem à submit, mais une image peut illustrer le bouton.

    • reset : bouton de commande. Toutes les données du formulaire sont remise à
      à l’état initial lors de son action.

    • hidden : élement masqué, mais existant bien. C’est à dire que les attributs
      name et value sont pris en compte lors du traitement du
      formulaire.

    • file : création d’une zone de texte et d’un bouton parcourir. En cliquant sur
      le bouton, une boite de dialogue d’ouverture de fichier s’ouvre. La sélection d’un
      fichier entraîne l’inscritpion de son nom dans la zone de texte.


  • name pour donner le nom à l’élement, de façon à identifier la donnnée renvoyée par
    le formulaire lors du traitement.

  • value définit l’état inital de l’élement. Sa présence est obligatoire pour les boutons
    d’option.

  • checked permet, lors de l’utilisation de case à cocher ou de boutons d’option, de
    les cocher initialement. C’est un attribut booléan (il se suffit à lui même).

  • disabled désactive un élement. Attention! L’élement est toujours affiché, mais il
    est désactivé, ce qui empêche son utilisation. C’est un attribut booléan.

  • readonly peut être uniquement associé à une zone de texte. Il empêche la modification
    de la valeur.

  • size définit la largeur de l’élement, en pixels, sauf pour les zone de texte où
    la valeur représente le nombre de caractères.

  • maxlength ne concerne que les zones de texte. Il précise le nombre de caractères
    pris en compte.


Voici un exemple de formulaire. Examinez le attentivement. Vous pouvez cliquez-sur le bouton
‘Envoyer’ pour voir l’effet de vos résultat.


<FORM action= »mailto:pcwarrior@multimania.com » method= »post » name= »petitsondage »>
<H3>Petit sondage…</H3>
<INPUT type= »hidden » name= »Sondage »>
<TABLE>
<TR>
<TD valign= »top »>
<PRE>
Login : <INPUT type= »text » name= »login » value= »Indentifiant » size= »20″
maxlength= »15″>
E-Mail : <INPUT type= »text » name= »email » value= »E-Mail » size= »15″>
Mot de passe : <INPUT type= »password » name= »motdepasse » size= »10″>
</PRE>
</TD>
&ltTD valign= »top »>
<PRE>
Fichier : <INPUT type= »file » name= »fichier »>
Nom modifiable : <INPUT type= »text » name= »locked » value= »Je viens sur ce site
7 fois par jour » readonly>
</PRE>
</TD>
</TR>

<TR>
<TD valign= »top »>
<PRE>
Vos impressions sur ce site :
<INPUT type= »radio » name= »Impression » value= »Top » checked>Top
<INPUT type= »radio » name= »Impression » value= »Moyen »>Moyen
<INPUT type= »radio » name= »Impression » value= »Bad » disabled>Bad
<INPUT type= »radio » name= »Impression » value= »No » disabled>Vraiment trop nul
</PRE>
</TD>
<TD valign= »top »>
<PRE>
S’inscrire à la lettre du guerrier :
<INPUT type= »radio » name= »lettre » value= »oui » checked>Oui
<INPUT type= »radio » name= »lettre » value= »non »>Non
</PRE>
</TD>
</TR>
</TABLE>

<PRE>
Vos rubriques préférées sur PC Warrior :
<INPUT type= »checkbox » name= »Rubrique » value= »News, Trucs, Astuces… »>News,
Trucs, Astuces…
<INPUT type= »checkbox » name= »Rubrique » value= »QBasic, QuickBasic »>Qbasic,
QuickBasic
<INPUT type= »checkbox » name= »Rubrique » value= »Visual Basic »>Visual Basic
<INPUT type= »checkbox » name= »Rubrique » value= »Turbo Pascal »>Turbo Pascal
<INPUT type= »checkbox » name= »Rubrique » value= »Delphi »>Delphi
<INPUT type= »checkbox » name= »Rubrique » value= »C++ »>C++
<INPUT type= »checkbox » name= »Rubrique » value= »Assembleur »>Assembleur
<INPUT type= »checkbox » name= »Rubrique » value= »HTML »>HTML
<INPUT type= »checkbox » name= »Rubrique » value= »FREEWARE »>FREEWARE
<INPUT type= »checkbox » name= »Rubrique » value= »ScriptLand »>ScriptLand
<INPUT type= »checkbox » name= »Rubrique » value= »Livre d’Or »>Livre d’Or
<INPUT type= »checkbox » name= »Rubrique » value= »Forum »>Forum
<INPUT type= »checkbox » name= »Rubrique » value= »Va savoir… »>Va savoir…

<INPUT type= »submit » value= »envoyer »><INPUT type= »reset » value= »Remise à zéro »>
<INPUT type= »image » name= »envoyer »
src= »http://www.cybwarrior.com/langages/images/dead.gif »>
</PRE>
</FORM>


Petit sondage…













Login :
E-Mail :
Mot de passe :



Fichier :
Nom modifiable :



Vos impressions sur ce site :
Top
Moyen
Bad
Vraiment trop nul



S’inscrire à la lettre du guerrier :
Oui
Non


Vos rubriques préférées sur PC Warrior :
News, Trucs, Astuces…
Qbasic, QuickBasic
Visual Basic
Turbo Pascal
Delphi
C++
Assembleur
HTML
FREEWARE
ScriptLand
Livre d’Or
Forum
Va savoir…







Avez-vous bien analysé le formulaire? Vous remarquez que pour les boutons d’option (ou boutons
radio) et les cases à cocher, l’attribut name vaut la même valeur.

En effet, pour ces deux types d’élements, un groupe est créer pour tout les élements possédant
le même nom, de façon à avoir des choix distincts.

Vous remarquez que l’élement hidden n’apparaît pas dans le formulaire.

On peut très bien utiliser toute sortes de balises dans un formulaire. Ici, on a utiliser un tableau
pour faire deux colonnes, ainsi que la balise <PRE> pour avoir un alignement
impecable.

Ce formulaire sera envoyé par e-mail. Normalement, une boîte de dialogue apparaît avant son envoi,
vous informant que le formulaire est envoyé par e-mail, et que le destinataire sera en possession
de votre adresse électronique.


Les balises <SELECT> et <OPTION> (liste déroulante)


La balise <SELECT> (du type conteneur) permet de créer une liste déroulante, appelé
aussi ComboBox. Une liste déroulante, c’est ce que vous pouvez trouver en haut de cette
page et qui sert de menu.

Pour définir les élements à mettre dans la liste, on va utiliser la balise du type conteneur
<OPTION>. Elle va venir se positionner à l’intérieur de la balise <SELECT>.

Cette dernière posséde quelques attributs identiques à ceux de la balise <INPUT> :

  • name

  • size

  • disabled


Ces attributs tiennent le même rôle que pour la balise <INPUT>.

La balise <OPTION> posséde l’attribut value en commun avec <INPUT>.
Voici un exemple de liste déroulante :

<FORM>
Quel est le meilleur grimpeur actuel ?<BR>
<SELECT name= »Grimpeurs »>
<OPTION value= »Marco Pantani »>Marco Pantani</OPTION>
<OPTION value= »Richard Virenque »>Richard Virenque</OPTION>
<OPTION value= »Roberto Heras »>Roberto Heras</OPTION>
<OPTION value= »Fernando Escartin »>Fernando Escartin</OPTION>
<OPTION value= »Davide Rebellin »>Davide Rebellin</OPTION>
<OPTION value= »Francesco Casagrande »>Francesco Casagrande</OPTION>
<OPTION value= »Leonardo Piepoli »>Leonardo Piepoli</OPTION>
</SELECT>
</FORM>

Et voici le résultat :

Quel est le meilleur grimpeur actuel ?



La balise <SELECT> posséde néanmoins un attribut qui lui est spécifique :
multiple. L’attribut multiple transforme la liste déroulante en liste tout
court. On peut alors procéder à des choix multiples en maintenant la touche Ctrl
enfoncée.

La balise <OPTION> a elle aussi un argument spécifique : selected. Son
fonctionnement peut être assimilé à celui de l’attribut checked pour la balise
<INPUT>.
Exemple :


<FORM>
Quel sont les plus grands spécialistes des courses d’un jour ?<BR>
<SELECT name= »Coursiers » multiple>
<OPTION value= »Michele Bartoli » selected>Michele Bartoli</OPTION>
<OPTION value= »Oscar Freire » selected>Oscar Freire</OPTION>
<OPTION value= »Laurent Jalabert » selected>Laurent Jalabert</OPTION>
<OPTION value= »Andreï Tchmil »>Andreï Tchmil</OPTION>
<OPTION value= »Franck Vandenbroucke » selected>Franck Vandenbroucke</OPTION>
<OPTION value= »Johan Museeuw »>Johan Museeuw</OPTION>
</SELECT>
</FORM>


Quel sont les plus grands spécialistes des courses d’un jour ?



La balise <TEXTAREA> (Zone de texte)


La balise <TEXTAREA> (du type conteneur) permet de créer une grande zone de texte,
sur plusieurs lignes. Les attributs qu’elle posséde en commun avec la balise <INPUT>
sont :

  • name

  • disabled

  • readonly


Mais elle a en plus les attributs suivants :

  • rows spécifie le nombre de lignes de la zone de texte.

  • cols définie le nombre de colonnes.


Voici un exemple :

<FORM>
<TEXTAREA cols= »80″ rows= »5″>Ceci est une zone de texte TEXTAREA de 80 colonnes
et 5 lignes</TEXTAREA>
</FORM>



Categories: HTML Tags:

HTML – Les méta-informations et le réferencement

This entry is part 16 of 23 in the series HTML - Tutoriel
  1. Le référencement

Les méta-informations sont des informations d’en-tête et vont donc venir se placer dans la section
d’en-tête du document, c’est à dire entre <HEAD> et </HEAD>.

Toutes les méta-informations sont représentées par la balise du type marqueur <META>.

Ces balises servent principalement pour le réferencement par les moteurs de recherche dans leurs
bases de données. En effet, c’est dans ces méta-informations que vont résider les mots-clef, la
description du document et beaucoup d’autre informations.

Voici les différents possibilités d’écriture de la balise <META>, suivant le
type d’information que l’on veut écrire :

















































Les meta-informations
Exemple de balise <META> Description
<META name= »author » content= »Oscar Verchère »> Information de l’auteur de la page (ici, Oscar Verchère)
<META name= »keywords » content= »QBasic,Pascal,C,HTML,Assembleur,Delphi »> Mots-clefs utilisés pour le réferencement par les moteurs de recherche
<META name= »description » content= »Programmation informatique sur divers langages »> Description du document
<META name= »date » content= »2001-01-01T15:18:25+00:00″> Date de publication de la page, au format GMT. Ici, le Lundi 1er janvier
2001 à 15h18m25s
<META name= »robots » content= »index »>

<META name= »robots » content= »noindex »>

<META name= »robots » content= »follow »>

<META name= »robots » content= »nofollow »>
Les robots sont les programmes chargés d’indexer vos pages dans les moteurs de recherche.
content peut avoir plusieurs valeurs :

  • index autorise les robots à indexer la page

  • noindex interdit les robots d’indexer la page

  • follow indique aux robots de suivre les liens

  • nofollow interdit aux robots de suivre les liens

<META name= »generator » content= »Web Warrior »> Contient le nom des applications ayant servies à réaliser le document
<META http-equiv= »content-type » content= »text/html »> Indique le type de contenu du document
<META http-equiv= »Content-Script-Type » content= »text/javascript »> Indique le langage de script utilisé dans le document (ici, du JavaScript)
<META http-equiv= »Content-Style-Type » content= »text/css »> Indique le type de feuille de style utilisé (ici, la technologie des feuilles de styles
en cascade)
<META http-equiv= »refresh » content= »5;URL=http://pcwarrior.multimania.com »> Permet de remplacer le document affiché par celui spécifié par l’URL après le laps de temps
précisé en secondes. Ici, après 5 secondes, l’URL http://pcwarrior.multimania.com
remplacera le document. Cette balise est utile lors du démenagement d’un site, pour rédiriger
automatiquement les visiteurs.





On peut tout a fait cumuler plusieurs balise <META> à l’intérieur d’un même
document. C’est même conseillé.


Le référencement


Une fois votre site achevé, il faut maitenant informer le monde entier de votre superbe création
(réalisée grace aux merveilleux conseils de PC Warrior!).

Cela ne va pas se faire tout seul. Après avoir bien renseigné toutes les meta-informations sur
chacune de vos pages, ou au moins sur la page de démarrage, il vous faudra faire appel au différents
moteurs de recherche existants pour indexer vos pages.

Des moteurs de recherche, il en existe des dizaines, pour ne pas dire des centaines (ou des miliers).
C’est pourquoi certains sites astucieux propose gratuitement de vous réferencer au près de plusieurs
moteurs de recherche, vous faisant gagner ainsi du temps précieux.

Parmi ces organismes, j’ai retenu quelques adresses interessantes :

Mais comment procédent les moteurs de recherche pour indexer vos pages ? Chacun y va à sa sauce.
Une réaction naïve (que j’ai eu) serai de croire qu’il suffit d’indiquer quelques mots-clefs bien
choisis dans ces <META>. Erreur, car certains moteurs de recherche (de plus
en plus) n’hésitent pas à regarder également dans le contenu du document pour comptabiliser les
mots-clefs se retrouvant le plus souvent. Ainsi, les auteurs malins qui indiquaient des mots-clefs
n’ayant rien à voir avec le sujet qu’ils traitaient ne peuvent pas se faire réferencer dans certains
moteurs de recherche.

C’est pourquoi, il vous faudra utiliser la balise <NOFRAMES> si vous utilisez
des cadres, et indiquer un résumé succint du sujet de vos pages. Cette remarque est également
valable pour des présentations du type Flash.



Mais depuis quelques temps, on s’est aperçu que la plupart des Internautes n’effectuent plus leur
recherches par les moteurs de recherche. Ils utilisent désormais les annuaires.

Pour rentrer dans un annuaire, la procédure est différente. En effet, les sites se trouvant dans
les annuaires ont en fait été parcourus de long en large et de fond en comble par des personnes
humaines. C’est à dire que pour figurer dans un annuaire, il faut commencer par plaire à la personne
qui s’en occupe.

Conséquence, les sites figurants dans les annuaires sont generalement de haute qualité. Donc, pour
y figurer, le votre doit l’être également…

Parmi les plus grands annuaires de recherche, ont peut siter :

L’annuaire du hit-parade se base sur un concept très original. Une fois inscrit, vous devrez
faire figurer une petite image dans vos pages. Vous pouvez en avoir un aperçu en regardant tout
en bas de mon sommaire.

Ce petit logo sert en fait à comptabiliser le nombre de visiteurs par jour reçu par votre site.
Le hit-parade effectue ensuite des statistiques, et établi un classement selon la popularité des
sites. L’Internaute peut ainsi trouver facilement un site fréquenté grâce à ce système.

Categories: HTML Tags:

HTML – Formatage poussé du texte

This entry is part 17 of 23 in the series HTML - Tutoriel
  1. La balise <FONT>
    1. COLOR (couleur du texte)
    2. SIZE (taille du texte)
    3. FACE (nom de la police)
  2. La balise <P> (paragraphe)
    1. ALIGN (alignement horizontal)
  3. La balise <DIV>
    1. ALIGN (alignement horizontal)
  4. La balise <HR> (ligne horizontal)
    1. WIDTH (largeur de la ligne)
    2. ALIGN (alignement horizontal)
    3. SIZE (épaisseur de la ligne)
    4. NOSHADE (pas d’ombre)
  5. La balise <CENTER>
  6. La balise <BLOCKQUOTE>

En dehors des différentes balises énumérées dans les sections précedantes, il est également possible
de formater du texte avec plus de recherche grâce aux balises ci-dessous.


La balise <FONT>


La balise <FONT> (type conteneur) permet de changer la couleur, la taille
et même la police utilisée par un bout de texte. Elle posséde pour cela 3 attributs.


COLOR (couleur du texte)

Cet attribut permet de définir une couleur au texte compris dans la balise <FONT>.

Ceci est du texte écrit avec la couleur par défaut.<BR>
<FONT color= »red »>Ici il est rouge</FONT><BR>
<FONT color= »green »>Ici, il est vert</FONT><BR>
<FONT color= »blue »>Et là, bleu</FONT>

Ce qui nous donne :



Ceci est du texte écrit avec la couleur par défaut.

Ici il est rouge

Ici, il est vert

Et là, bleu


SIZE (taille du texte)

L’attribut size permet de modifier la taille de la police. Attention, la valeur a fornir
n’est pas en pixels! En fait, il existe 7 tailles de polices. Contrairement aux titres (<H1>,
<H2>…), le numéro 1 correspond à la plus petite et le numéro 7 à la plus grande.

La valeur par défaut étant à 3 (c’est le mileu), on peut choisir d’exprimer la valeur en donnant
carrément la valeur, ou en incrémentant ou décrémentant la valeur antécedente, avec + ou -.

Ceci est du texte de taille normale<BR>
<FONT size= »+1″>Celui-ci est une taille au dessus</FONT><BR>
<FONT size= »-1″>Celui-ci est une taille au dessous</FONT><BR>
<FONT size= »1″>Celui-ci est de taille 1</FONT><BR>
<FONT size= »5″>Celui-ci est de taille 5</FONT>

Résultat :
Ceci est du texte de taille normale

Celui-ci est une taille au dessus

Celui-ci est une taille au dessous

Celui-ci est de taille 1

Celui-ci est de taille 5



FACE (nom de la police)

Il permet d’utiliser une police particulière. Si la police n’est pas installée sur la machine
du visiteur, la police par défaut sera utilisée. C’est pourquoi il est conséillé d’écrire plusieurs
noms de polices séparés par des virgules. Le premier installé sera alors utilisé.

Ce texte est écrit avec la police par défaut<BR>
<FONT face= »simplex,comic sans ms,arial »>Et ici, c’est du texte écrit avec une
autre police</FONT>

Ce qui nous donne :



Ce texte est écrit avec la police par défaut

Et ici, c’est du texte écrit avec une autre police


La balise <P> (paragraphe)


La balise <P> permet de créer un paragraphe. C’est une balise de type conteneur, bien
que le </P> soit optionnel (moi je le met toujours, d’ailleurs, le W3C le recommande).

Cette balise posséde bien évidemment quelques attributs.


ALIGN (alignement horizontal)

align permet définir l’alignement horizontal d’un paragraphe. Il admet trois valeurs :

  • left alignement à gauche (option par défaut)

  • center pour aligner au centre

  • right pour aligner à droite

  • justify justification du texte, c’est à dire que l’espacement entre les mots est
    ajusté de façon à ce qu’une ligne de texte débute de la marge gauche et finisse à la marge
    droite.


Voici un exemple :

<P align= »center »>La météo s’en mêle. Il pleut sur le Galibier nappé de brouillard.
Marco Pantani est indécis. Deux attaque successives de Luc Leblanc le mettent
sur orbite. A 5 km du sommet du terrible col, il part à l’assaut et dépasse
inexorablement Massi, Rinero, Serrano, Jimenez et Escartin, qui s’étaient échappés
précédemment. Au sommet, il compte déjà 2′56 » d’avance sur Jan Ullrich. Seulement
5 » le rapprochent du maillot jaune virtuel. Le public revit. Le «Pirate»
attrape au vol un bidon et un imperméable, mais ne parvenant pas à l’enfiler, il
s’arrête. Heureuse idée.<BR>
Le maillot jaune n’y pense pas, néglige les conditions climatiques extrêmes, joue à
sauve-qui-peut. Tous les éléments sont contre lui. Isolé, il crève dans la descente
du Galibier. Transi de froid, il essuie une terrible défaillance dans la montée
finale des Deux-Alpes, il a du mal à suivre ses équipiers, Bjarne Riis et Udo Bölts.
De leurs roues jaillit la pluie. Elle rend pathétique la défaite du champion
allemand, qui concède quasiment 9′ à Pantani en lui tirant «un coup de chapeau»
bien mérité.<BR>
<I>Le Livre d’Or du Cyclisme 1998 – Jean-François Quénet – Editions Solar</I></P>

Résultat :



La météo s’en mêle. Il pleut sur le Galibier nappé de brouillard. Marco Pantani est indécis. Deux
attaque successives de Luc Leblanc le mettent sur orbite. A 5 km du sommet du terrible col, il part
à l’assaut et dépasse inexorablement Massi, Rinero, Serrano, Jimenez et Escartin, qui s’étaient
échappés précédemment. Au sommet, il compte déjà 2′56 » d’avance sur Jan Ullrich. Seulement 5 » le
rapprochent du maillot jaune virtuel. Le public revit. Le «Pirate» attrape au vol un
bidon et un imperméable, mais ne parvenant pas à l’enfiler, il s’arrête. Heureuse idée.

Le maillot jaune n’y pense pas, néglige les conditions climatiques extrêmes, joue à sauve-qui-peut.
Tous les éléments sont contre lui. Isolé, il crève dans la descente du Galibier. Transi de froid, il
essuie une terrible défaillance dans la montée finale des Deux-Alpes, il a du mal à suivre ses équipiers,
Bjarne Riis et Udo Bölts. De leurs roues jaillit la pluie. Elle rend pathétique la défaite du champion
allemand, qui concède quasiment 9′ à Pantani en lui tirant «un coup de chapeau» bien
mérité.

Le Livre d’Or du Cyclisme 1998 – Jean-François Quénet – Editions Solar




La balise <DIV>


La balise <DIV> (du type conteneur) permet de créer une division de plusieurs
élements. Ces élements peuvent être du texte, des images, des tableaux ou même des divisions.

On peut ensuite aligner cette divison sur le document, grâce à son unique attribut.

C’est d’ailleurs le seul moyen de center une image.


ALIGN (alignement horizontal)

Cette attribut permet d’aligner les élements contenu dans la division. Il peut avoir 3 valeurs :

  • left pour aligner à gauche (option par défaut)

  • center alignement au centre

  • right alignement à droite



<DIV align= »center »>
<IMG src= »http://www.cybwarrior.com/langages/images/pirate.gif »>
</DIV>

Le résultat sera :



Mais la balise <DIV> ne s’arrête pas là. En effet, c’est un élement essentiel
de la technologie du Dynamic HTML, du moins pour Microsoft Internet Explorer. Vous pouvez
avoir un aperçu des possibilités de Dynamic HTML en vous rendant à la rubrique ScriptLand


La balise <HR> (ligne horizontal)


La balise <HR> (Horizontal Row) permet de tracer une ligne
horizontale. On peut ainsi séparer facilement des paragraphes. C’est une balise du type marqueur.
Elle posséde aussi quelques arguments.


WIDTH (largeur de la ligne)

Il permet de définir la largeur à donner à la ligne. La valeur peut être exprimée soit en pixels,
soit en pourcentage du document :

<HR width= »33% »>

Résulat :


ALIGN (alignement horizontal)

align permet de définir l’alignement horizontal de la ligne. 3 valeurs sont possibles :

  • left alignement à gauche

  • center alignement au centre (option par défaut)

  • right alignement à droite


Il est à noter que si la largeur de la ligne n’est pas définie via l’attribut width,
l’alignement de la ligne passera inaperçu.

<HR width= »33% » align= »right »>

Résultat :


SIZE (épaisseur de la ligne)

L’attribut size définit la largeur de la ligne en pixels.


NOSHADE (pas d’ombre)

L’attribut noshade est booléan (il n’a pas de valeur). Sa présence dans la balise empéche
la création d’une ombre.


La balise <CENTER>


Cette balise parle d’elle même : elle permet de centrer un élement. Elle ne posséde pas d’attribut.
Son emploi est déconseillé et il est préférable d’utiliser la balise <DIV>.


La balise <BLOCKQUOTE>


La balise <BLOCKQUOTE> permet de réaliser une indentation du texte par rapport à
la marge gauche et à la marge droite :

<BLOCKQUOTE>La météo s’en mêle. Il pleut sur le Galibier nappé de brouillard.
Marco Pantani est indécis. Deux attaque successives de Luc Leblanc le mettent
sur orbite. A 5 km du sommet du terrible col, il part à l’assaut et dépasse
inexorablement Massi, Rinero, Serrano, Jimenez et Escartin, qui s’étaient échappés
précédemment. Au sommet, il compte déjà 2′56 » d’avance sur Jan Ullrich. Seulement
5 » le rapprochent du maillot jaune virtuel. Le public revit. Le «Pirate»
attrape au vol un bidon et un imperméable, mais ne parvenant pas à l’enfiler, il
s’arrête. Heureuse idée.<BR>
Le maillot jaune n’y pense pas, néglige les conditions climatiques extrêmes, joue à
sauve-qui-peut. Tous les éléments sont contre lui. Isolé, il crève dans la descente
du Galibier. Transi de froid, il essuie une terrible défaillance dans la montée
finale des Deux-Alpes, il a du mal à suivre ses équipiers, Bjarne Riis et Udo Bölts.
De leurs roues jaillit la pluie. Elle rend pathétique la défaite du champion
allemand, qui concède quasiment 9′ à Pantani en lui tirant «un coup de chapeau»
bien mérité.<BR>
<I>Le Livre d’Or du Cyclisme 1998 – Jean-François Quénet – Editions Solar</I>
</BLOCKQUOTE>

Résultat :
La météo s’en mêle. Il pleut sur le Galibier nappé de brouillard. Marco
Pantani est indécis. Deux attaque successives de Luc Leblanc le mettent sur orbite. A 5 km du sommet
du terrible col, il part à l’assaut et dépasse inexorablement Massi, Rinero, Serrano, Jimenez et
Escartin, qui s’étaient échappés précédemment. Au sommet, il compte déjà 2′56 » d’avance sur Jan
Ullrich. Seulement 5 » le rapprochent du maillot jaune virtuel. Le public revit. Le «Pirate»
attrape au vol un bidon et un imperméable, mais ne parvenant pas à l’enfiler, il d’arrête. Heureuse
idée.

Le maillot jaune n’y pense pas, néglige les conditions climatiques extrêmes, joue à sauve-qui-peut.
Tous les éléments sont contre lui. Isolé, il crève dans la descente du Galibier. Transi de froid, il
essuie une terrible défaillance dans la montée finale des Deux-Alpes, il a du mal à suivre ses équipiers,
Bjarne Riis et Udo Bölts. De leurs roues jaillit la pluie. Elle rend pathétique la défaite du champion
allemand, qui concède quasiment 9′ à Pantani en lui tirant «un coup de chapeau» bien
mérité.

Le Livre d’Or du Cyclisme 1998 – Jean-François Quénet – Editions Solar

Categories: HTML Tags:

HTML – Les feuilles de style

This entry is part 18 of 23 in the series HTML - Tutoriel

Ah! On y arrive! Les fameuses feuilles de style, la grande innovation de HTML 4. Grâce aux feuilles
de style, il est désormais possible de réaliser une mise en page impecable, sans utiliser des
dizaines d’images.

On peut aussi créer une mise en page qui sera appliquée à plusieurs documents. Ainsi, il suffira
de modifier la feuille de style pour changer l’apparence de tout les documents liés.

En fait, l’invention des feuilles de style ne date pas d’hier et existe depuis quelques temps
maintenant dans la spécification RTF et les traitements de texte.

Mais malheuresement, les navigateurs ne sont pas toujours fidéles à ces rêgles : si vous êtes
sous Microsoft Internet Explorer, les pages que vous lisez doivent être convenablement présentées.
Maintenant, si vous possédez Netscape Navigator, faites un tour sur mes pages…

Et oui, n’en déplaise aux anti-Microsoft, Internet Explorer est le navigateur le plus performant.

Théorie


Déjà, il faut savoir que tout élement HTML (un tableau, une division, un paragraphe…) est compris
dans un rectangle.

Partant de constat, on peut modifier les différentes propriétés de ce rectangle qui régissent
le type, la taille et la couleur de bordure, la couleur d’arrière plan, la police et la couleur
du texte…

Les possibilités sont donc très étendues.

Utilisation d’une feuille de style


L’utilisation d’une feuille de style peut se faire de 3 façons différentes pouvant néanmoins être
combinées les unes aux autres.

Fichier externe (balise <LINK>)

Déjà, on peut écrire toutes les rêgles de style dans un fichier distinct, puis l’inclure dans
le document choisi par le biais de la balise <LINK> du type marqueur. Le fichier
devra alors avoir l’extension .css.

Pour l’inclure dans le document HTML, on le mentionera tout simplement dans la section d’en-tête
(entre <HEAD> et </HEAD>) ainsi :

<HTML>
<HEAD>
<LINK href= »mystylesheet.css » rel= »stylesheet » type= »text/css »>
</HEAD>

<BODY>
Ceci est mon document HTML
</BODY>
</HTML>


L’attribut href mentionne l’URL ou se trouve la feuille de style à inclure.

L’interêt de cette technique est que l’on peut ainsi appliquer un même style à une multitude de
document, sans pour autant définir les même rêgles de style de chaque document.

Ainsi, une simple modification dans le fichier externe permettra de modifier tout les documents
liés.

La balise <STYLE>

On peut également définir les rêgles de style directement dans le document, via la balise <STYLE>
du type conteneur. Cette balise se trouvera dans la section d’en-tête du document.

Normalement, l’attribut type doit être mentionné avec la valeur text/css, mais
les navigateurs s’en sortent très bien sans lui. Mais bon, restez dans les rêgles de l’art du
parfait WebMaster et écrivez :

<HTML>
<HEAD>
<STYLE type= »text/css »>
Ici, ma feuille de style.
Attention! Ceci n’en est pas une :)
</STYLE>
</HEAD>

<BODY>
Et ici, le document HTML classique
</BODY>
</HTML>

L’attribut STYLE

La dernière méthode pour appliquer un style à un élement est d’utiliser l’attribut commun à toute
les balises : l’attribut style.

Son emploi se fait comme pour n’importe quel autre attribut :

<H2 style= »Rêgle de style pour le titre. Ceci n’en est pas une :)  »>Titre de
niveau 2</H2>

<P style= »Rêgle de style pour le paragraphe. Ceci n’en est pas une :)  »>Ceci est
un paragraphe auquel est appliqué une rêgle de style par l’attribut <B>style</B></P>

Exemples


Nous allons tracer une bordure bleu autour d’un paragraphe (et oui, on peut). Pour faire un
paragraphe, on utilise la balise <P>. C’est donc sur cet élement qu’il va falloir
agir.

Pour agir sur un élement HTML dans une feuille de style, il suffit d’écrire son nom sans les >
et <. Puis, à la manière du C++, on ouvre une acolade {. Ensuite, on écrit
les propriétés et les valeurs qu’elles doivent avoir, et on referme le tout avec l’acolade fermante
}.

Pour affecter une valeur, on utilise non pas le signe égual (=), mais le double points
(:). Et à la fin de chaque couple propriété:valeur, on rajoute un point virgule
(comme en Pascal ou en C++), ce qui nous donne le schéma suivant :

<STYLE type= »text/css »>
BALISE{
propriete1:valeur1;
propriete2:valeur2;
propriete3:valeur3;
}
</STYLE>

La propriété qui régie la bordure se nomme tout simplement border. Mais la bordure elle même
à plusieurs propriétés, comme la taille, le style ou la couleur.

Pour accéder à ces différentes proriétés, on utilisera :

  • border-color pour la couleur

  • border-style pour le style

  • border-width pour l’épaisseur


Exemple :

<HTML>
<HEAD>
<STYLE type= »text/css »>
P{
border-color:blue;
border-style:solid;
border-width:1;
}
</STYLE>
</HEAD>

<BODY>
<P>Au sommet de Piancavallo, une autre course commence. Dès les premières rampes de
l’ascension finale, longue de 12 km, le «Pirate» redevient un aigle. Pavel
Tonkov, qui a eu l’art de se cacher jusqu’alors, tente un moment de lui emboîter le pas.
Peine perdue.<BR>
On a retrouvé le vrai Marco Pantani, impossible à suivre en côte. Il donne tout, parce
qu’il à besoin d’avoir «le cœur en paix ». La montagne lui manque. Il se
refuse à penser au lendemain, alors qu’il ferait mieux d’en garder sous la pédale pour le
contre-la-montre de Trieste. Mais il ne creuse pas d’écart monstrueux. Là-haut, il devance
de 13 » Tonkov et Zülle. Seul Ivan Gotti, le vainqueur du Giro 1997, est écarté de la lutte.
Ses 5′ de retard sont le signe d’un virus impossible à guérir au beau milieu de la
course.<BR>
<I>Le Livre d’Or du Cyclisme 1998 – Jean François Quénet – Editions Solar</I></P>
</BODY>
</HTML>


Résulat :

Au sommet de Piancavallo, une autre course commence. Dès les premières rampes de l’ascension finale,
longue de 12 km, le «Pirate» redevient un aigle. Pavel Tonkov, qui a eu l’art de se cacher
jusqu’alors, tente un moment de lui emboîter le pas. Peine perdue.

On a retrouvé le vrai Marco Pantani, impossible à suivre en côte. Il donne tout, parce qu’il à besoin
d’avoir «le cœur en paix ». La montagne lui manque. Il se refuse à penser au lendemain,
alors qu’il ferait mieux d’en garder sous la pédale pour le contre-la-montre de Trieste. Mais il ne
creuse pas d’écart monstrueux. Là-haut, il devance de 13 » Tonkov et Zülle. Seul Ivan Gotti, le vainqueur
du Giro 1997, est écarté de la lutte. Ses 5′ de retard sont le signe d’un virus impossible à guérir au
beau milieu de la course.

Le Livre d’Or du Cyclisme 1998 – Jean François Quénet – Editions Solar


C’est bien, mais on n’aimerai bien laisser une marge de 30 pixels entre la bordure et le document.
Pour cela, rien de plus simple : on va agir sur la propriété magin du paragraphe.

On modifiera donc la feuille de style en conséquent :

<STYLE type= »text/css »>
P{
border-color:blue;
border-style:solid;
border-width:1;
margin:30;
}
</STYLE>

Cette fois-ci, ça donne :

Au sommet de Piancavallo, une autre course commence. Dès les premières rampes de l’ascension finale,
longue de 12 km, le «Pirate» redevient un aigle. Pavel Tonkov, qui a eu l’art de se cacher
jusqu’alors, tente un moment de lui emboîter le pas. Peine perdue.

On a retrouvé le vrai Marco Pantani, impossible à suivre en côte. Il donne tout, parce qu’il à besoin
d’avoir «le cœur en paix ». La montagne lui manque. Il se refuse à penser au lendemain,
alors qu’il ferait mieux d’en garder sous la pédale pour le contre-la-montre de Trieste. Mais il ne
creuse pas d’écart monstrueux. Là-haut, il devance de 13 » Tonkov et Zülle. Seul Ivan Gotti, le vainqueur
du Giro 1997, est écarté de la lutte. Ses 5′ de retard sont le signe d’un virus impossible à guérir au
beau milieu de la course.

Le Livre d’Or du Cyclisme 1998 – Jean François Quénet – Editions Solar


Mais maintenant, on veut laisser un espace de 5 pixels entre la bordure et le texte du paragraphe.
Il va falloir agir sur la propriété padding du paragraphe.

Voici la feuille de style une fois mise à jour :

<STYLE type= »text/css »>
P{
border-color:blue;
border-style:solid;
border-width:1;
margin:30;
padding:5;
}
</STYLE>

Résultat :

Au sommet de Piancavallo, une autre course commence. Dès les premières rampes de l’ascension finale,
longue de 12 km, le «Pirate» redevient un aigle. Pavel Tonkov, qui a eu l’art de se cacher
jusqu’alors, tente un moment de lui emboîter le pas. Peine perdue.

On a retrouvé le vrai Marco Pantani, impossible à suivre en côte. Il donne tout, parce qu’il à besoin
d’avoir «le cœur en paix ». La montagne lui manque. Il se refuse à penser au lendemain,
alors qu’il ferait mieux d’en garder sous la pédale pour le contre-la-montre de Trieste. Mais il ne
creuse pas d’écart monstrueux. Là-haut, il devance de 13 » Tonkov et Zülle. Seul Ivan Gotti, le vainqueur
du Giro 1997, est écarté de la lutte. Ses 5′ de retard sont le signe d’un virus impossible à guérir au
beau milieu de la course.

Le Livre d’Or du Cyclisme 1998 – Jean François Quénet – Editions Solar


C’est encore mieux. Compliquons encore un petit peu. En hommage à Pantani et à la Mercatone Uno,
nous allons écrire le texte en vert sur un fond jaune.

La propriété qui contrôle la couleur de fond se nomme background-color. Pour le texte,
on écrira tout simplement color :

<STYLE type= »text/css »>
P{
border-color:blue;
border-style:solid;
border-width:1;
margin:30;
padding:5;
background-color:yellow;
color:green;
}
</STYLE>

Ce qui nous donne :

Au sommet de Piancavallo, une autre course commence. Dès les premières rampes de l’ascension finale,
longue de 12 km, le «Pirate» redevient un aigle. Pavel Tonkov, qui a eu l’art de se cacher
jusqu’alors, tente un moment de lui emboîter le pas. Peine perdue.

On a retrouvé le vrai Marco Pantani, impossible à suivre en côte. Il donne tout, parce qu’il à besoin
d’avoir «le cœur en paix ». La montagne lui manque. Il se refuse à penser au lendemain,
alors qu’il ferait mieux d’en garder sous la pédale pour le contre-la-montre de Trieste. Mais il ne
creuse pas d’écart monstrueux. Là-haut, il devance de 13 » Tonkov et Zülle. Seul Ivan Gotti, le vainqueur
du Giro 1997, est écarté de la lutte. Ses 5′ de retard sont le signe d’un virus impossible à guérir au
beau milieu de la course.

Le Livre d’Or du Cyclisme 1998 – Jean François Quénet – Editions Solar


C’est bien, mais maitenant on veut que la source du livre d’où a été tiré ce passage de la passionante
histoire du cyclisme (au fait, c’était le Tour d’Italie 1998 briallement remporté par Marco Pantani,
lors de la 14ème de 165 kms, de Schio à Piancavallo) apparaisse en noir,
et en caractère plus petits.

No Problemo, pour l’écrire en italique on a fait justement appel à la balise <I>.
On va logiquement agir sur celle ci. Pour la couleur du texte, vous savez faire. Pour la taille
de la police, on agit sur la propriété font-size. Vu que l’on veut écrire tout petit, la
valeur a utiliser sera xx-small.

Voici maintenant l’aspect de la feuille de style :

<STYLE type= »text/css »>
P{
border-color:blue;
border-style:solid;
border-width:1;
margin:30;
padding:5;
background-color:yellow;
color:green;
}
I{
color:black;
font-size:xx-small;
}
</STYLE>

Et voici l’aspect du paragraphe :

Au sommet de Piancavallo, une autre course commence. Dès les premières rampes de l’ascension finale,
longue de 12 km, le «Pirate» redevient un aigle. Pavel Tonkov, qui a eu l’art de se cacher
jusqu’alors, tente un moment de lui emboîter le pas. Peine perdue.

On a retrouvé le vrai Marco Pantani, impossible à suivre en côte. Il donne tout, parce qu’il à besoin
d’avoir «le cœur en paix ». La montagne lui manque. Il se refuse à penser au lendemain,
alors qu’il ferait mieux d’en garder sous la pédale pour le contre-la-montre de Trieste. Mais il ne
creuse pas d’écart monstrueux. Là-haut, il devance de 13 » Tonkov et Zülle. Seul Ivan Gotti, le vainqueur
du Giro 1997, est écarté de la lutte. Ses 5′ de retard sont le signe d’un virus impossible à guérir au
beau milieu de la course.

Le Livre d’Or du Cyclisme 1998 – Jean François Quénet – Editions Solar


Maintenant, on voudrait diminuer la largeur de ce paragraphe à 200 pixels, et le placer à la
droite du document.

Pour agir sur la largeur, on utilisera tout simplement width :

<STYLE type= »text/css »>
P{
border-color:blue;
border-style:solid;
border-width:1;
margin:30;
padding:5;
background-color:yellow;
color:green;
width:200;
}
I{
color:black;
font-size:xx-small;
}
</STYLE>

Et voici le paragraphe :


Au sommet de Piancavallo, une autre course commence. Dès les premières rampes de l’ascension finale,
longue de 12 km, le «Pirate» redevient un aigle. Pavel Tonkov, qui a eu l’art de se cacher
jusqu’alors, tente un moment de lui emboîter le pas. Peine perdue.

On a retrouvé le vrai Marco Pantani, impossible à suivre en côte. Il donne tout, parce qu’il à besoin
d’avoir «le cœur en paix ». La montagne lui manque. Il se refuse à penser au lendemain,
alors qu’il ferait mieux d’en garder sous la pédale pour le contre-la-montre de Trieste. Mais il ne
creuse pas d’écart monstrueux. Là-haut, il devance de 13 » Tonkov et Zülle. Seul Ivan Gotti, le vainqueur
du Giro 1997, est écarté de la lutte. Ses 5′ de retard sont le signe d’un virus impossible à guérir au
beau milieu de la course.

Le Livre d’Or du Cyclisme 1998 – Jean François Quénet – Editions Solar


C’est presque super. Mais on veut maitenant justifier le texte, pour combler ces affreux
espaces.

Pas de problèmes. Pour justifier le texte, on peut soit utiliser directement l’attribut align
de la balise <P>, soit utiliser la propriété text-align, associée à
la valeur justify :

<STYLE type= »text/css »>
P{
border-color:blue;
border-style:solid;
border-width:1;
margin:30;
padding:5;
background-color:yellow;
color:green;
width:200;
text-align:justify;
}
I{
color:black;
font-size:xx-small;
}
</STYLE>

Résultat final (ouf !):


Au sommet de Piancavallo, une autre course commence. Dès les premières rampes de l’ascension finale,
longue de 12 km, le «Pirate» redevient un aigle. Pavel Tonkov, qui a eu l’art de se cacher
jusqu’alors, tente un moment de lui emboîter le pas. Peine perdue.

On a retrouvé le vrai Marco Pantani, impossible à suivre en côte. Il donne tout, parce qu’il à besoin
d’avoir «le cœur en paix ». La montagne lui manque. Il se refuse à penser au lendemain,
alors qu’il ferait mieux d’en garder sous la pédale pour le contre-la-montre de Trieste. Mais il ne
creuse pas d’écart monstrueux. Là-haut, il devance de 13 » Tonkov et Zülle. Seul Ivan Gotti, le vainqueur
du Giro 1997, est écarté de la lutte. Ses 5′ de retard sont le signe d’un virus impossible à guérir au
beau milieu de la course.

Le Livre d’Or du Cyclisme 1998 – Jean François Quénet – Editions Solar


Et si on avait eu un deuxième paragraphe ? Et bien il aurrait été formaté suivant la même rêgle
de style. Cette effet peut dans certains cas être recherché. Mais dans d’autres cas, on voudra
pouvoir utiliser un autre style pour un autre paragraphe.

Il suffit d’utiliser ce que l’on appelle une classe. Pour la créer, il faut écrire dans
la feuille de style son nom précédé d’un point (.) à la suite du nom de l’élement (toujours
sans les < et >).

Maintenant, Marco Pantani prend le maillot rose à l’occasion de la 17ème étape ralliant
Asiago à Selva di Val Gardena. Pour celebrer cet évenement, on va écrire un paragraphe sur fond
rose avec du texte bleu (tout en gardant l’ancien paragraphe).

Il va donc nous falloir modifier notre feuille de style et créer deux classes : une pour le premier
paragraphe que nous appellerons Piancavallo et une seconde pour l’autre ValGardena.

À partir de ce moment, il existe plusieurs façons de procéder :

  • On ré-ecrit les deux même rêgles de style à l’identique pour les deux paragraphes, en changeant
    seulement les propriétés background-color et color :

    <STYLE type= »text/css »>
    P.Piancavallo{
    border-color:blue;
    border-style:solid;
    border-width:1;
    margin:30;
    padding:5;
    background-color:yellow;
    color:green;
    width:200;
    text-align:justify;
    }
    P.ValGardena{
    border-color:blue;
    border-style:solid;
    border-width:1;
    margin:30;
    padding:5;
    background-color:pink;
    color:blue;
    width:200;
    text-align:justify;
    }
    I{
    color:black;
    font-size:xx-small;
    }
    </STYLE>

  • On créér un style sans nom de classe, avec toutes les propriétés, sauf les fameuses propriétés
    background-color et color. Ensuite, on créer les deux classes
    Piancavallo et ValGardena avec les couleurs d’arrière plan et du texte correspondantes :

    <STYLE type= »text/css »>
    P{
    border-color:blue;
    border-style:solid;
    border-width:1;
    margin:30;
    padding:5;
    width:200;
    text-align:justify;
    }
    P.Piancavallo{
    background-color:yellow;
    color:green;
    }
    P.ValGardena{
    background-color:pink;
    color:blue;
    }
    I{
    color:black;
    font-size:xx-small;
    }
    </STYLE>


Evidement, la méthode la plus adaptée et la plus structurée est la deuxième. C’est celle que nous
allons utiliser.

Mais c’est bien beau de créer des classes, encore faut-il les utilisées. Rien de plus simple :
on va faire appelle à l’attribut commun class. L’utilisation en est enfantine : il suffit
d’écrire le nom de la classe à utiliser à sa suite :

<HTML>
<HEAD>
<STYLE type= »text/css »>
P{
border-color:blue;
border-style:solid;
border-width:1;
margin:30;
padding:5;
width:200;
text-align:justify;
}
P.Piancavallo{
background-color:yellow;
color:green;
}
P.ValGardena{
background-color:pink;
color:blue;
}
I{
color:black;
font-size:xx-small;
}
</STYLE>
</HEAD>

<BODY>
<P class= »Piancavalo »>Au sommet de Piancavallo, une autre course commence. Dès les
premières rampes de l’ascension finale, longue de 12 km, le «Pirate» redevient
un aigle. Pavel Tonkov, qui a eu l’art de se cacher jusqu’alors, tente un moment de lui
emboîter le pas. Peine perdue.<BR>
On a retrouvé le vrai Marco Pantani, impossible à suivre en côte. Il donne tout, parce
qu’il à besoin d’avoir «le cœur en paix ». La montagne lui manque. Il se
refuse à penser au lendemain, alors qu’il ferait mieux d’en garder sous la pédale pour le
contre-la-montre de Trieste. Mais il ne creuse pas d’écart monstrueux. Là-haut, il devance
de 13 » Tonkov et Zülle. Seul Ivan Gotti, le vainqueur du Giro 1997, est écarté de la lutte.
Ses 5′ de retard sont le signe d’un virus impossible à guérir au beau milieu de la
course.<BR>
<I>Le Livre d’Or du Cyclisme 1998 – Jean François Quénet – Editions Solar</I></P>

<P class= »ValGardena »>Tonkov attaque sur la Marmolada, le col le plus redoutable du
Giro. Pantani et Guerini le contrent. Les deux hommes parlement. Leurs intérêts convergent.
A l’un le maillot, à l’autre l’étape. Car Zülle est en perdition, sur, dit-il, «la côte
la plus dure de ma vie». La course va tellement vite à l’avant que 45 concurrents
rentrent à la maison, la plupart terminant hors délais; parmi eux Bartoli, Guidi, Edo,
Fontanelli, Gotti, Cipollini… Le Giro redouble d’intérêt : Pantani découvre le bonheur en
rose, mais Tonkov pointe à 30 », Guerini à 31 », Zülle à 1′. Le Suisse n’a perdu que le
bénéfice du contre-la-montre, pas encore le classement final. Il entend se refaire dès le
lendemain en montant à l’Alpe de Pampeago, mais Pantani lui coupe l’herbe sous le pied.
Ce n’est plus Guerini, mais Tonkov, qui tient son rythme. Le Russe devient l’ennemi numéro
un d’une Italie dont le cœur bat pour le «Pirate».<BR>
<I>Le Livre d’Or du Cyclisme 1998 – Jean François Quénet – Editions Solar</I></P>
</BODY>
</HTML>


Au sommet de Piancavallo, une autre course commence. Dès les premières
rampes de l’ascension finale, longue de 12 km, le «Pirate» redevient un aigle. Pavel Tonkov,
qui a eu l’art de se cacher jusqu’alors, tente un moment de lui emboîter le pas. Peine perdue.

On a retrouvé le vrai Marco Pantani, impossible à suivre en côte. Il donne tout, parce qu’il à besoin
d’avoir «le cœur en paix ». La montagne lui manque. Il se refuse à penser au lendemain,
alors qu’il ferait mieux d’en garder sous la pédale pour le contre-la-montre de Trieste. Mais il ne
creuse pas d’écart monstrueux. Là-haut, il devance de 13 » Tonkov et Zülle. Seul Ivan Gotti, le vainqueur
du Giro 1997, est écarté de la lutte. Ses 5′ de retard sont le signe d’un virus impossible à guérir au
beau milieu de la course.

Le Livre d’Or du Cyclisme 1998 – Jean François Quénet – Editions Solar

Tonkov attaque sur la Marmolada, le col le plus redoutable du Giro. Pantani
et Guerini le contrent. Les deux hommes parlement. Leurs intérêts convergent. A l’un le maillot, à l’autre
l’étape. Car Zülle est en perdition, sur, dit-il, «la côte la plus dure de ma vie». La course
va tellement vite à l’avant que 45 concurrents rentrent à la maison, la plupart terminant hors délais;
parmi eux Bartoli, Guidi, Edo, Fontanelli, Gotti, Cipollini… Le Giro redouble d’intérêt : Pantani
découvre le bonheur en rose, mais Tonkov pointe à 30 », Guerini à 31 », Zülle à 1′. Le Suisse n’a perdu
que le bénéfice du contre-la-montre, pas encore le classement final. Il entend se refaire dès le lendemain
en montant à l’Alpe de Pampeago, mais Pantani lui coupe l’herbe sous le pied. Ce n’est plus Guerini, mais
Tonkov, qui tient son rythme. Le Russe devient l’ennemi numéro un d’une Italie dont le cœur bat pour
le «Pirate».

Le Livre d’Or du Cyclisme 1998 – Jean François Quénet – Editions Solar

Utilisation de l’attribut STYLE


L’utilisation de l’attribut syle n’est pas plus compliquée, en réalité, elle est même plus
simple. En fait, une rêgle de style inscrite dans un attribut ne s’appliquera que dans l’élement
au il se trouve, ce qui fait que tout les autres élements du document ne seront en rien affectés
par le contenu de cet attribut.

Vu que les rêgles ne vont s’appliquer qu’a un élement, il n’est plus utile de spécifier le nom de
l’élement. Les parenthéses deviennent donc inutiles. Voici un exemple permettant de modifier
le style de la source des textes :

<HTML>
<HEAD>
<STYLE type= »text/css »>
P{
border-color:blue;
border-style:solid;
border-width:1;
margin:30;
padding:5;
width:200;
text-align:justify;
}
P.Piancavallo{
background-color:yellow;
color:green;
}
P.ValGardena{
background-color:pink;
color:blue;
}
I{
color:black;
font-size:xx-small;
}
</STYLE>
</HEAD>

<BODY>
<P class= »Piancavalo »>Au sommet de Piancavallo, une autre course commence. Dès les
premières rampes de l’ascension finale, longue de 12 km, le «Pirate» redevient
un aigle. Pavel Tonkov, qui a eu l’art de se cacher jusqu’alors, tente un moment de lui
emboîter le pas. Peine perdue.<BR>
On a retrouvé le vrai Marco Pantani, impossible à suivre en côte. Il donne tout, parce
qu’il à besoin d’avoir «le cœur en paix ». La montagne lui manque. Il se
refuse à penser au lendemain, alors qu’il ferait mieux d’en garder sous la pédale pour le
contre-la-montre de Trieste. Mais il ne creuse pas d’écart monstrueux. Là-haut, il devance
de 13 » Tonkov et Zülle. Seul Ivan Gotti, le vainqueur du Giro 1997, est écarté de la lutte.
Ses 5′ de retard sont le signe d’un virus impossible à guérir au beau milieu de la
course.<BR>
<I style= »background-color:white; »>Le Livre d’Or du Cyclisme 1998 – Jean François
Quénet – Editions Solar</I></P>

<P class= »ValGardena »>Tonkov attaque sur la Marmolada, le col le plus redoutable du
Giro. Pantani et Guerini le contrent. Les deux hommes parlement. Leurs intérêts convergent.
A l’un le maillot, à l’autre l’étape. Car Zülle est en perdition, sur, dit-il, «la côte
la plus dure de ma vie». La course va tellement vite à l’avant que 45 concurrents
rentrent à la maison, la plupart terminant hors délais; parmi eux Bartoli, Guidi, Edo,
Fontanelli, Gotti, Cipollini… Le Giro redouble d’intérêt : Pantani découvre le bonheur en
rose, mais Tonkov pointe à 30 », Guerini à 31 », Zülle à 1′. Le Suisse n’a perdu que le
bénéfice du contre-la-montre, pas encore le classement final. Il entend se refaire dès le
lendemain en montant à l’Alpe de Pampeago, mais Pantani lui coupe l’herbe sous le pied.
Ce n’est plus Guerini, mais Tonkov, qui tient son rythme. Le Russe devient l’ennemi numéro
un d’une Italie dont le cœur bat pour le «Pirate».<BR>
<I style= »background-color:white; »>Le Livre d’Or du Cyclisme 1998 – Jean François
Quénet – Editions Solar</I></P>
</BODY>
</HTML>


Et voici le résultat :

Au sommet de Piancavallo, une autre course commence. Dès les premières
rampes de l’ascension finale, longue de 12 km, le «Pirate» redevient un aigle. Pavel Tonkov,
qui a eu l’art de se cacher jusqu’alors, tente un moment de lui emboîter le pas. Peine perdue.

On a retrouvé le vrai Marco Pantani, impossible à suivre en côte. Il donne tout, parce qu’il à besoin
d’avoir «le cœur en paix ». La montagne lui manque. Il se refuse à penser au lendemain,
alors qu’il ferait mieux d’en garder sous la pédale pour le contre-la-montre de Trieste. Mais il ne
creuse pas d’écart monstrueux. Là-haut, il devance de 13 » Tonkov et Zülle. Seul Ivan Gotti, le vainqueur
du Giro 1997, est écarté de la lutte. Ses 5′ de retard sont le signe d’un virus impossible à guérir au
beau milieu de la course.

Le Livre d’Or du Cyclisme 1998 – Jean François
Quénet – Editions Solar

Tonkov attaque sur la Marmolada, le col le plus redoutable du Giro. Pantani
et Guerini le contrent. Les deux hommes parlement. Leurs intérêts convergent. A l’un le maillot, à l’autre
l’étape. Car Zülle est en perdition, sur, dit-il, «la côte la plus dure de ma vie». La course
va tellement vite à l’avant que 45 concurrents rentrent à la maison, la plupart terminant hors délais;
parmi eux Bartoli, Guidi, Edo, Fontanelli, Gotti, Cipollini… Le Giro redouble d’intérêt : Pantani
découvre le bonheur en rose, mais Tonkov pointe à 30 », Guerini à 31 », Zülle à 1′. Le Suisse n’a perdu
que le bénéfice du contre-la-montre, pas encore le classement final. Il entend se refaire dès le lendemain
en montant à l’Alpe de Pampeago, mais Pantani lui coupe l’herbe sous le pied. Ce n’est plus Guerini, mais
Tonkov, qui tient son rythme. Le Russe devient l’ennemi numéro un d’une Italie dont le cœur bat pour
le «Pirate».

Le Livre d’Or du Cyclisme 1998 – Jean François
Quénet – Editions Solar

Les identificateurs et les commentaires


À la manière de n’importe quel langage qui se respecte, les feuilles de style permettent l’utilisation
des commentaires, afin de faciliter la compréhension de tel ou tel rêgle de style ou bien
pour passer sous silence facilement (pour des tests par exemple) une portion de la feuille de style.

Les commentaires sont identiques à ceux utilisés en JavaScript et en C++ : le début commence par
/* et sa fin par */. Tout le texte écrit entre ces deux élements est ignoré :

<STYLE type= »text/plain »>
/* Ceci est un commentaire dans une feuille de style */
</STYLE>

Les indentificateurs permettent d’appliquer un même style, mais à des élements pouvant être totalement
différents.

Par exemple, grâce aux identificateurs, on pourra écrire tout les textes écrits en gras, italiques,
soulignés, barré etc… d’une certaine façon, bien qu’il faille pourtant employer des balises
différentes.

Un identificateur ne comporte pas de nom de balise : il est seulement constitué du caractère
dièse (#) et le nom de l’identificateur à la suite.

L’énonciation des rêgles de style quand elle ne change pas : il faut toujours utiliser les accolades.
Ensuite, pour utiliser l’identificateur, il suffira de mentionner son nom dans la balise par le
biais de l’attribut commun id :

<HTML>
<HEAD>
<STYLE type= »text/css »>
#Ident{ /* Ident est l’identificateur */
color:yellow;
}
</STYLE>
</HEAD>

<BODY>
<I id= »Ident »>Ceci est un texte en italique</I><BR>
<B id= »Ident »>Ceci est un texte écrit en caractères gras</B><BR>
<U id= »Ident »>Ceci est un texte souligné</U><BR>
<STRIKE id= »Ident »>Ceci est un texte baré</STRIKE>
</BODY>
</HTML>


Résultat :



Ceci est un texte en italique

Ceci est un texte écrit en caractères gras

Ceci est un texte souligné

Ceci est un texte baré

Récapitulatif


Les possibilités offertes par la technologie des feuilles de style sont tellement vastes qu’il
est impossible de créer un exemple pour chaque propriété. C’est la raison pour laquelle j’ai
condensé le tout dans le tableau ci-dessous. Je pense que c’est assez explicite, mais si vous
n’avez pas saisi l’une ou l’autre chose, n’hésitez pas, écrivez-moi.

Pour ce qui est de l’utilisation de toutes ces rêgles, la méthode est la même que celle détaillé
plus haut.












































































































































































































































































Récapitulatif des propriétés des feuilles de style
Propriétés Description Balises concernées Valeurs possibles
background Permet de définir l’image, le positionnement, la répetition et la couleur d’arrière plan
d’une seule et unique fois
Toutes les balises disposant d’un arrière-plan Voir les valeurs pour les autres propriétés de background
background-attachment Définit si l’arrière plan doit être attaché au premier plan ou non Toutes balises disposant d’un arrière-plan 2 valeurs :

  • fixed : l’arrière plan reste fixe

  • scroll : l’arrière plan est attaché au premier plan

background-color Fixe la couleur d’arrière-plan d’un élement Toutes balise disposant d’un arrière-plan Reportez-vous à la partie sur les couleurs
background-image Attribut une image d’arrière-plan à un élement Toutes les balises disposant d’un arrière-plan Une URL, attribuée ainsi : background-image:URL(http://www.monurl.com/monimage.jpg);
background-position Définit la position de l’image d’arrière-plan définie par la propriété background-image
sur l’arrière-plan
Toutes les balises disposant d’un arrière plan Valeur en pixel, en pourcentage, ou un ou deux des 6 mots-clefs suivants :

  • bottom en bas

  • center au centre

  • left à gauche

  • right à droite

  • top en haut


Utilisez deux mots-clefs pour positionner l’image verticalement et horizontalement. Séparez
les alors par un espace
background-repeat Définit si l’image d’arrière-plan fixée par la propriété background-image doit être
répetée ou non (mosaïque)
Toutes les balises disposant d’un arrière-plan 4 valeurs :

  • no-repeat : pas de répetition

  • repeat : répetition de l’image horizontalement et verticalement

  • repeat-x : répetition de l’image horizontalement seulement

  • repeat-y : répetition de l’image verticalement seulement

border-style Définit l’aspect de la bordure d’un élement Toutes 9 valeurs possibles :

  • dashed : tirets

  • dotted : pointillés

  • double : doubles traits

  • groove : creux

  • inset : 3D en arrière

  • none : pas de bordure

  • outset : 3D en avant

  • ridge : saillie

  • solid : continue

border-color Définit la couleur de la bordure Toutes Se référer à la partie traitant des couleurs
border-width Définit l’épaisseur de la bordure Toutes Valeur en pixels, en pourcentages ou un des 3 mots clefs suivants :

  • medium : moyenne

  • thick : large

  • thin : mince


border-bottom Définit à l’aide de 3 valeurs l’épaisseur, le style et la couleur de la bordure basse Toutes Les 3 valeurs doivent être séparées par des espaces ainsi : border-bottom:epaisseur style
couleur;
border-left Définit à l’aide de 3 valeurs l’épaisseur, le style et la couleur de la bordure gauche Toutes Les 3 valeurs doivent être séparées par des espaces ainsi : border-left:epaisseur style
couleur;
border-right Définit à l’aide de 3 valeurs l’épaisseur, le style et la couleur de la bordure droite Toutes Les 3 valeurs doivent être séparées par des espaces ainsi : border-right:epaisseur style
couleur;
border-top Définit à l’aide de 3 valeurs l’épaisseur, le style et la couleur de la bordure haute Toutes Les 3 valeurs doivent être séparées par des espaces ainsi : border-top:epaisseur style
couleur;
color Fixe la couleur de premier-plan, c’est à dire la couleur du texte d’un élement Toutes balises disposant de texte Reportez-vous à la partie sur les couleurs
float Permet de faire flotter un élement, c’est à dire que celui-ci peut être entouré
par du texte.
Toutes 3 valeurs sont possibles :

  • left : flottaison à gauche

  • none : pas de flottaison

  • right : flottaison à droite

font-family Définit le type de police à utiliser Toutes les balises disposant de texte Un nom de police entre guillemets (« )
font-size Taille du texte Toutes les balises disposant de texte Valeurs numérique, en pourcentages ou une des 9 valeurs suivantes :

  • xx-small

  • x-small

  • small

  • medium

  • large

  • x-large

  • xx-large

  • larger : plus grande

  • smaller : plus petite

font-style Inclinaison du texte Toutes les balises disposant de texte 3 valeurs :

  • italic : italique

  • normal : pas d’inclinaison

  • oblique : inclinaison oblique

font-variant Application d’un style différent à du texte Toutes les balises disposant de texte 2 valeurs :

  • normal : pas de changement

  • small-caps : affichage en petites capitales

font-weight Définition du niveau de gras d’un texte Toutes les balises disposant de texte 4 valeurs :

  • normal

  • bold

  • lighter : plus léger

  • bolder : plus gras

height Hauteur d’un élement Toutes Valeur en pixels ou en pourcentages
letter-spacing Espace entre les lettres dans un texte Toutes balises disposant de texte Valeurs en pixels
line-height Définit la hauteur de l’interligne Toutes les balises disposant de texte Valeur numérique représentant un multiple de la hauteur normale : 2 pour le double, 3 pour le triple…
list-style-image Permet d’afficher une image à la place de la puce dans une liste Balises <UL>, <OL> et <DL> Une URL, attribuée ainsi : list-style-image:URL(http://www.monurl.com/monimage.gif);
list-style-position Définit le type de retrait d’une liste Balises <OL>, <UL> et <DL> 3 valeurs :

  • inside : alignement sur la marge gauche

  • outside : indentation

list-style-type Détermine le type et la forme d’affichage de la tête de chaque élement d’une liste Balises <OL> et <UL> Pour <UL> :

  • circle : cercle

  • disc : point

  • none : pas de puce

  • square : carré


Pour <OL> :

  • decimal : numérotation décimale

  • lower-alpha : lettres minuscules

  • lower-roman : chiffres romains en minuscules

  • none : pas de numéro

  • upper-alpha : lettres majuscules

  • upper-roman : chiffres romains en majuscules

margin Définit les marges externes au bloc de l’élement. Les marges sont définies selon le nombres
de valeurs spécifiées.
Toutes Valeurs en pixels ou en pourcentages. Accepte jusqu’à 4 valeurs séparées par des espaces.
Dans ce dernier cas, les marges sont définies ainsi : margin:haut droite bas gauche;
margin-bottom Définit la marge entre le bord bas du cadre et l’élement le plus prêt Toutes En pixels ou en pourcentages.
margin-left Définit la marge entre le bord gauche du cadre et l’élement le plus prêt Toutes En pixels ou en pourcentages.
margin-right Définit la marge entre le bord droit du cadre et l’élement le plus prêt Toutes En pixels ou en pourcentages.
margin-top Définit la marge entre le bord haut du cadre et l’élement le plus prêt Toutes En pixels ou en pourcentages.
padding Définit la marge interne d’un élement, c’est à dire l’espace qui le sépare des bords du
cadre de son bloc et son contenu.
Toutes Valeurs en pixels ou en pourcentages. Accepte jusqu’à 4 valeurs séparées par des espaces.
Dans ce dernier cas, les marges sont définies ainsi : padding:haut droite bas gauche;
padding-bottom Définit la marge entre le bord bas du cadre et son contenu Toutes En pixels ou en pourcentages.
padding-left Définit la marge entre le bord gauche du cadre et son contenu Toutes En pixels ou en pourcentages.
padding-right Définit la marge entre le bord droit du cadre et son contenu Toutes En pixels ou en pourcentages.
padding-top Définit la marge entre le bord haut du cadre et son contenu Toutes En pixels ou en pourcentages.
text-align Définit l’alignement du texte Toutes les balises pouvant afficher du texte 4 valeurs :

  • center : alignement au centre

  • left : alignement à gauche

  • justify : justification du texte

  • right : alignement à droite

text-decoration Permet de « décorer » du texte (soulignement, surlignement…) Toutes les balises pouvant afficher du texte 5 valeurs :

  • blink : clignotement (seulement sous Netscape)

  • line-through : barré

  • none : aucune mise en forme

  • overline : surlignement (seulement sous Internet Explorer)

  • underline : soulignement

text-indent Permet d’effectuer une indentation ou un retrait du texte de la première ligne d’un paragraphe Toutes les balises pouvant afficher du texte Valeurs négatives ou positives en pixels ou en pourcentages
text-transform Transforme la casse d’un texte Toutes les balises pouvant afficher du texte 4 valeurs :

  • capitalize : le première lettre de chaque mot est mise en majuscules

  • lowercase : toutes les lettres de chaque mot sont mises en minuscules

  • uppercase : toutes les lettres de chaque mot sont mises en majuscules

  • none : aucune transformation

vertical-align Définit l’alignement vertical d’un élement par rapport à son élement conteneur (contenu des cellules d’un tableau
par exemple)
Toutes Valeur en pourcentages ou une des 8 suivantes :

  • baseline : alignement par rapport aux lignes de base

  • bottom : aligenement le plus bas sur la ligne

  • sub : alignement en indice par rapport à la ligne normale

  • super : alignement en exposant par rapport à la ligne normale

  • text-top : alignement le plus haut possible

  • text-bottom : alignement le plus bas possible

  • top : alignement en haut de la ligne

white-space Définit l’aspect des tabulations et des espaces Toutes balises disposant de texte 3 valeurs :

  • normal : les espaces et tabulations sont interprétés normalement

  • pre : les espaces et tabulations sont affichés comme dans la balise <PRE>

  • nowrap : effet identique à pre, mais les lignes trop longues sont mises à la ligne

width Largeur d’un élement Toutes En pixels ou en pourcentages




Normalement, tout est dans ce tableau. Mais le Web (et donc l’HTML) évolue tellement vite!

Une balise particulière : <A>


La balise <A> est particulière dans le sens où celle-ci peut prendre plusieurs états : normal,
actif, survolé…

Il est donc tout a fait possible de définir plusieurs rêgles de style pour chacun de ces états.

Il existe 4 états :

  • LINK : lien

  • ACTIVE : lien actif

  • VISITED : lien visité

  • HOVER : lien survolé


Ainsi, pour un lien rouge normalement devenant bleu quand on le survole, on écrira :

<HTML>
<HEAD>
<STYLE type= »text/css »>
A{
text-decoration:none;
color:red;
}
A:HOVER{
color:blue;
}
</STYLE>
</HEAD>

<BODY>
<A href= »http://www.cybwarrior.com »>Cliquez ici pour aller sur Cyb Warrior</A>
</BODY>
</HTML>


Attention! Pour l’instant, Netscape ne reconnait pas HOVER!

Résultat :


Cliquez ici pour aller sur Cyb Warrior

Categories: HTML Tags:

HTML – Les couleurs

This entry is part 19 of 23 in the series HTML - Tutoriel
  1. Les triplets RGB
  2. Les constantes

l’HTML ne se limite pas (plus) seulement à afficher du texte sous une certaine structure : on
peut aussi le colorer, on l’a vu avec la balise <FONT>. Mais on peut aussi
changer la couleurs des liens, des arrières plans avec bgcolor

Bref, l’utilisation des couleurs est désormais classique. Mais il existe plusieurs façon de les
utiliser.


Les triplets RGB


Depuis quelques temps maintenant, les couleurs sont composées en informatique d’un mariage de trois
couleurs dites pures : le rouge (Red), le vert (Green)
et le bleu (Blue).

Chacune de ces composantes est codées sur 1 octet (8 bits), c’est à dire que la valeur doit être
comprise entre 0 et 255.

Pour des raisons pratiques, les composantes sont codées en base hexadécimale (voir La numération).
Le 255 donne FF.

Si on conbine les trois composantes, on arrive à un chiffre de 6 caractères, plus la dièse, sous
la forme suivante :

#RRGGBB

Quelques exemples pour mieux comprendre :

  • Pour le noir, les trois composantes sont à zéro :

    RR=0=00

    GG=0=00

    BB=0=00

    Ce qui nous donne un triplet RGB égual à #000000

  • Pour le blanc, c’est l’inverse du noir : les trois composantes sont à fond. Cela nous donne :

    RR=255=FF

    GG=255=FF

    BB=255=FF

    Triplet RGB égual à #FFFFFF

  • Pour avoir du rouge, on va mettre la composante rouge à fond et les autres à zéro :

    RR=255=FF

    GG=0=00

    BB=0=00

    Triplet RGB égual à #FF0000


Vu que chaque composante peut avoir 256 valeurs (le zéro compte), on se retrouve avec 256^3=16777216 couleurs.
Autant dire que l’on a le choix…


Les constantes


On a beau faire comme on veut, une valeur RGB n’est pas très parlante. À votre avis, quelle couleur
donne #87CEFA ? Et bien c’est un bleu ciel clair.

C’est pourquoi il existe les constantes de couleurs, bien plus simple a utiliser. Ainsi, la valeur
#87CEFA peut être représentée par lightskyblue.

Les deux exemples suivant sont donc equivalent :

<FONT color=#87CEFA>Ceci est un léger ciel bleu</FONT>
<FONT color=lightskyblue>Ceci est un léger ciel bleu</FONT>

Comme nous l’avons expliqué plus haut, il existe donc en théorie 1777216 constantes de couleurs!

Ne vous étonnez donc pas si le tableau ci dessous n’est pas complet :


Constantes des codes RGB
NOMS  Valeur RGB  Resultat  NOMS  Valeur RGB  Resultat 
ALICEBLUE #F0F8FF   ANTIQUEWHITE #FAEBD7  
AQUA #00FFFF   AQUAMARINE #7FFFD4  
AZURE #F0FFFF   BEIGE #F5F5DC  
BISQUE #FFE4C4   BLACK #000000  
BLANCHEDALMOND #FFEBCD   BLUE #0000FF  
BLUEVIOLET #8A2BE2   BROWN #A52A2A  
BURLYWOOD #DEB887   CADETBLUE #5F9EA0  
CHARTREUSE #7FFF00   CHOCOLATE #D2691E  
CORAL #FF7F50   CORNFLOWER #6495ED  
CORNSILK #FFF8DC   CRIMSON #DC143C  
CYAN #00FFFF   DARKBLUE #00008B  
DARKCYAN #008B8B   DARKGOLDENROD #B8860B  
DARKGRAY #A9A9A9   DARKGREEN #006400  
DARKKHAKI #BDB76B   DARKMAGENTA #8B008B  
DARKOLIVEGREEN #556B2F   DARKORANGE #FF8C00  
DARKORCHID #9932CC   DARKRED #8B0000  
DARKSALMON #E9967A   DARKSEAGREEN #8FBC8B  
DARKSLATEBLUE #483D8B   DARKSLATEGREY #2F4F4F  
DARKTURQUOISE #00CED1   DARKVIOLET #9400D3  
DEEPPINK #FF1493   DEEPSKYBLUE #00BFFF  
DIMGRAY #696969   DODGERBLUE #1E90FF  
FIREBRICK #B22222   FLORALWHITE #FFFAF0  
FORESTGREEN #228B22   FUCHIA #FF00FF  
GAINSBORO #DCDCDC   GHOSTWHITE #F8F8FF  
GOLD #FFD700   GOLDENROD #DAA520  
GRAY #808080   GREEN #008000  
GREENYELLOW #ADFF2F   HONEYDEW #F0FFF0  
HOTPINK #FF69B4   INDIANRED #CD5C5C  
INDIGO #4B0082   IVORY #FFFFF0  
KHAKI #F0E68C   LAVENDER #E6E6FA  
LAVENDERBLUSH #FFF0F5   LAWNGREEN #7CFC00  
LEMONCHIFFON #FFFACD   LIGHTBLUE #ADD8E6  
LIGHTCORAL #F08080   LIGHTCYAN #E0FFFF  
LIGHTGOLDENRODYELLOW #FAFAD2   LIGHTGREEN #90EE90  
LIGHTGREY #D3D3D3   LIGHTPINK #FFB6C1  
LIGHTSALMON #FFA07A   LIGHTSEAGREEN #20B2AA  
LIGHTSKYBLUE #87CEFA   LIGHTSLATEGRAY #778899  
LIGHTSTEELBLUE #B0C4DE   LIGHTYELLOW #FFFFE0  
LIME #00FF00   LIMEGREEN #32CD32  
LINEN #FAF0E6   MAGENTA #FF00FF  
MAROON #800000   MEDIUMAQUAMARINE #66CDAA  
MEDIUMBLUE #0000CD   MEDIUMORCHID #BA55D3  
MEDIUMPURPLE #9370DB   MEDIUMSEAGREEN #3CB371  
MEDIUMSLATEBLUE #7B68EE   MEDIUMSPRINGGREEN #00FA9A  
MEDIUMTURQUOISE #48D1CC   MEDIUMVIOLETRED #C71585  
MIDNIGHTBLUE #191970   MINTCREAM #F5FFFA  
MISTYROSE #FFE4E1   MOCCASIN #FFE4B5  
NAVAJOWHITE #FFDEAD   NAVY #000080  
OLDLACE #FDF5E6   OLIVE #808000  
OLIVEDRAB #6B8E23   ORANGE #FFA500  
ORANGERED #FF4500   ORCHID #DA70D6  
PALEGOLDENROD #EEE8AA   PALEGREEN #98FB98  
PALETURQUOISE #AFEEEE   PALEVIOLETRED #DB7093  
PAPAYAWHIP #FFEFD5   PEACHPUFF #FFDAB9  
PERU #CD853F   PINK #FFC0CB  
PLUM #DDA0DD   POWDERBLUE #B0E0E6  
PURPLE #800080   RED #FF0000  
ROSYBROWN #BC8F8F   ROYALBLUE #4169E1  
SADDLEBROWN #8B4513   SALMON #FA8072  
SANDYBROWN #F4A460   SEAGREEN #2E8B57  
SEASHELL #FFF5EE   SIENNA #A0522D  
SILVER #C0C0C0   SKYBLUE #87CEEB  
SLATEBLUE #6A5ACD   SLATEGRAY #708090  
SNOW #FFFAFA   SPRINGGREEN #00FF7F  
STEELBLUE #4682B4   TAN #D2B48C  
TEAL #008080   THISTLE #D8BFD8  
TOMATO #FF6347   TURQUOISE #40E0D0  
VIOLET #EE82EE   WHEAT #F5DEB3  
WHITE #FFFFFF   WHITESMOKE #F5F5F5  
YELLOW #FFFF00   YELLOWGREEN #9ACD32  
Categories: HTML Tags:

HTML – Les images réactives

This entry is part 20 of 23 in the series HTML - Tutoriel

Une image réactive permet d’associer des liens à des parties bien déterminées d’une image.

Une image réactive est composée de deux choses :


  • L’image proprement dite, incluse de manière classique avec la balise <IMG>

  • Un certains nombre de balises qui vont définir la découpe de l’image


Prenons par exemple la photo du « Pirate » ci-dessous (tirée du LIVRE D’OR DU CYCLISME 1998
- Jean-François Quénet – Editions SOLAR. Numérisée à l’aide du bôôô scanner que Papa Noël m’a
offert :-) :



Marco Pantani




Nous allons la découper en plusieurs parties :

  • La roue avant

  • Le guidon

  • La selle

  • Le pédalier


La découpe est consignée à l’intérieur de la balise du type conteneur <MAP>. En
Anglais, Map veut dire Carte.

En gros, c’est ce que l’on va faire, en spécifiant des zones à l’intérieur.

Les choses sont tout de mêmes bien faites, puisque zone ce dit Area en anglais, et c’est justement
la balise du même nom (<AREA> est du type marqueur) que l’on va utiliser.

La balise <AREA> posséde 6 attributs :


  • shape definit la forme de la zone. Il en exite 3 :

    • circle pour un cercle

    • rect pour un rectangle

    • polygon pour un polygone


  • href indique le lien à suivre quand la zone est clickée

  • coords définit les coordonnées de la zone, suivant la forme désignée par l’attribut
    shape :

























    Attribut coords suivant la forme utilisée
    Forme Coordonnées Exemple
    circle X,Y,R <AREA shape=circle area= »5,10,5″>
    <!– 5 pixels sur X, 10 pixels sur Y, 5 pixels de rayon –>
    rect X1,Y1,X2,Y2 <AREA shape=rect area= »5,10,20,25″>
    <!– Coin supérieur gauche: 5 pixels sur X, 10 pixels sur Y

    Coin inférieur droit: 20 pixels sur X, 25 pixels sur Y –>
    polygon X1,Y1,…,Xn-1,Yn-1,Xn,Yn <AREA shape=polygon area= »0,15,5,10,10,15,5,20″>
    <!– 1er coin: 0 pixels sur X et 15 pixels sur Y

    2ème coin: 5 pixels sur X et 10 pixels sur Y

    3ème coin: 10 pixels sur X et 15 pixels sur Y

    4ème coin: 5 pixels sur X et 20 pixels sur Y –>


  • target definit la cible où doit être ouvert le lien

  • alt permet d’ajouter une info-bulle, comme pour la balise <A>

  • nohref est booléan (il se suffit à lui même). Il est utilisée lorsqu’on ne
    veut pas associer de lien à une zone, pour des scripts par exemple


Pour définir les zones, on peut le faire manuellement, ou bien via un programme spécialisé.

Au final, voici ce que j’obtiens :

<MAP name= »Marco »>
<AREA shape=circle coords= »270,336,75″ nohref alt= »Est-ce des boyaux ou des pneus ? »>
<AREA shape=rect coords= »36,198,102,217″ nohref alt= »La magnifique selle du Pirate! »>
<AREA shape=circle coords= »137,350,23″ nohref alt= »Un braquet Enooorme de 53 dents! »>
<AREA shape=polygon nohref alt= »Les mains en bas du guidon : quel style ! »
coords= »201,221,234,193,256,196,269,189,284,228,241,231,242,262,199,270″>
</MAP>

Vous remarquez que je n’ai pas utiliser l’attribut href, mais l’attribut nohref
comme je n’utilise pas de liens mais juste les infos-bulles.

La balise <MAP> ne posséde qu’un seul et unique attribut : name. Il
sert à identifier la carte. Ici, on l’a appelée ‘Marco’.

Cette section <MAP> peut être placée n’importe où dans la section <BODY>.

L’image est incluse dans le document comme n’importe quelle image : avec la balise <IMG>.
Seul petite modification : il faut ajouter l’attribut usemap, avec le nom de la carte à
utiliser, précédé du caractère dièse (#), comme pour les liens dans la même page avec la
balise <A>.

Au final, notre document devient :

<MAP name= »Marco »>
<AREA shape=circle coords= »270,336,75″ nohref alt= »Est-ce des boyaux ou des pneus ? »>
<AREA shape=rect coords= »36,198,102,217″ nohref alt= »La magnifique selle du Pirate! »>
<AREA shape=circle coords= »137,350,23″ nohref alt= »Un braquet Enooorme de 53 dents! »>
<AREA shape=polygon nohref alt= »Les mains en bas du guidon : quel style ! »
coords= »201,221,234,193,256,196,269,189,284,228,241,231,242,262,199,270″>
</MAP>
<IMG src= »http://www.multimania.com/html/margo.jpg » usemap= »#Marco »>

Note : pour le résultat affiché, j’ai modifié le code est substitué l’attribut nohref
par l’attribut href pour bien voir les zones lorsque l’on clique dessus.

Voici le résultat :




Est-ce des boyaux ou des pneus ?
La magnifique selle du Pirate!
Un braquet Enooorme de 53 dents!
Les mains en bas du guidon : quel style !

Marco Pantani

Categories: HTML Tags: