Responsive Web Design Flashcards

1
Q

Pourquoi le responsive design est-il devenu indispensable de nos jours ?

A

Le responsive design est devenu indispensable en raison de la multiplicité des tailles d’écrans utilisés aujourd’hui (TV, PC, portable, tablette, smartphone, objets connectés). Il permet de développer une seule interface auto-adaptable plutôt que plusieurs sites web différents, ce qui représente un gain énorme en termes de maintenance et d’évolutivité. Cela assure une expérience utilisateur optimale quel que soit l’appareil utilisé.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Quelles sont les différentes unités CSS à privilégier pour un design responsive et pourquoi ?

A

Pour un design responsive, il faut privilégier les unités relatives plutôt que les unités absolues :
* Les unités relatives à l’élément parent (%, em) qui s’adaptent à la taille de leur conteneur
* Les unités relatives à l’élément racine (rem) qui sont liées au réglage de la taille de police de l’utilisateur
* Les unités relatives à l’écran (vw, vh, vmin, vmax) qui s’adaptent à la taille de la fenêtre du navigateur
Ces unités sont préférables aux unités absolues (px, pt, cm) car elles permettent une adaptation fluide aux différentes tailles d’écrans.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Expliquez l’utilité des fonctions CSS comme min(), max() et clamp() dans le contexte du responsive design.

A

Ces fonctions CSS facilitent le responsive design en permettant une adaptation fluide des éléments :
*
min() : permet d’obtenir la plus petite valeur parmi une liste, très utile pour définir des largeurs maximales (ex: width: min(50%, 500px))
* max() : permet d’obtenir la plus grande valeur parmi une liste, utile pour assurer des dimensions minimales
* clamp() : combine les deux approches en spécifiant une valeur idéale avec des bornes inférieure et supérieure (ex: font-size: clamp(1.5rem, 5vw, 3rem))
Ces fonctions permettent une adaptation plus fluide visuellement qu’avec des media queries traditionnelles.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Quelle est la différence entre CSS Grid et Flexbox, et quand utiliser l’un plutôt que l’autre ?

A
  • CSS Grid est conçu pour les mises en page bidimensionnelles (lignes et colonnes). Il permet de diviser un conteneur en régions et de positionner précisément des éléments, en autorisant même les chevauchements. Idéal pour les layouts complexes de page entière.
  • Flexbox est unidimensionnel, travaillant soit en ligne soit en colonne. Il excelle dans l’alignement des éléments, la gestion des espacements et la réorganisation d’éléments sur un seul axe.
    On utilise Grid pour les structures générales de page et Flexbox pour l’alignement d’éléments dans des composants plus petits ou lorsqu’on a besoin d’une grande flexibilité sur un seul axe.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Comment définiriez-vous et utiliseriez-vous les media queries pour rendre un site responsive ?

A

Les media queries sont des règles CSS qui permettent d’appliquer différents styles en fonction de caractéristiques comme la taille d’écran ou le type d’appareil. On peut les utiliser de deux façons :
Dans le HTML :

<link></link>

<link></link>

<link></link>

Ou directement dans le CSS :
css
@media screen and (min-width: 768px) and (max-width: 992px) {
.content {
width: 500px;
background-color: blue;
}}
On définit généralement des points de rupture (breakpoints) correspondant aux tailles d’écran standard : mobile (<768px), tablette (768-992px), desktop (>992px).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Quelle est la différence entre les approches “Mobile First” et “Desktop First” ? Laquelle recommanderiez-vous aujourd’hui ?

A

L’approche Desktop First consiste à concevoir d’abord pour les grands écrans, puis à adapter (souvent en dégradant) pour les écrans plus petits.
L’approche Mobile First consiste à concevoir d’abord pour les mobiles en se concentrant sur les contenus essentiels, puis à enrichir progressivement l’expérience pour les écrans plus grands.
Aujourd’hui, l’approche Mobile First est généralement recommandée car :
1. Le trafic mobile représente une part très importante des visites web
2. Elle force à se concentrer sur les contenus essentiels et l’expérience utilisateur
3. Elle favorise des sites plus légers et plus rapides
4. Elle s’aligne avec l’indexation mobile-first de Google

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Comment utiliseriez-vous les variables CSS (custom properties) dans le cadre d’un design responsive ?

A

Les variables CSS sont particulièrement utiles pour le responsive design car elles permettent de centraliser des valeurs qui peuvent changer selon la taille d’écran. Par exemple :
css
:root {
–main-font-size: 16px;
–spacing: 1rem;}
@media (min-width: 768px) {
:root {
–main-font-size: 18px;
–spacing: 1.5rem; }}
body {
font-size: var(–main-font-size);}
.container {
padding: var(–spacing);}
Cela permet de maintenir la cohérence visuelle tout en adaptant les valeurs selon les breakpoints, et facilite grandement la maintenance.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Quels sont les avantages d’utiliser un framework CSS comme Bootstrap ou Tailwind pour le responsive design ?

A

Les frameworks CSS facilitent le développement responsive par :
Des systèmes de grilles prêts à l’emploi qui s’adaptent à différentes tailles d’écran
Des composants UI pré-stylisés et testés sur différents appareils
Des classes utilitaires pour gérer facilement la responsivité
Des média queries pré-configurées avec des breakpoints standards
Une documentation complète et des bonnes pratiques établies
Une communauté active et des mises à jour régulières
Cela permet de gagner du temps de développement, d’assurer une compatibilité large et de bénéficier de l’expertise collective en matière de responsive design.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Comment testeriez-vous l’aspect responsive d’un site web pendant le développement et avant la mise en production ?

A

Pendant le développement :
Utiliser les outils de développement des navigateurs modernes (mode responsive/device emulation)
Utiliser des extensions comme le simulateur pour navigateurs Chromium
Tester avec des outils en ligne comme ami.responsivedesign.is pour visualiser le site sur plusieurs tailles d’écran simultanément
Avant la mise en production :
Effectuer des tests réels sur différents appareils (smartphones, tablettes, ordinateurs)
Tester sur différents navigateurs et systèmes d’exploitation
Vérifier l’expérience tactile sur les appareils concernés
Valider les performances (temps de chargement, réactivité)
S’assurer de l’accessibilité sur tous les formats d’écran

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Comment rendriez-vous les images responsive dans un site web moderne ?

A

Pour rendre les images responsive, plusieurs techniques peuvent être utilisées :
1. Utiliser les attributs modernes HTML :
<img></img>
2. Utiliser CSS : css
img { max-width: 100%; height: auto;}
3. Pour les images d’arrière-plan : css .hero {
background-image: url(‘small.jpg’);}
@media (min-width: 768px) {
.hero { background-image: url(‘medium.jpg’); }}
@media (min-width: 1200px) { .hero {
background-image: url(‘large.jpg’); }}
4. Utiliser la balise <picture> pour un contrôle plus précis : <picture></picture></picture>

<source></source>

<source></source>

<img></img> </picture>
Ces techniques permettent d’optimiser les performances en chargeant des images adaptées à la taille de l’écran.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly