name: inverse layout: true class: center, middle, inverse --- # Developpement Web - CM 2 ## Inès de Courchelle  --- layout: false # Le CSS ## Définition - **C**ascade **S**tyle **S**heet - Contient les informations de mise en forme de la page - Un langage de description ## HTML vs CSS
--- # Côté Client ## Le petit schéma
--- # Utilisation ## Quel extension ? CSS ## Comment je compile ? Je ne compile pas ## Comment j'interprête ? Je n'interprête pas
--- # Le lien ## Comment lier le css et le html ? Dans le head du HTML ```html
Ma page
Le contenu ``` ## Puis je lier plusieurs css à un html ? OUI --- # Les Couleurs ## Illustration .pull-left[ #### Pour un paragraphe ```css p{ color: blue; } ``` #### Pour les li ```css li{ color:red; } ``` #### Pour les titres ```css h1{ background-color:green; } ```
clic pour l'exemple
] .pull-right[ #### Le html ```html
Ma page
C'est beau !
Il va être tout bleu !
Puce 1
Puce 2
Puce 3
``` ] --- # Illustration ## Le CSS (complet) ```css p{ color:blue; } li{ color:red; } h1{ background-color: green; } ```
--- # Les couleurs ## A quoi ça ressemble ? - À rien - Il y en a des prédéfinies : blue, red, green, black, white, ... - Un code hexadécimal (base 16) - Noir .arrow[] #000000 - Blanc .arrow[] #FFFFFF - Bleu .arrow[] #0000FF - Pervenche .arrow[] #CCCCFF - Rouge bismarck .arrow[] #A5260A ## Où trouver les codes couleurs ? -
Ici
-
Ou là
-
Sur Internet quoi !
--- # Illustration ## C'est la même ```css p{ color:#CCCCFF } ``` .underR[Attention] il ne faut surtout pas oublier le **#**
--- # Diviser la page ## A quoi ça sert ? - Appliquer des styles sur des structures différentes - Mettre des éléments en haut, des éléments en bas, à gauche ...
## Comment ? - Avec des div .arrow[] Du HTML - Avec des classes .arrow[] Du CSS --- # La base ## DIV - Le div ou la div (c'est comme tu veux) - Une balise HTML qui englobe tout un contenu ## Structurer une page
--- # Les div en HTML ## Illustration .pull-left[ ##### Le code ```html
Ma Zone
Zone 1
Zone 2
Zone 3
Zone 4
``` ] .pull-right[ ##### Aperçu (sans css)
Le fichier Exemple
] --- # Les div en CSS ## Comment les faire apparaître ? - en jouant avec des classes - en définissant des tailles, des poids, des styles - en utilisant des descriptions adaptatives au contenu ## Quels mots clés CSS? ```css width: height: margin: margin: padding: border: float: ``` --- # Les classes ## Définition - Attribut d'une balise html - Cible un ou plusieurs éléments html pour lui appliquer un style ## Utilisation .pull-left[ ```html
ines
dc
yeah
``` ] .pull-right[ ```css .top { color:green; } .bottom { color:blue; } ``` ]
Le fichier Exemple
--- # Les unités ## Les unités absolues - Les pixels (px) - Les pouces (in) - Les centimètres (cm) - Les millimètres (mm) - Les picas (pc) - Les points (pt) ## Les unités relatives - Em : elle est proportionnelle à la taille de la police de l’élément parent ou du document. Par défaut, 1em = 16 px si aucune taille de police n’est définie. - Rem : l’unité rem fait toujours référence à la taille de la police de l’élément racine. En d’autres termes, elle dépend du font-size définit par défaut. - Ex : très rarement utilisée, cette unité est relative à la hauteur de la police actuelle en minuscule. - Ch : cette unité est elle aussi peu utilisée, elle est relative à la largeur du caractère “0”. --- # Les classes ! ## La pratique ```html
Ma Zone
Zone 1
Zone 2
Zone 3
Zone 4
``` --- # Les classes ## Le CSS .pull-left[ ```css .Z1{ width:48%; height: 10em; background-color: #d5e8d4; } .Z2{ width:49%; height: 10em; background-color: #d5e8d4; } ``` ] .pull-right[ ```css .Z3{ width:99%; height: 24em; background-color: #d5e8d4; } .Z4{ width:99%; background-color: #d5e8d4; height: 12em; } ``` ]
## Si on test -
leContenu.html
-
leStyle.css
--- # Le margin ## Pourquoi tout est collé ? .pull-left[ ##### Le problème
] .pull-right[ ##### La solution
] --- # Illustration ## Exemple .pull-left[ ##### Dans le css ```css .Z1 { margin-top:10em; margin-bottom:10em; margin-left:10em; margin-right:10em; } ``` ] .pull-right[ ##### On est faignant ```css .Z1{ margin: 10em 10em 10em 10em; \* ordre => top right bottom left */ } ``` ] --- # Illustration ## Résultat
## Si on test -
zonnage3.html
-
leStyle3.css
--- # Le code ## Illustration .pull-left[ ##### CSS ```css .Z1{ width:48%; height: 10em; margin: 2em 2em 2em 2em; background-color: #d5e8d4; } .Z2{ width:49%; margin: 2em 2em 2em 2em; height: 10em; background-color: #d5e8d4; } .Z3{ width:99%; margin: 2em 2em 2em 2em; height: 24em; background-color: #d5e8d4; } .Z4{ width:99%; margin: 2em 2em 2em 2em; background-color: #d5e8d4; height: 12em; } ``` ] .pull-right[ ##### HTML ```html
Ma Zone
Zone 1
Zone 2
Zone 3
Zone 4
``` ] --- # Le float ## Pourquoi la zone 1 et 2 ne sont pas sur la même ligne ?
--- # le float ## Solution .pull-left[ ##### Le code ```css .Z1 { float:left; width:48%; height: 10em; margin: 2em 2em 2em 2em; background-color: #d5e8d4; } ``` ] .pull-right[ ##### Le résultat
]
## Si on test -
zonnage4.html
-
leStyle4.css
--- # C'est toujours moche ## La solution .pull-left[
] .pull-right[ ```css .Z2{ width:48%; height: 10em; margin: 2em 2em 2em 66em; background-color: #d5e8d4; } ``` ]
## Si on test -
zonnage5.html
-
leStyle5.css
--- # C'est encore moche ## Mais pourquoi ?
--- # La solution ## Le clear - Effacer les éléments .under[float] après la zone 2 - Repartir sur de bonne base pour la zone 3 et 4 ## Comment ? .pull-left[ ##### On garde la même ```css .Z1{ width:48%; height: 10em; float:left; background-color: #d5e8d4; } .Z2{ margin: 2em 2em 2em 66em; width:49%; height: 10em; background-color: #d5e8d4; } ``` ] .pull-right[ ##### Puis on rajoute ```css .Z2::after{ clear: both; } ``` ##### Si on test -
zonnage6.html
-
leStyle6.css
] --- # It's over ## Boom
## Next .under[on passe à la suite ] --- # Les IDs ## Définition
- C'est un identifiant que l'on place en attribut dans un html - On y fait appel dans le css via # ## Utilisation .pull-left[ ```css #kikou{ color:red; } #theJake{ text-align:center; } ``` ] .pull-right[ ```html
Coucou
coolcoolcool
``` ] --- # Les classes VS les IDs ## L'association - On peut mettre les deux - Les ids sont utilisable "en théorie" qu'une seul fois. - Les ids sont unique - Les classes peuvent être utilisées plusieurs fois ## Quelques liens sur la question -
Developper mozilla
-
W3school 1
-
W3school 2
--- # Padding VS Margin ## Ça c'est facile :)
## Illustration
--- # Inspecter ## A quoi ça sert ? - Débuger - Tester des idées en direct - Trouver des codes couleurs - Chercher des codes interessants *- Pirater la nasa* -... ## Comment ? - Faire clic droit - Inspecter élement .underR[Je vais vous faire la démo en LIVE]
--- # Bilan ## Technique - Séparer la mise en forme de la structure - Bien structurer son code - Regarder la doc ! ## Personnel - Avoir un minimum de jugeote - Aiguiser sa curiosité - Être GAVÉ calme - Ne pas oublier d'enregistrer ces fichiers - Faire les bons liens entre les fichiers - Ne pas oublier d'inspecter les éléments ## Travailler - Pas de secret - Mettre la main à la pâte - Pas de procrastination --- # Bonus ## À regarder en dehors des cours