Css
Debutant
Quiz-Css-Debutant
Selecteurs-Css
Box-Model
Display
Position
Couleurs-Css
Unites-Css
Entretien-Css
Qcm-Css-Debutant
Apprendre-Css
Front-End
Css3
📝
Entretien CSS Débutant — Sélecteurs et Box Model
20 questions CSS niveau débutant : sélecteurs, box model, propriétés de base, display, position, couleurs et unités. Idéal pour préparer un premier entretien développeur web.
Banque de révision : les 30 questions corrigées
Voici l'intégralité des 30 questions de « Entretien CSS Débutant — Sélecteurs et Box Model », chacune avec sa bonne réponse et son explication. Le quiz interactif ci-dessus en tire une sélection aléatoire à chaque tentative — utilisez cette liste complète pour réviser.
Explication :
La propriété
color définit la couleur du texte. background-color définit la couleur d'arrière-plan. text-color et font-color n'existent pas en CSS standard.
Explication :
Le box model (modèle de boîte) décrit comment chaque élément HTML est représenté comme une boîte rectangulaire composée de 4 couches : le contenu, le padding (espacement interne), la border (bordure) et la margin (marge externe).
Explique la différence entre
box-sizing: content-box (défaut) et box-sizing: border-box pour montrer ta maîtrise du sujet.
Explication :
div p est le sélecteur descendant — il cible tous les <p> imbriqués dans un <div>, à n'importe quelle profondeur. div > p cible uniquement les enfants directs. div + p cible le <p> immédiatement après le <div>. div, p cible les deux éléments séparément.
Explication :
visibility: hidden masque l'élément mais conserve son espace. display: none retire l'élément du flux et libère son espace. opacity: 0 rend l'élément invisible mais interactif. display: hidden n'existe pas.
Explication :
L'unité
em est relative à la taille de police (font-size) de l'élément parent. Par exemple, si le parent a font-size: 16px, alors 2em = 32px. L'unité rem est similaire mais relative à l'élément racine <html>.
Explication :
margin est l'espace extérieur à la bordure — il crée un espace entre les éléments voisins. padding est l'espace intérieur à la bordure — il crée un espace entre le contenu et la bordure de l'élément. Le fond coloré (background) couvre le padding mais PAS les marges.
Mentionne le "margin collapse" : les marges verticales entre deux blocs adjacents fusionnent (la plus grande l'emporte), ce qui est un comportement souvent surprenant.
Explication :
Le sélecteur d'ID utilise le symbole
# suivi du nom de l'ID. Le sélecteur de classe utilise le point (.). Un ID doit être unique sur la page et a une spécificité plus élevée qu'une classe.
Explication :
font-weight contrôle le poids (épaisseur) du texte. Les valeurs courantes sont normal (400), bold (700), ou des valeurs numériques de 100 à 900. font-style contrôle l'italique. font-size contrôle la taille.
Explication :
Les commentaires CSS s'écrivent entre
/* et */. Ils peuvent s'étendre sur plusieurs lignes. La syntaxe // est utilisée en JavaScript, <!-- --> en HTML, et # en Python ou SCSS (pas CSS pur).
Explication :
La cascade est l'algorithme qui résout les conflits entre règles CSS. Elle tient compte de l'origine (navigateur, auteur, utilisateur), de la spécificité (poids du sélecteur) et de l'ordre d'apparition. En cas d'égalité de spécificité, la dernière règle déclarée l'emporte.
Distingue la cascade (résolution des conflits) de l'héritage (transmission de certaines propriétés du parent aux enfants). Ce sont deux mécanismes distincts.
Explication :
Avec
position: relative, l'élément reste dans le flux normal ET peut être décalé avec top, right, bottom, left par rapport à sa position naturelle. L'espace qu'il occupait est conservé. Il devient aussi un ancêtre positionné pour ses enfants en absolute.
Explication :
border-radius arrondit les coins d'un élément. On peut définir toutes les coins en une valeur (border-radius: 8px), chaque coin séparément (border-radius: 5px 10px 15px 20px), ou créer un cercle parfait avec border-radius: 50%.
Explication :
width: 100% signifie que l'élément prend 100% de la largeur de son parent. Si le parent fait 800px, l'élément fera 800px. Pour la largeur du viewport, on utilise 100vw.
Explication :
Un élément block (
<div>, <p>) occupe toute la largeur disponible et force un saut de ligne avant et après. Un élément inline (<span>, <a>) s'intègre dans le flux de texte, prend uniquement la largeur de son contenu et ne crée pas de saut de ligne.
Mentionne aussi
inline-block qui combine les deux : s'intègre dans le flux comme inline mais accepte largeur/hauteur comme un block.
Explication :
Les couleurs hexadécimales en CSS commencent par
# suivi de 6 chiffres hexadécimaux (0-9, A-F) représentant Rouge, Vert, Bleu (RR-GG-BB). On peut aussi utiliser la notation courte à 3 chiffres (#F53 = #FF5533).
Explication :
font-family spécifie la famille de polices à utiliser. On peut lister plusieurs polices comme valeurs de secours : font-family: Arial, Helvetica, sans-serif;. Si la première police n'est pas disponible, le navigateur essaie la suivante.
Explication :
box-shadow ajoute une ombre à un élément. La syntaxe est : box-shadow: offset-x offset-y blur-radius spread-radius color. Exemple : box-shadow: 2px 4px 8px rgba(0,0,0,0.2);. Pour l'ombre du texte, on utilise text-shadow.
Explication :
Pour centrer un élément block horizontalement, utilise
margin: 0 auto (ou margin-left: auto; margin-right: auto) avec une largeur définie (width ou max-width). Le navigateur répartit automatiquement l'espace restant de chaque côté. text-align: center centre uniquement le contenu inline (texte, images inline).
Précise qu'avec Flexbox, on utilise
justify-content: center sur le parent, ce qui est bien plus flexible.
Explication :
overflow: hidden coupe (clip) tout contenu qui dépasse les bordures de l'élément. Les autres valeurs sont : visible (défaut, le contenu dépasse), scroll (barre de défilement toujours visible), auto (barre de défilement seulement si nécessaire).
Explication :
L'ID
#hero a la spécificité la plus élevée (0,1,0,0 = 100 points). Les classes et pseudo-classes valent 10 points chacune, les éléments 1 point. p.intro = 0,0,1,1 (11pts), .card .title = 0,0,2,0 (20pts), div p span = 0,0,0,3 (3pts).
Explication :
line-height définit la hauteur de ligne (interlignage). Une valeur unitless comme line-height: 1.5 est recommandée — elle est relative à la taille de police courante. letter-spacing espace les lettres et word-spacing espace les mots.
Explication :
Avec
position: absolute, l'élément est retiré du flux (il ne prend plus de place dans la mise en page) et se positionne par rapport au premier ancêtre ayant une position autre que static. Si aucun ancêtre positionné n'existe, il se positionne par rapport au <body>.
Pour utiliser
position: absolute sur un enfant et le positionner à l'intérieur du parent, ajoute position: relative sur le parent.
Explication :
opacity définit la transparence d'un élément. Sa valeur va de 0 (totalement transparent) à 1 (totalement opaque). Elle affecte l'élément ET tous ses enfants. Pour ne rendre transparent que la couleur de fond, utilise rgba(r,g,b,a) sur la propriété background-color.
Explication :
text-transform: uppercase affiche tout le texte en MAJUSCULES, sans modifier le contenu HTML. Les autres valeurs sont lowercase (minuscules), capitalize (première lettre de chaque mot en majuscule) et none (valeur par défaut).
Explication :
padding crée un espacement interne entre le contenu d'un élément et sa bordure. margin crée un espacement externe entre les éléments. gap est utilisé dans les contextes Flexbox et Grid pour l'espacement entre les éléments enfants.
Explication :
La balise
<link rel="stylesheet" href="style.css"> placée dans le <head> HTML lie une feuille de style externe. L'attribut rel="stylesheet" indique la relation, href spécifie le chemin du fichier CSS.
Explication :
L'héritage permet à certaines propriétés CSS définies sur un parent de se transmettre aux descendants. Les propriétés qui s'héritent sont principalement liées au texte :
color, font-family, font-size, line-height. Les propriétés de boîte (margin, padding, border) ne s'héritent pas. On peut forcer l'héritage avec inherit.
Utilise
inherit comme valeur pour forcer l'héritage, initial pour revenir à la valeur par défaut du navigateur, et unset pour réinitialiser intelligemment.
Explication :
z-index contrôle l'ordre d'empilement des éléments positionnés (non-static). Un z-index plus élevé place l'élément au-dessus. z-index: 1 est au-dessus de z-index: 0. Les valeurs négatives placent l'élément derrière. z-index n'a d'effet que sur les éléments positionnés.
Explication :
background-size: cover redimensionne l'image pour couvrir entièrement l'élément en conservant les proportions. Si nécessaire, l'image est rognée. contain adapte l'image pour être entièrement visible (sans rogner, mais peut laisser des espaces vides).
Explication :
CSS signifie Cascading Style Sheets (Feuilles de Style en Cascade). C'est un langage de présentation utilisé pour décrire l'apparence des documents HTML. Le mot "Cascading" fait référence à l'algorithme de cascade qui détermine quelle règle s'applique en cas de conflit.
Le "Cascading" dans CSS est fondamental — explique comment la cascade, la spécificité et l'héritage interagissent pour déterminer le style final appliqué à chaque élément.