HTMLCSS. HTML HTML est un langage Universel de description textuelle destinée à Internet. Le...

Preview:

Citation preview

HTMLHTML CSSCSS

HTML HTML

HTML est un langage Universel de description textuelle destinée à Internet.

Le créateur d'une page WEB définit la structure ou l'organisation d'une page en utilisant des balises.

CSSCSS

Le World Wide Web a introduit les feuilles de styles en cascade pour compléter la langage HTML.

Les CSS permettent de gérer l'apparence des documents.

Les feuilles indiquent aux balises HTML leur comportement ou style.

Les stylesLes styles

Un style rassemble tous les attributs que l'on peut appliquer à des types de textes similaires.

Attribut : taille,format

Textes similaires : titres, en-têtes, pied de page

Les styles donnent un nom commun à des groupes d'attributs

Les styles de WordLes styles de Word

Applique le style : Titre 1

Avantage du CSSAvantage du CSS

Une CSS est constituée de code séparé qui améliore les possibilités du HTML en permettant de redéfinir la façon dont fonctionnent les balises HTML existantes.

L'avantage par rapport à la création de nouvelles balises HTML repose sur le fait qu'en modifiant la définition d'une seule règle CSS centralisée, l'apparence de toutes les balises contrôlées par cette règles est modifiée.

Style dans la pageStyle dans la page

<style type="text/css">

body

{

margin: 10px 0 ;

padding: 0 ;

text-align: center ;

font: 0.8em "Trebuchet MS", helvetica, sans-serif ;

background: indianred ;

}

</style>

Du HTML au CSS : PrincipeDu HTML au CSS : Principe

<HTML> <HEAD> <TITLE>Le CSS</TITLE>

</HEAD> <BODY> <H1>Introduction</H1>

... </BODY></HTML>

@charset "iso-8859-1";

H1 { color : red ;}

.HTML

Fichier.CSS

Introduction

Le Résultat

Sélecteur simple

<link rel="stylesheet" type= "text/css" href= "fichier.css"> <link rel="stylesheet" type= "text/css" href= "fichier.css">

Les règlesLes règles

Une règle définit l'apparence et le comportement du code HTML.

Un règle indique à une balise HTML comment afficher son contenu.

La création de règles générique permet également de les appliquer à plusieurs balises.

SyntaxesSyntaxes

Sélecteur HTML

