Le but de ce guide est de vous présenter un ensemble de fonctionnalités innovantes et puissantes récemment introduites dans CSS. Bien que cet article fournisse un aperçu de leur syntaxe et des cas d'utilisation pratiques, il y a beaucoup plus de profondeur à explorer avec chaque fonctionnalité. Utilisez-le comme point de départ pour approfondir ces avancées de pointe.
1. Requêtes de conteneur (taille)
Que sont les requêtes de conteneur basées sur la taille ?
Les requêtes de conteneur basées sur la taille vous permettent d'appliquer des styles aux éléments enfants en fonction des dimensions de leur conteneur parent, plutôt que de vous fier à la taille entière de la fenêtre d'affichage, comme avec les requêtes multimédias traditionnelles.
<div> <p><strong>Why Does This Matter?</strong></p> <p>Have you ever wished to style components dynamically based on their container’s size instead of the page’s overall dimensions? Container queries make this possible, providing an ideal solution for component-based design systems or modular web components where the parent container’s size dictates the layout.</p> <p>Browser Support:</p> <p>• Full Support: Modern browsers.</p> <p>• Enhancements: Yes, if non-critical styles depend on it.</p> <p><strong>2. Container Queries (Style)</strong></p> <p>What Are Style-Based Container Queries?</p> <p>This feature enables styling child elements when a specific custom property ( — custom-property) within the container takes on a particular value.<br> </p> <pre class="brush:php;toolbar:false">.container { --variant: 1; &.variant2 { --variant: 2; } } @container style(--variant: 1) { .button { /* Apply styles when --variant is 1 */ } } @container style(--variant: 2) { .button { /* Apply styles when --variant is 2 */ } }
Pourquoi est-ce important ?
Cela donne vie au concept de « mixins CSS ». Tout comme les mixins Sass améliorent la maintenabilité, les requêtes de conteneurs basées sur le style étendent les capacités natives de CSS, en tenant compte de la cascade et en permettant une plus grande flexibilité.
Support du navigateur :
• Pris en charge : Chrome et dérivés.
• Bientôt disponible : Safari.
• Non pris en charge : Firefox.
• Améliorations : limitées.
• Polyfill : non disponible.
3. Unités de conteneurs
Que sont les unités de conteneurs ?
Les unités de conteneur sont des unités de mesure réactives (par exemple, cqw, cqh, cqmin, cqmax) qui calculent les dimensions en fonction de la taille du conteneur plutôt que de la fenêtre d'affichage. Ceux-ci fonctionnent de la même manière que vw (1 % de la largeur de la fenêtre d'affichage), mais sont limités à un conteneur.
.card { padding: 2cqw; font-size: 1cqmin; }
Pourquoi est-ce important ?
Si les éléments internes doivent être mis à l'échelle proportionnellement à leur conteneur parent, les unités de conteneur fournissent une solution propre, uniquement CSS. Un cas d'utilisation courant consiste à mettre à l'échelle la typographie ou l'espacement à l'intérieur des cartes ou des composants modulaires.
Support du navigateur :
• Prise en charge complète : navigateurs modernes.
• Améliorations : oui, avec des solutions de repli.
• Polyfill : disponible.
4. :has() Pseudo-Sélecteur
Qu'est-ce que le sélecteur :has() ?
La pseudo-classe :has() vous permet de styliser les éléments parents en fonction de la présence d'éléments enfants spécifiques en leur sein.
figure:has(figcaption) { border: 1px solid black; padding: 0.5rem; }
Pourquoi est-ce important ?
Le sélecteur :has() fonctionne efficacement comme un « sélecteur de parents » en CSS, permettant de styliser les parents en fonction de leurs enfants. Par exemple, vous pouvez utiliser :has() pour mettre en surbrillance un champ de formulaire parent uniquement lorsqu'un message d'erreur est présent.
Support du navigateur :
• Pris en charge : tous les principaux navigateurs.
• Polyfill : JavaScript uniquement.
*5. Voir les transitions
*
Que sont les transitions de vue ?
Cette fonctionnalité introduit deux types d'animations :
Transitions d'une seule page (nécessite JavaScript).
Transitions multipages (CSS uniquement).
<div> <p><strong>Why Does This Matter?</strong></p> <p>Have you ever wished to style components dynamically based on their container’s size instead of the page’s overall dimensions? Container queries make this possible, providing an ideal solution for component-based design systems or modular web components where the parent container’s size dictates the layout.</p> <p>Browser Support:</p> <p>• Full Support: Modern browsers.</p> <p>• Enhancements: Yes, if non-critical styles depend on it.</p> <p><strong>2. Container Queries (Style)</strong></p> <p>What Are Style-Based Container Queries?</p> <p>This feature enables styling child elements when a specific custom property ( — custom-property) within the container takes on a particular value.<br> </p> <pre class="brush:php;toolbar:false">.container { --variant: 1; &.variant2 { --variant: 2; } } @container style(--variant: 1) { .button { /* Apply styles when --variant is 1 */ } } @container style(--variant: 2) { .button { /* Apply styles when --variant is 2 */ } }
*Pourquoi est-ce important ?
*
Les transitions améliorent l'expérience utilisateur en animant des éléments lors des changements d'état, rendant les interactions plus fluides. Ils utilisent « l'interpolation », où les animations interpolent entre les états de début et de fin sans définir manuellement chaque étape.
Support du navigateur :
• Pris en charge : Chrome et dérivés.
• Non pris en charge : Safari, Firefox.
• Améliorations : oui, avec des animations de secours.
6. Nidification
Qu'est-ce que la nidification ?
L'imbrication CSS vous permet d'écrire des sélecteurs enfants dans leurs règles parents, ce qui rend le code plus propre et plus maintenable.
.card { padding: 2cqw; font-size: 1cqmin; }
Pourquoi est-ce important ?
L'imbrication réduit la redondance dans CSS, en regroupant les styles associés. Cependant, une utilisation excessive peut conduire à des sélecteurs trop spécifiques et à une réutilisabilité réduite.
Support du navigateur :
• Prise en charge complète : navigateurs modernes.
7. Animations pilotées par défilement
Que sont les animations pilotées par défilement ?
Ces animations sont liées au défilement et peuvent être implémentées en utilisant CSS sans recourir à JavaScript.
figure:has(figcaption) { border: 1px solid black; padding: 0.5rem; }
Pourquoi est-ce important ?
Des indicateurs de progression aux effets de parallaxe, les animations pilotées par défilement améliorent l'interactivité et réduisent le recours à JavaScript pour les tâches critiques en termes de performances.
Support du navigateur :
• Pris en charge : Chrome.
• Bientôt disponible : Firefox.
8. Sous-grille
Qu'est-ce que la sous-grille ?
La valeur de la sous-grille permet aux éléments de grille enfants de s'aligner sur les lignes ou les colonnes de leur grille parent sans dupliquer les définitions de grille.
if (!document.startViewTransition) { updateDOM(); } else { document.startViewTransition(() => updateDOM()); }
Pourquoi est-ce important ?
La sous-grille garantit un alignement cohérent sur les structures de grille imbriquées, ce qui facilite la maintenance des mises en page complexes.
Support du navigateur :
• Prise en charge complète : tous les navigateurs modernes.
Pensées finales
CSS continue d'évoluer à un rythme passionnant. Avec des fonctionnalités telles que les requêtes de conteneur, les transitions de vue et la sous-grille, le langage devient plus robuste et intuitif pour le développement Web moderne. Gardez un œil sur les développements futurs, notamment la syntaxe relative des couleurs, le CSS étendu et les nouveaux éléments HTML comme , qui promettent des possibilités de conception encore plus grandes.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

