6306966f47358HTML CSS
6306966f47358HTML CSS
1. Une Maquette
Une maquette vous permet de réaliser une description très précise de la future
interface graphique de votre site. Il définit notamment la mise en page des contenus et
l'organisation de l'habillage visuel des principales pages : positionnement de votre logo,
des menus de navigation.
Lunacy est un logiciel de traitement d’image très utilisé par les graphistes pour créer des images ou
des maquettes.
2
1. HTML
HTML signifie « HyperText Markup Language » qu'on peut traduire par «
langage de balises pour l'hypertexte ». Il est utilisé afin de créer et de représenter le
contenu d'une page web et sa structure.
Les pages HTML sont remplies de ce qu'on appelle des balises. Celles-ci sont invisibles
à l'écran pour vos visiteurs, mais elles permettent à l'ordinateur de comprendre ce qu'il
doit afficher. Les balises se repèrent facilement. Elles sont entourées de "chevrons",
c'est-à-dire des symboles < et >, comme ceci : <balise>
On distingue deux types de balises : les balises en paires et les balises orphelines :
Ce sont des balises qui servent le plus souvent à insérer un élément à un endroit précis
(par exemple une image):
<img/>
2. Les attributs
Les attributs sont un peu les options des balises. Ils viennent les compléter pour donner
des informations supplémentaires. L'attribut se place après le nom de la balise ouvrante
et a le plus souvent une valeur, comme ceci :
3
<balise attribut="valeur">
Exemple :
<citation auteur="Voltaire">
</citation>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Titre</title>
</head>
<body>
</body>
</html>
Par exemple, la balise <html> est la première que l'on ouvre et c'est aussi la dernière
que l'on ferme. Les balises doivent être fermées dans le sens inverse de leur
ouverture.
Exemple :
<html><body></body></html> : correct.
4
Une balise qui est ouverte à l'intérieur d'une autre doit aussi être fermée à
l'intérieur.
<html><body></html></body> : incorrect, les balises s'entremêlent.
En se référant à la structure d’une page HTML 5, Nous allons expliquer chaque ligne :
a. DOCTYPE
La toute première ligne s'appelle le doctype. Elle est indispensable car c'est elle qui
indique qu'il s'agit bien d'une page web HTML.
b. La Balise html
<html>
</html>
C'est la balise principale du code. Elle englobe tout le contenu de votre page. Nous
remarquerons que la balise fermante </html> se trouve tout à la fin du code.
d. L’encodage (Charset)
Il ne suffit pas de dire que votre fichier est en UTF-8. Il faut aussi que votre fichier soit
bien enregistré en UTF-8. C'est heureusement le cas désormais par défaut dans la
plupart des éditeurs de texte.
C'est le titre de votre page, probablement l'élément le plus important ! Toute page doit
avoir un titre qui décrit ce qu'elle contient.
Le titre ne s'affiche pas dans votre page mais en haut de celle-ci (souvent dans l'onglet
du navigateur).
5
Il faut savoir que le titre apparaît aussi dans les résultats de recherche, comme sur
Google.
f. Les commentaires
Un commentaire en HTML est un texte qui sert simplement de mémo. Il n'est pas
affiché, il n'est pas lu par l'ordinateur, cela ne change rien à l'affichage de la page.
Un commentaire est une balise HTML avec une forme bien spéciale :
a. Les paragraphes
Lorsqu'on écrit du texte dans une page web, on le fait à l'intérieur de paragraphes.
Le langage HTML propose justement la balise <p> pour délimiter les paragraphes.
<body>
<p>Bonjour et bienvenue sur mon site !</p>
</body>
6
</html>
b. Le saut à la ligne
En HTML, si vous appuyez sur la touche Entrée , cela ne crée pas une nouvelle
ligne comme nous en avons l'habitude.
Tout le texte s'affiche sur la même ligne alors qu'on est bien allé à la ligne dans le code
donc taper frénétiquement sur la touche Entrée dans l'éditeur de texte ne sert donc
strictement à rien.
En fait, si vous voulez écrire un deuxième paragraphe, il vous suffit d'utiliser une
deuxième balise <p> .
Il existe une balise à la ligne <br/>, c’est une balise orpheline qui sert juste à indiquer
qu'on doit aller à la ligne : <br/> .
Vous devez obligatoirement la mettre à l'intérieur d'un paragraphe.
<body>
<p>Bonjour et bienvenue sur mon site ! <br />
Visitez les autres pages.
<p>
</body>
c. Les Titres
<h1> </h1> : signifie « titre très important ». En général, on s'en sert pour
afficher le titre de la page au début de celle-ci ;
<h2> </h2> : signifie « titre important » ;
<h3> </h3> : pareil, c'est un titre un peu moins important (on peut dire un «
sous-titre », si vous voulez) ;
<h4> </h4> : titre encore moins important ;
<h5> </h5> : titre pas important ;
<h6> </h6> : titre vraiment, mais alors là vraiment pas important du tout.
Attention : A ne pas confondre avec la balise <title>. La balise <title> affiche le titre
de la page dans la barre de titre du navigateur, les titres <h1> et compagnie, eux,
servent à créer des titres qui seront affichés dans la page web.
7
d. La mise en valeur
Au sein de nos paragraphes, certains mots sont parfois plus importants que d'autres
et que nous aimerons les faire ressortir. HTML vous propose différents moyens de
mettre en valeur le texte de votre page.
e. Les listes
Les listes nous permettent souvent de mieux structurer notre texte et d'ordonner nos
informations.
Nous allons découvrir ici deux types de listes :
Fraises
Framboises
Cerises
C'est un système qui nous permet de créer une liste d'éléments sans notion d'ordre
(il n'y a pas de « premier » ni de « dernier »).
Créer une liste non ordonnée est très simple. Il suffit d'utiliser la balise <ul> que l'on
referme un peu plus loin avec </ul> .
<ul></ul>
On va écrire chacun des éléments de la liste entre deux balises <li></li> . Chacune
de ces balises doit se trouver entre <ul> et </ul>.
<ul>
<li>Fraises</li>
<li>Framboises</li>
<li>Cerises</li>
</ul>
8
Liste ordonnée
Une liste ordonnée fonctionne de la même façon, seule une balise change : il faut
remplacer <ul></ul> par <ol></ol>.
<h1>Ma journée</h1>
<ol>
<li>Je me lève.</li>
<li>Je mange et je bois.</li>
<li>Je retourne me coucher.</li>
</ol>
Comme nous le savons, un site web est composé de plusieurs pages. Dans cette
partie, nous allons justement apprendre à créer des liens entre nos pages.
Pour faire un lien, la balise que nous allons utiliser est très simple à retenir : <a> . Il
faut cependant lui ajouter un attribut, href , pour indiquer vers quelle page le lien doit
conduire.
9
<a href="https://google.com">Google</a>
Plaçons ce lien au sein d'un paragraphe. Voici donc comment reproduire l'exemple :
Si on veut faire un lien vers un autre site, il suffit donc de copier son adresse (on parle d'URL)
en http:// .
Pour commencer, nous allons créer deux fichiers correspondant à deux pages HTML
différentes.
si les deux fichiers sont situés dans le même dossier, il suffit d'écrire comme cible du
lien le nom du fichier vers lequel on veut amener.
Si votre fichier cible est placé dans un dossier qui se trouve « plus haut » dans
l'arborescence, il faut écrire deux points, comme ceci :
Une ancre est une sorte de point de repère que vous pouvez mettre dans vos pages
HTML lorsqu'elles sont très longues.
En effet, il peut alors être utile de faire un lien amenant plus bas dans la même page,
pour que le visiteur puisse sauter directement à la partie qui l'intéresse.
Pour créer une ancre, il suffit de rajouter l'attribut id à une balise qui va alors servir
de repère. Ce peut être n'importe quelle balise.
Exemple :
<h2 id="mon_ancre">Titre</h2>
Exemple :
un lien qui ouvre une autre page et qui amène directement à une ancre située plus bas
sur cette page.
Il suffit de taper le nom de la page, suivi d'un dièse ( # ), suivi du nom de l'ancre.
Exemple :
<a href="contact.html#mon_ancre">
Vous pouvez utiliser l'attribut title qui affiche une bulle d'aide lorsqu'on pointe sur le
lien. Cet attribut est facultatif.
La bulle d'aide peut être utile pour informer le visiteur avant même qu'il n'ait cliqué sur
le lien.
12
Il est possible de « forcer » l'ouverture d'un lien dans une nouvelle fenêtre. Pour cela,
on rajoutera target="_blank" à la balise <a> :
<p>Bonjour. Souhaitez-vous visiter <a href="https://google.com"
target="_blank">Google</a> ?</p>
Il suffit donc de faire commencer le lien par mailto: et d'écrire l'adresse e-mail où
on peut vous contacter.
il faut procéder exactement comme si vous faisiez un lien vers une page web, mais en
indiquant cette fois le nom du fichier à télécharger.
Plaçons simplement ce fichier dans le même dossier que votre page web (ou dans un
sous-dossier) et faites un lien vers ce fichier :
Le navigateur, voyant qu'il ne s'agit pas d'une page web à afficher, va lancer la
procédure de téléchargement lorsqu'on cliquera sur le lien.
Il existe différents formats d'images que l'on peut utiliser sur des sites web, et on ne
doit pas les choisir au hasard. En effet, les images sont parfois volumineuses à
télécharger, ce qui ralentit le temps de chargement de la page (beaucoup plus que le
texte !).
Les autres formats non cités ici, comme le format BITMAP ( *.bmp ) sont à bannir car
bien souvent ils ne sont pas compressés, donc trop gros.
Ils ne sont pas du tout adaptés au Web. On peut en mettre sur son site, mais le
chargement sera vraiment extrêmement long.
Choisissez bien le nom de votre image
Il est préférable d'enregistrer nos fichiers avec des noms en minuscules, sans espace
ni accent ; par exemple : mon_image.png.
La balise qui permet l’insertion d’une image dans un page web, c’est la balise <img/>
C'est une balise orpheline (comme <br/> ). Cela veut dire qu'on n'a pas besoin de
l'écrire en deux exemplaires, comme la plupart des autres balises que nous avons
vues jusqu'ici.
<p>
Voici une photo:<br /> <img src="images/fleur.jpg"/>
</p>
Si vous souhaitez aller plus loin dans l’insertion de votre image sur votre site web vous
allez pouvoir compléter votre balise <img/> avec d’autres attributs autres que src.
Alt : L’attribut alt ou texte alternatif est un attribut très important sur une image
car celui-ci va offrir 2 possibilités importante à votre image :
Title : Cet attribut va vous permettre d’ajouter à votre image une bulle d’aide
qui apparaîtra au survol de celle-ci pour apporter une information
complémentaire à la compréhension de l’image.
Height et width : Ces deux attributs vont vous permettre de définir une
hauteur (height) et une largeur (width) de base à votre image, ce qui est
aussi possible en CSS. (en px, %, em, rem,…)
<p>
Voici une photo :<br />
<img src="images/fleur.jpg" alt="Photo de montagne" title="C'est une rose"
heigth="20px" width="20px" />
</p>
Miniature cliquable
Si votre image est très grosse, il est conseillé d'en afficher la miniature sur votre site.
Ajoutez ensuite un lien sur cette miniature pour que vos visiteurs puissent afficher
l'image en taille originale.
<p>
Vous souhaitez voir l'image dans sa taille d'origine ? Cliquez dessus !<br />
<a href="img/montagne.jpg"><img src="img/montagne_mini.jpg" alt="Photo de
montagne" title="Cliquez pour agrandir" /></a>
</p>
15
Les Figures
Les figures peuvent être de différents types :
images ;
codes source ;
citations ;
etc.
En HTML5, on dispose de la balise <figure> . Voici comment on pourrait l'utiliser :
<figure>
<img src="images/blocnotes.png" alt="Bloc-Notes" />
</figure>
Une figure est le plus souvent accompagnée d'une légende. Pour ajouter une légende,
utilisez la balise <figcaption> à l'intérieur de la balise <figure> , comme ceci :
<figure>
<img src="images/blocnotes.png" alt="Bloc-Notes" />
<figcaption>Le logiciel Bloc-Notes</figcaption>
</figure>
La balise <figure> a un rôle avant tout sémantique. Cela veut dire qu'elle indique
à l'ordinateur que l'image a du sens et qu'elle est importante pour la bonne
compréhension du texte.
Cela peut permettre à un programme de récupérer toutes les figures du texte et de les
référencer dans une table des figures.
Une figure peut très bien comporter plusieurs images. Voici un cas où cela se justifie :
<figure>
<img src="images/internetexplorer.png" alt="Logo Internet Explorer" />
<img src="images/firefox.png" alt="Logo Mozilla Firefox" />
<img src="images/chrome.png" alt="Logo Google Chrome" />
<figcaption>Logos des différents navigateurs</figcaption>
</figure>
16
De la même façon que HTML, CSS n'est pas vraiment un langage de programmation.
C'est un langage de feuille de style, c'est-à-dire qu'il permet d'appliquer des styles sur
différents éléments sélectionnés dans un document HTML.
Sur une page web, les éléments sont positionnés grâce à l’HTML bien sûr, mais
également avec du code CSS. Les sélecteurs et les attributs CSS permettent de mettre
en page et d’ajouter du style au code HTML : couleurs, marges, espacements, tailles
de police, … Le CSS peut également être utilisé pour créer des animations et des
effets de transition. Il est aussi essentiel pour créer un site internet responsive.
Vous avez le choix car on peut écrire du code en langage CSS à trois endroits
différents :
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<link rel="stylesheet" href="style.css" />
<title>Mon CSS</title>
17
</head>
<body>
<h1>Mon super site</h1>
<p>Bonjour et bienvenue sur mon site !</p>
<p>Pour le moment, mon site est un peu <em>vide</em>. Patientez encore un peu !</p>
</body>
</html>
Il existe une autre méthode pour utiliser du CSS dans ses fichiers HTML : cela consiste
à insérer le code CSS directement dans une balise <style> à l'intérieur de l'en-
tête <head>.
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<style>
p
{
color: blue;
}
</style>
<title>Mon CSS</title>
</head>
<body>
<h1>Mon site</h1>
</body>
</html>
Une méthode, à manipuler avec précaution : vous pouvez ajouter un attribut style à
n'importe quelle balise. Vous insérerez votre code CSS directement dans cet attribut :
18
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Premiers tests du CSS</title>
</head>
<body>
<p style="color: blue;">Bonjour et bienvenue sur mon site !</p>
<p>Pour le moment, mon site est un peu <em>vide</em>. Patientez encore un peu !</p>
</body>
</html>
La méthode la plus recommandé est de placer son code css dans un fichier spécial
ayant l'extension .css.
Si vous placez le code CSS directement dans le fichier HTML, il faudra copier ce code
dans tous les fichiers HTML de votre site.
Si vous travaillez avec un fichier CSS externe, vous n'aurez besoin d'écrire cette
instruction qu'une seule fois pour tout votre site, comme le montre la figure suivante.
19
p
{
color: blue;
}
Dans un code CSS comme celui-ci, on trouve trois éléments différents :
des noms de balises : on écrit les noms des balises dont on veut modifier
l'apparence. Par exemple, si je veux modifier l'apparence de tous les
paragraphes <p> , je dois écrire p ;
des propriétés CSS : les « effets de style » de la page sont rangés dans des
propriétés.
Il y a par exemple la propriété color qui permet d'indiquer la couleur du
texte, font-size qui permet d'indiquer la taille du texte, etc.
les valeurs : pour chaque propriété CSS, on doit indiquer une valeur. Par
exemple, pour la propriété color , il faut indiquer le nom de la couleur.
Pour font-size , il faut indiquer quelle taille on veut, etc.
balise1
{
propriete1: valeur1;
propriete2: valeur2;
}
balise2
{
propriete1: valeur1;
propriete2: valeur2;
}
20
h1, em
{
color: blue;
}
il existe un moyen en CSS d'aller plus vite si les deux balises doivent avoir la même
présentation. Il suffit de combiner la déclaration en séparant les noms des balises par une
virgule.
Comment faire pour que certains paragraphes seulement soient écrits d'une manière différente ?
Pour résoudre le problème, on peut utiliser ces attributs spéciaux qui fonctionnent sur
toutes les balises :
l'attribut class ;
l'attribut id .
les attributs class et id sont quasiment identiques.
Code : Html
.nom_class
{
}
#nom_id
{
}
21
Il arrivera parfois que vous ayez besoin d'appliquer une class (ou un id ) à certains mots qui,
à l'origine, ne sont pas entourés par des balises.
Si, par exemple, je veux modifier uniquement « bienvenue » dans le paragraphe suivant :
En fait, on a inventé deux balises dites universelles, qui n'ont aucune signification particulière :
<span> </span> : c'est une balise de type inline, c'est-à-dire une balise que l'on
place au sein d'un paragraphe de texte pour sélectionner certains mots uniquement.
Cette balise s'utilise donc au milieu d'un paragraphe et c'est celle dont nous allons nous servir pour
colorer « bienvenue » ;
*{
}
Sélectionne toutes les balises sans exception. On l'appelle le sélecteur universel.
h3 em
{
}
Sélectionne toutes les balises <em> situées à l'intérieur d'une balise <h3> . Notez qu'il n'y a
pas de virgule entre les deux noms de balises.
h3 + p
{
}
Sélectionne la première balise <p> située après un titre <h3> .
a[title]
{
}
Sélectionne tous les liens <a> qui possèdent un attribut title .
22
C'est la méthode recommandée, car le texte s'adapte alors plus facilement aux
préférences de tous les visiteurs.
xx-small : minuscule ;
x-small : très petit ;
small : petit ;
medium : moyen ;
large : grand ;
x-large : Très grand ;
xx-large : Gigantesque.
p{
font-size: small;
}
h1{
font-size: large;
}
b. La police
p{
font-family: Impact, "Arial Black", Arial, Verdana, sans-serif;
}
23
c. L’alignement
d. Mise en valeur
Mettre en Gras
La propriété CSS pour mettre en gras est font-weight et prend les valeurs suivantes
- underline : souligné.
- line-through : barré.
- overline : ligne au-dessus.
- blink : clignotant.
- none : normal (par défaut).
e. Les flottants
Le CSS nous permet de faire flotter un élément autour du texte. On dit aussi qu'on fait
un « habillage ».
h1 {
color: #000000 ; //couleur noire
}
b. Couleur de Fond
Elle s'utilise de la même manière que la propriété color, c'est-à-dire que vous pouvez
taper le nom d'une couleur, l'écrire en notation hexadécimale ou encore utiliser la
méthode RGB.
body {
background-color: black; /* Le fond de la page sera noir */
color: white; /* Le texte de la page sera blanc */
}
c. Image de Fond
body {
background-image: url("../image/neige.png");
}
25
Depuis CSS3, il est possible de donner plusieurs images de fond à un élément. Pour
cela, il suffit de séparer les déclarations par une virgule :
body {
background: url("soleil.png") fixed no-repeat top right,
url("neige.png") fixed;
}
2.10. Opacité, bordures et ombres
a. L’Opacité
b. Les bordures
Bordures Standard
h1 {
border: 3px blue solid;
}
26
Bordures Arrondies
p{
border-radius: 10px ;
}
c. Les ombres
Les propriétés box-shadow, text-shadow prennent quatre valeurs dans l'ordre suivant :
Le CSS nous permet aussi de modifier l'apparence des éléments de façon dynamique,
c'est-à-dire que des éléments peuvent changer de forme une fois que la page a été
chargée. Nous allons faire appel à une fonctionnalité puissante du CSS : les pseudo-
formats.
Changer l'apparence :
a:hover
{
text-decoration: none;
color: red;
font-style: italic;
}
:hover signifie « survoler ». a:hover peut donc se traduire par : « Quand la
souris est sur le lien ».
À partir de là, c'est à vous de définir l'apparence que doivent avoir les liens lorsqu'on
pointe dessus.
b. lors du clic ;
Le lien gardera cette apparence très peu de temps : en fait, le changement intervient
lorsque le bouton de la souris est enfoncé. En clair, ce n'est pas forcément toujours
bien visible.
Il est possible d'appliquer un style à un lien vers une page qui a déjà été vue. Par
défaut, le navigateur colore le lien en un violet.
En pratique, sur les liens consultés, on ne peut pas changer beaucoup de choses à
part la couleur.
Il faut savoir que tous les blocs possèdent des marges. Il existe deux types de
marges :
En CSS, on peut modifier la taille des marges avec les deux propriétés suivantes :
a. Centrer un bloc
Pour centrer, il faut respecter les règles suivantes :
Lorsqu'on commence à définir des dimensions précises pour nos blocs, il arrive qu'ils
deviennent trop petits pour le texte qu'ils contiennent.
Si on veut que le texte ne dépasse pas des limites du paragraphe, il va falloir utiliser
la propriété overflow.
• visible (par défaut) : si le texte dépasse les limites de taille, il reste visible et
sort volontairement du bloc ;
• scroll : là encore, le texte sera coupé s'il dépasse les limites. Sauf que cette
fois, le navigateur mettra en place des barres de défilement pour qu'on puisse
lire l'ensemble du texte.
Si vous devez placer un mot très long dans un bloc, qui ne tient pas dans la
largeur, word-wrap permet de forcer la césure des très longs mots (généralement des
adresses un peu longues).
p
{
word-wrap: break-word;
}
Avec le code ci-dessus, la césure sera forcée dès que le texte risque de dépasser.