valeur;}propriété:Selecteur {

attribut à définir

définit la propriété

Règle

SyntaxesSyntaxes

Les propriétés identifient ce qu'il faut définir. Elles caractérisent l'apparence du contenu.

Les valeurs sont assignées à une propriété pour définir sa nature

Vari Faux

Nombre

Pourcentage

Types de règlesTypes de règles

Les sélecteurs sont des caractères alphanumériques qu'identifie la règle.

Sélecteur HTML

La classe

L'ID

Sélecteur HTMLSélecteur HTML

La partie textuelle d'une balise HTML est appelé sélecteur

H1 est le sélecteur de <H1>

Le sélecteur est exploité pour redéfinir le style de l'affichage de la balise.

Syntaxe générale utilisée Syntaxe générale utilisée

Les styles d'une balise

Sélecteur HTML

p { font-size: 12px;}

Propriété Valeur

Définition

Propriétés héritées d'un parentPropriétés héritées d'un parent

Toutes balises ont un parent : une balise conteneur qui les encadre.

Les balises HTML s'approprient généralement les styles des balises imbriquées dans leur parent : c'est l'héritage de style

<body><b color:red>

<i> Denis

</i></b>

</body>

Propriétés héritées d'un parentPropriétés héritées d'un parent

Toutes balises ont un parent : une balise conteneur qui les encadre.

Les balises HTML s'approprient généralement les styles des balises imbriquées dans leur parent : c'est l'héritage de style

<body><b color:red>

<i> Denis

</i></b>

</body>

Propriétés héritées d'un parentPropriétés héritées d'un parent

Toutes balises ont un parent : une balise conteneur qui les encadre.

Les balises HTML s'approprient généralement les styles des balises imbriquées dans leur parent : c'est l'héritage de style

<body><b color:red>

<i> Denis </i>

</b></body>

Propriétés héritées d'un parentPropriétés héritées d'un parent

Toutes balises ont un parent : une balise conteneur qui les encadre.

Les balises HTML s'approprient généralement les styles des balises imbriquées dans leur parent : c'est l'héritage de style

<body><b color:red>

<i> Denis </i>

</b></body>

Propriétés héritées d'un parentPropriétés héritées d'un parent

Toutes balises ont un parent : une balise conteneur qui les encadre.

Les balises HTML s'approprient généralement les styles des balises imbriquées dans leur parent : c'est l'héritage de style

<body><b color:red>

<i> Denis

</i></b>

</body>

timestimes + bold +red

times + bold +red+italics

DenisDenis

Denis

Définition de règles identiques pour plusieurs basilesDéfinition de règles identiques pour plusieurs basiles

Liste de sélecteurs séparés par les virgules

h1,h2,h3,p { font-size: 12px;}

Propriété Valeur

Définition

p { margin-top: 25px;}

La classeLa classe

Une classe est un style indépendant que l'on peut appliquer à toute balises HTML.

Chaque classe se voit attribuée un nom unique spécifié ensuite dans la ou les balises HTML qui l'utilise par le biais de l'attribut style.

Les règles de classe peuvent être définies entre les balises <style> </style>

dans l'en-tête ou dans un fichier CSS en ligne*.

Elle permettent aux fonctions Javascript d'identifier un objet unique, elles sont très utilisées en DHTML.

Les id sont comme les classes définit dans l'entête ou exportées d'un fichier CSS externe ou liés au document HTML.

Syntaxe générale d'une classe CSSSyntaxe générale d'une classe CSS

Le sélecteur de classe permet de définir un style applicable à toutes balises HTML.

Une sous class possède un nom unique précédé d’un point.

Syntaxe générale d'une classe CSSSyntaxe générale d'une classe CSS

Les styles d'une balise

.copy { font-size: 12px;}

Sélecteur de classe

Propriété

Définition

Valeur

utilisation <p class="copy"> … </p>utilisation <p class="copy"> … </p>

Exemple : sous class indépendanteExemple : sous class indépendante

.nav {color:red;}

<ul class="nav"> <li>nom</li><li>prenom</li><li>age</li>

</ul>

<ul class="nav"> <li>nom</li><li>prenom</li><li>age</li>

</ul>

<ul><li class="nav">nom</li><li class="nav">prenom</li><li class="nav">age</li>

</ul>

<ul><li class="nav">nom</li><li class="nav">prenom</li><li class="nav">age</li>

</ul>

Factorisationimportante

héritage sous class indépendantehéritage sous class indépendante

.nav li{color:red;}

<ul class="nav"> <li>nom</li><li>prenom</li><li>age</li>

</ul>

<ul class="nav"> <li>nom</li><li>prenom</li><li>age</li>

</ul>

Cela va affecter tous les éléments li dans la classe .nav

li sera enfant de la classe .nav

EcritureEcriture

.nav li{color:red;}

<ul><div class="nav">

<li>nom</li><li>prenom</li><li>age</li>

</div></ul>

<ul><div class="nav">

<li>nom</li><li>prenom</li><li>age</li>

</div></ul>

suitesuite

.nav ul ul{color:red;}<div class="nav">

<ul><li>nom

<ul> <li>dupont</li> <li>martin</li></ul>

</li><li>prenom

<ul> <li>denis</li> <li>gerard</li></ul>

</li></ul>

</div>

<div class="nav"><ul>

<li>nom<ul> <li>dupont</li> <li>martin</li></ul>

</li><li>prenom

<ul> <li>denis</li> <li>gerard</li></ul>

</li></ul>

</div>

Sous class dépendante Sous class dépendante

li.nav{color:red;}

<ul><li class="nav">nom</li><li class="nav">prenom</li><li class="nav">age</li>

</ul>

<ul><li class="nav">nom</li><li class="nav">prenom</li><li class="nav">age</li>

</ul>

Sous class dépendanteSous class dépendante

<div class="nav">…</div>

<BODY> <ul class="niveau1">

<li>Exemple 1</li><li>Liste simple</li>

</ul> <div class="italic_rouge">

Exemple 2 </div></BODY>

BilanBilan

.italic_rouge { color:red; font-style:italic;

}

Sous Class indépendante

.CSS

Sous Class dépendante

ul.niveau1 {list-style-type:square;color:blue;

}

.CSS

.HTMLLe Résultat

Exemple 1

Liste simple

Du HTML au CSS : SélecteursDu HTML au CSS : Sélecteurs

Le Résultat

Exemple 1

Liste simple

Exemple 2

<BODY> <ul class="niveau1">

<li>Exemple 1</li><li>Liste simple</li>

</ul> <div class="italic_rouge">

Exemple 2 </div></BODY>

<BODY> <ul class="niveau1">

<li>Exemple 1</li><li>Liste simple</li>

</ul> <div class="italic_rouge">

Exemple 2 </div></BODY>

.HTML

.italic_rouge { color:red; font-style:italic;

}

Sous Class indépendante

.CSS

Sous Class dépendante

ul.niveau1 {list-style-type:square;color:blue;

}

.CSS

IDID

Très utile pour spécifier des règles qui ne s'appliquent qu'à un élément avec un ID unique donné défini par l'attribut id en HTML.

Pas plus d'un élément ne doit avoir un ID donné.

utilisé avec Javascript pour repérer et traiter un élément particulier.

Syntaxe générale d'une IDSyntaxe générale d'une ID

des styles UNIQUE indépendants de toute balise HTML

utilisation <p id="area"> … </p>

Sélecteur d'ID

#area { font-size: 12px;}

Propriété Valeur

Définition

Du HTML au CSS : SélecteursDu HTML au CSS : Sélecteurs

<BODY>

<div id="bloc_unique">Bloc A</div>

</BODY>

<BODY>

<div id="bloc_unique">Bloc A</div>

</BODY>

.HTML

Le sélecteur id

#bloc_unique { background-color:black; color:white ;

}