CSS Grid est un outil puissant pour créer des dispositions Web complexes et réactives. Il simplifie la conception, améliore l'accessibilité et offre plus de contrôle que les méthodes plus anciennes.

L'article traite de CSS Flexbox, une méthode de mise en page pour l'alignement et la distribution efficaces de l'espace dans les conceptions réactives. Il explique l'utilisation de Flexbox, la compare à la grille CSS et détaille la prise en charge du navigateur.

L'article traite des techniques de création de sites Web réactifs à l'aide de CSS, y compris des balises de méta de la fenêtre, des grilles flexibles, des médias fluides, des requêtes multimédias et des unités relatives. Il couvre également l'utilisation de la grille CSS et de Flexbox ensemble et recommande le cadre CSS

L'article traite de la propriété CSS-Box-Sizing, qui contrôle comment les dimensions des éléments sont calculées. Il explique des valeurs telles que la boîte de contenu, la boîte de bordure et la boîte de padding, et leur impact sur la conception de la disposition et l'alignement de la forme.

L'article discute de la création d'animations à l'aide de CSS, de propriétés clés et de combinaison avec JavaScript. Le principal problème est la compatibilité du navigateur.

L'article discute de l'utilisation de CSS pour les transformations 3D, les propriétés clés, la compatibilité du navigateur et les considérations de performances pour les projets Web. (Compte de caractère: 159)

L'article discute de l'utilisation des gradients CSS (linéaire, radial, répétant) pour améliorer les visuels du site Web, l'ajout de profondeur, de concentration et d'esthétique moderne.

L'article traite des pseudo-éléments dans CSS, de leur utilisation dans l'amélioration du style HTML et des différences par rapport aux pseudo-classes. Fournit des exemples pratiques.


Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

mPDF
mPDF est une bibliothèque PHP qui peut générer des fichiers PDF à partir de HTML encodé en UTF-8. L'auteur original, Ian Back, a écrit mPDF pour générer des fichiers PDF « à la volée » depuis son site Web et gérer différentes langues. Il est plus lent et produit des fichiers plus volumineux lors de l'utilisation de polices Unicode que les scripts originaux comme HTML2FPDF, mais prend en charge les styles CSS, etc. et présente de nombreuses améliorations. Prend en charge presque toutes les langues, y compris RTL (arabe et hébreu) et CJK (chinois, japonais et coréen). Prend en charge les éléments imbriqués au niveau du bloc (tels que P, DIV),

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

SublimeText3 Linux nouvelle version
Dernière version de SublimeText3 Linux

PhpStorm version Mac
Le dernier (2018.2.1) outil de développement intégré PHP professionnel
