Le CSS, permet de contrôler l'apparence des éléments présents sur une
page web : couleurs, polices, tailles, positions et bien plus encore.
En utilisant le CSS, on peut créer des designs uniques et améliorer
l'expérience des visiteurs sur un site en rendant son apparence plus
esthétique et fonctionnelle.
Exemple simple :
<p>Ce paragraphe va devenir orange !</p>
/* CSS */
p {
color: orange;
}
👁 Résultat avec CSS :
Ce paragraphe va devenir orange !
⚠ Attention : ce code CSS rendra tous les paragraphes de
couleurs orange ! Si nous voulons juste un ou plusieurs mots en
orange, nous devons utiliser la balise span et lui ajouter une
class !
Exemple :
<p>Le dernier mot va devenir<span class="orange">orange</span> !</p>
/* CSS */
.orange {
color: orange;
}
👁 HTML avec CSS :
Le dernier mot va devenir orange !
2. Sélecteurs CSS de type :
Les sélecteurs de type permettent de cibler tous les éléments
d'un type donné dans une page HTML.
Par exemple:
le sélecteur h1 cible tous les éléments de titre
<h1>, le sélecteur p cible tous les éléments de
paragraphe <p>, le sélecteur a cible tous les éléments de
liens <a>.
Exemple :
<h1> Titres en jaune !
<p> Paragraphes en orange !
<a> Liens en
jaune-vert !
Les sélecteurs de class permettent de cibler des éléments
spécifiques en fonction de leur attribut class=" ". Cela permet
d'appliquer des styles spécifiques à des éléments précis, même s'ils
sont du même type.
Exemple :
Nous utilisons le même type <p> pour créer deux titres,
deux paragraphes et deux liens de couleurs différentes avec l'attribut
class !
Les sélecteurs d'ID permettent de cibler un élément HTML
unique et spécifique en utilisant son attribut id=" ". Un ID
doit être unique sur une page, contrairement aux classes qui peuvent
être utilisées sur plusieurs éléments.
Exemple :
<p id="paragraphe-special">Ce paragraphe a un style unique.</p>
Le modèle de boîte est un concept fondamental en CSS. Chaque
élément HTML est considéré comme une boîte rectangulaire, et le Box
Model décrit comment les marges, les bordures, le remplissage (padding)
et le contenu de cette boîte sont gérés.
`content` : Le contenu réel de l'élément.
`padding` : L'espace entre le contenu et la bordure.
`border` : La ligne qui encadre le padding et le contenu.
Flexbox est un module CSS puissant qui permet de concevoir des
mises en page unidimensionnelles complexes, de distribuer l'espace et
d'aligner les éléments dans un conteneur. C'est un outil essentiel
pour le responsive design, et Bootstrap l'utilise énormément.
Pour activer Flexbox, on utilise display: flex; sur le conteneur parent.
Le design responsif permet à votre site web de s'adapter à la
taille de l'écran de l'utilisateur (ordinateur, tablette, mobile). Les
Media Queries sont la clé pour y parvenir en CSS. Elles vous
permettent d'appliquer des styles spécifiques en fonction de la largeur
de la fenêtre du navigateur.
Exemple : changer la couleur du texte sur mobile
<p class="texte-responsive">Ce texte changera de couleur sur les petits écrans.</p>
Ce paragraphe a une police et une taille spécifiques.
9. Positionnement CSS :
Comprendre comment positionner les éléments est crucial pour la mise en page.
`static` (par défaut) : Les éléments sont positionnés selon le flux normal du document.
`relative` : L'élément est positionné par rapport à sa position normale. Vous pouvez utiliser `top`, `right`, `bottom`, `left`.
`absolute` : L'élément est positionné par rapport à son parent positionné le plus proche (non `static`). Il est retiré du flux normal.
`fixed` : L'élément est positionné par rapport à la fenêtre du navigateur et reste à la même position même lors du défilement (comme votre navigation ou les boutons retour).
`sticky` : L'élément est positionné selon le flux normal jusqu'à ce qu'il atteigne un certain seuil de défilement, puis il devient "fixed".
Les transitions CSS permettent de créer des animations douces
entre deux états d'une propriété CSS. Elles rendent l'interface plus
dynamique et agréable.
`transition-property` : La propriété CSS à animer (ex: `color`, `background-color`, `transform`).
`transition-duration` : La durée de la transition (ex: `0.3s`, `500ms`).
`transition-timing-function` : La courbe de vitesse de l'animation (ex: `ease`, `linear`, `ease-in-out`).
`transition-delay` : Le délai avant le début de la transition.
Puisque vous utilisez Bootstrap 5, il est pertinent de montrer comment
tirer parti de ses fonctionnalités avancées ou le personnaliser.
Classes utilitaires de Bootstrap : Expliquez comment utiliser les classes pré-définies de Bootstrap pour le spacing (`m-`, `p-`), les couleurs (`text-primary`, `bg-dark`), le responsive text (`fs-1` à `fs-6`).
Personnalisation via les variables CSS de Bootstrap : Montrez comment on peut modifier les variables CSS de Bootstrap pour changer les couleurs, les tailles de police, etc., sans avoir à réécrire tout le CSS.
Composants Bootstrap et surcharges CSS : Donnez des exemples de composants Bootstrap (cartes, modales, navbars) et montrez comment appliquer des styles CSS personnalisés pour les adapter à un design spécifique tout en conservant leur fonctionnalité.
Exemple de surcharge de variable CSS Bootstrap :
/* CSS (à placer dans votre fichier CSS principal)
*/:root {
--bs-primary: black; /* Nouvelle couleur primaire */
--bs-body-bg: yellow; /* Nouvelle couleur de fond */
}
/* Utilisation d'une classe utilitaire */
.my-custom-text {
font-style: italic;}
<p class="text-primary mt-3 my-custom-text"> Ce texte utilise la nouvelle couleur primaire de Bootstrap et mon style personnalisé.</p>
👁 Résultat :
Ce texte utilise la nouvelle couleur primaire de Bootstrap et mon style personnalisé.
Allez plus loin que ces simples démonstrations CSS !
↪ Les exemples ici ne sont que des aperçus de ce que le CSS peut
offrir !
✔ Pour approfondir et maîtriser chaque aspect du CSS, plongez dans les
tutos vidéos gratuits ou contactez l'agence web pour des cours privés
(payants).
✔ Fini les solutions impersonnelles comme WordPress ou les documents
fades sous Word : place à des sites vitrines professionnels et des mises en page
HTML/CSS bien plus élégantes !