.CSS

Le Résultat

Bloc A

L’élément devient unique, il est utilisé une seule fois dans la page.

LectureLecture

<li class="submenu">

li a un attribut class de valeur submenu

div#nav ul.niv1 li.submenu:hover ul.niv2 {}

la liste de la classe niv2

qui descend d'un élémentde liste survolé

qui descend d'une liste niv1

qui descend d'un div id nav

Positionnement et Flux en CSSPositionnement et Flux en CSS

Vue d’ensemble des méthodes de positionnement

Le fluxLe flux

On oubliera les tableaux !

Les modes de positionnementLes modes de positionnement

Flux : ordre d’affichage des éléments

4 méthodes de positionnementnormal float relatif absolu

Quels sont les différences ?

La fenêtreLa fenêtre

C'est dans la fenêtre du navigateur que se déroule l'action des pages Web.

Elle est l'ultime élément de conception : le parent de tous les éléments.

Avec CSS, on définit la fenêtre par le biais de la balise <body>

Origine (0,0)

hauteur du navigateur

hauteur réelle

Définition du type de positionnementDéfinition du type de positionnement

Lorsque vous définissez les attributs d'une balise vous désignez ce qui se trouve dans le conteneur de la balise en tant qu'élément unique de la fenêtre.

Il est possible d'attribuer différents types de positionnement

relatif : c'est le comportement par défaut, l'élément se positionne après ce qui le précède et avant ce qui le suit.

absolu : le positionnement crée un élément indépendant, un agent libre, séparé du reste du document, que l'on peut compléter par le code HTML de notre choix. L'élément qui l'héberge représente son origine.

on peut déplacer sa position depuis l'emplacement naturel dans la fenêtre par le biais des propriétés top et left.

Le Flux normalLe Flux normal

Bloc ABloc B

<BODY><div class="conteneur"> <div class="normalA"> Bloc A </div> <div class="normalB"> Bloc B </div></div></BODY>

.normalA {width:150px;height:150px;background-color:red;border:1px solid black;

}

.normalB {width:250px ;height:100px ;background-color:green;border:1px solid black;

}

Bloc conteneur

Le Flux normal : en blocLe Flux normal : en bloc

Bloc conteneur

Flux normal en bloc : Succession verticale

Flux normal en bloc : Succession verticale

Bloc A

Bloc B

<BODY><div class="conteneur"> <div class="normalA"> Bloc A </div> <div class="normalB"> Bloc B </div></div></BODY>

.normalA {width:150px;height:150px;background-color:red;border:1px solid black;

}

.normalB {width:250px ;height:100px ;background-color:green;border:1px solid black;

}

Le Flux normal : en ligneLe Flux normal : en ligne

Bloc conteneur

Bloc CBloc CBloc DBloc D

<BODY><div class="conteneur"> <span class="normalC"> Bloc C </span> <span class="normalD"> Bloc D </span></div></BODY>

.normalC {width:150px;height:150px;background-color:red;border:1px solid black;

}

.normalD {width:250px ;height:100px ;background-color:green;border:1px solid black;

}

Le Flux normal : en ligneLe Flux normal : en ligne

Bloc conteneur

Bloc CBloc CBloc DBloc D

<BODY><div class="conteneur"> <span class="normalC"> Bloc C </span> <span class="normalD"> Bloc D </span></div></BODY>

.normalC {width:150px;height:150px;background-color:red;border:1px solid black;

}

.normalD {width:250px ;height:100px ;background-color:green;border:1px solid black;

}

Flux normal en-ligne :

Succession horizontale

Flux normal en-ligne :

Succession horizontale

Le Flux relatifLe Flux relatif

<BODY><div class="conteneur"> <div class="bloc_marge"> Bloc A </div> css css css css...

</div></BODY>

.conteneur {width:800px;border:1px solid black;

}

.bloc_marge {position:relative;width:300px;top:20px;left:30px;border:1px solid black;}

Bloc conteneur

Css css css css css css css css Css css css css css css css css Css css css css css css css css Css css css css css css css css Css css css css css css css css Css css css css css css css css Css css css css css css css css Css css css css css css css css Css css css css css css css css Css css css css css css css css Css css css css css css css css Css css css css css css css css css css

Left – 30px

Top – 20px

Bloc A

rappel : margerappel : marge

<BODY><div class="conteneur"> <div class="bloc_relatif"> Bloc A </div> css css css css...

</div></BODY>

.conteneur {width:800px;border:1px solid black;

}

.bloc_relatif {width:300px;margin-top:20px;margin-left:30px;border:1px solid black;}

Bloc conteneur

Bloc A

Css css css css css css css css Css css css css css css css css Css css css css css css css css Css css css css css css css css Css css css css css css css css Css css css css css css css css Css css css css css css css css Css css css css css css css css Css css css css css css css css Css css css css css css css css Css css css css css css css css Css css css css css css css css css css

Left – 30px

Top – 20px

Le Flux flottantLe Flux flottant

Bloc conteneur

<BODY><div class="conteneur"> <div class="flotteA"> Boîte A </div> <p> Texte...blabla ... </p></div></BODY>

.flotteA {float:left;width:500px;background-color:yellow;border:1px solid black;

}

Boîte A – float:leftBoîte A – float:left

Le Flux flottantLe Flux flottant

Bloc conteneur

<BODY><div class="conteneur"> <div class="flotteA"> Boîte A </div> <p> Texte...texte ... </p></div></BODY>

.flotteA {float:left;width:650px;background-color:yellow;border:1px solid black;

}

Boîte A – float:leftBoîte A – float:left Texte…texte…text…texte … texte…texte…texte…texte…texte…texte…texte…texte…texte…texte…texte

texte…texte…texte…texte…texte…texte…texte…text…texte…texte

texte…texte…texte…texte…texte…texte…texte…text…texte…texte

texte…texte…texte…texte…texte…texte…texte…text…texte…texte

texte…texte…texte…texte…texte…texte…texte…text…texte…texte

texte…texte…texte…texte…texte…texte…texte…text…texte…texte

Le Flux flottant/relatifLe Flux flottant/relatif

Bloc conteneur

<BODY><div class="conteneur"> <div class="flotteA"> Boîte A </div> <p> Texte...texte ... </p></div></BODY>

.flotteA {

position : relatif

top:100px;float:left;width:650px;background-color:yellow;border:1px solid black;

}

Boîte A – float:leftBoîte A – float:left Texte…texte…text…texte … texte…texte…texte…texte…texte…texte…texte…texte…texte…texte…texte

texte…texte…texte…texte…texte…texte…texte…text…texte…texte

texte…texte…texte…texte…texte…texte…texte…text…texte…texte

texte…texte…texte…texte…texte…texte…texte…text…texte…texte

texte…texte…texte…texte…texte…texte…texte…text…texte…texte

texte…texte…texte…texte…texte…texte…texte…text…texte…texte

Le Flux flottantLe Flux flottant

Bloc conteneur - 800px de large

<BODY><div class="conteneur"> <div class="flotteA"> Boîte A </div> <div class="flotteB"> Boîte B </div> </div></BODY>

.conteneur {width:800px;border:1px solid black;

}

.flotteA {float:left;width:650px;background-color:yellow;border:1px solid black;

}

.flotteB {float:left;width:100px;background-color:blue;border:1px solid black;

} Boîte A – 650pxBoîte A – 650px

Le Flux flottantLe Flux flottant

Bloc conteneur - 800px de large

<BODY><div class="conteneur"> <div class="flotteA"> Boîte A </div> <div class="flotteB"> Boîte B </div> </div></BODY>

.conteneur {width:800px;border:1px solid black;

}

.flotteA {float:left;width:650px;background-color:yellow;border:1px solid black;

}

.flotteB {float:left;width:100px;background-color:blue;border:1px solid black;

}

Boîte A – 650pxBoîte A – 650px

Boîte B – 100pxBoîte B – 100px

Le Flux flottantLe Flux flottant

Bloc conteneur - 800px de large

<BODY><div class="conteneur"> <div class="flotteA"> Boîte A </div> <div class="flotteB"> Boîte B </div> </div></BODY>

.conteneur {width:800px;border:1px solid black;

}

.flotteA {float:left;width:650px;background-color:yellow;border:1px solid black;

}

.flotteB {float:left;width:600px;background-color:blue;border:1px solid black;

}

Boîte A – 650pxBoîte A – 650px

Boîte B – 600pxBoîte B – 600px

Le Flux flottantLe Flux flottant

Bloc conteneur - 800px de large

<BODY><div class="conteneur"> <div class="flotteA"> Boîte A </div> <div class="flotteB"> Boîte B </div> </div></BODY>

.conteneur {width:800px;border:1px solid black;

}

.flotteA {float:left;width:650px;background-color:yellow;border:1px solid black;

}

.flotteB {float:left;width:600px;background-color:blue;border:1px solid black;

}

Boîte A – 650pxBoîte A – 650px

Boîte B – 600pxBoîte B – 600px

Le Flux absoluLe Flux absolu

<BODY><div class="conteneur"> <div class="bloc_absolu"> Bloc A </div>

css css css css css...

</div></BODY>

.conteneur {width:800px;border:1px solid black;

}

.bloc_absolu {position:absolute;width:300px;margin-top:20px;margin-left:30px;border:1px solid black;}

Bloc conteneur

Bloc A

Css css css css css css css css Css css css css css css css css Css css css css css css css css css css css css Css css css css css css css css Css css css css css css css css Css css css css css css css css Css css css css css css css css Css css css css css css css css Css css css css css css css css

Left – 30px

Top – 20px

Le Flux absoluLe Flux absolu

<BODY><div class="conteneur"> css css css css css...

<div class="bloc_absolu"> Bloc A </div>

ddddddd…..dddd

</div></BODY>

.conteneur {width:800px;border:1px solid black;

}

.bloc_absolu {position:absolute;width:300px;margin-top:20px;margin-left:30px;border:1px solid black;}

Création d'un siteCréation d'un site

Exemple completExemple complet

Bloc conteneur

Bloc Header – flux normal

Exemple completExemple complet

Header_gauche - float left Header_droit – float left

Exemple completExemple complet

Bloc Menu Header – flux normal

Header_gauche - float left Header_droit – float left

Exemple completExemple complet

Bloc Menu Header – flux normal

Header_gauche - float left Header_droit – float left

BlocMenu

-Float left

Exemple completExemple complet

Bloc Menu Header – flux normal

Header_gauche - float left Header_droit – float left

BlocMenu

-Float left

Bloc contenu – float right

Les contrôle de visibilité et affichage d'un élémentLes contrôle de visibilité et affichage d'un élément

La propriété display est utile pour définir si un élément comprend des retours chariot avant et après, s'il se trouve dans d'autres éléments, s'il fait partie d'une liste.

voir menu.ppt

Les contrôles de visibilité d'un élément sont très utiles avec JavaScript.

Conclusion et OuvertureConclusion et Ouverture

Liberté dans la mise en page des sites web.

La présentation est beaucoup simple.

Nombreux problèmes de compatibilité.

ExemplesExemples

<style type="text/css">

.abs{

position: absolute;

top:25px;left:25px;

color:blue; border:blue solid 1px;

}

.rel{

position:relative;

top:25px; left:25px;

color:red;

border:red solid 2px;

}

</style>

<body>Sous le pont mirabeau<div class="abs"> coule </div>la Seine</body>

Sous le pont Mirabeau coule

la Seine

absabs

<body>Sous le pont mirabeau <div class="rel"> coule </div> la Seine</body>

.rel{ position:relative; top:0px; left:0px; color:red; border:red solid 2px;

Avec le décalageAvec le décalage

Sous le pont Mirabeau

la Seinecoule

Avec le décalageAvec le décalage

<body>Sous le pont mirabeau<span class="rel"> coule </span>la Seine</body>

Sous le pont Mirabeau la Seinecoule

<body>Sous le pont mirabeau<div class="rel"> coule </div><div class="rel"> la Seine </div>et nos amours</body>

<body>Sous le pont mirabeau<div class="abs"> coule </div><div class="abs"> la Seine </div>et nos amours</body>

idem avec span

<body>Sous le pont mirabeau<span class="rel"> coule </span><span class="rel"> la Seine </span>et nos amours

<body>Sous le pont mirabeau<div class="rel">

coule<div class="rel"> la Seine </div>

</div>et nos amours

</body> <body>Sous le pont mirabeau<div class="rel"> coule<div class="rel"> la Seine </div></div>et nos amours</body>

Sous le pont Mirabeau coule

la Seine

et nos amours

<body>Sous le pont mirabeau<div class="abs"> coule <div class="abs"> la Seine </div></div>et nos amours</body>

<body>Sous le pont mirabeau<div class="abs"> coule

<div class="abs"> la Seine

</div>

</div>et nos amours</body>

1

1

</head><body>Sous le pont mirabeau<div class="rel"> coule<span class="rel"> la Seine </span></div>et nos amours</body>

<body>Sous le pont mirabeau<div class="rel"> coule<span class="rel"> la Seine <span class="rel"> et nos amours</span></span></div></body>

<style type="text/css">.rel{ position:relative; float:left; top:25px; left:25px; color:red; border:red solid 2px; </style>

<body>Sous le pont mirabeau<div class="rel"> coule<div class="rel"> la Seine</div></div><div class="rel"> et nos amours</div></body>

Sous le pont Mirabeau coule

la Seine

et nos amours

.rel{ position:relative; float:left; top:25px; left:25px; color:red; border:red solid 2px; }

.rel1{ position:relative; float:left; top:0px; left:0px; color:red; border:blue solid 2px; }</style>

<body>Sous le pont mirabeau<div class="rel"> coule<div class="rel"> la Seine</div></div><div class="rel1"> et nos amours</div></body>

Recommended