Une remarque ? Une suggestion ?...

Merci de participer à l'amélioration de ce site. Prenez le temps de rédiger votre remarque le plus précisément possible :

@import - Directive CSS

@import

Résumé des caractéristiques de la directive @import

Description rapide
Importation d'une feuille de styles.
Statut
Standard
Pourcentages
Ne s'appliquent pas.
Module W3C
Module CSS - Cascade et héritage
Références (W3C)
 🡇  
 🡅  
Statut du document: CR (document candidat à la recommandation)

Statut du document: CR (document candidat à la recommandation)

Statut du document: REC (recommandation)

Statut du document: REC (recommandation)

Description de la directive @import.

@import est une directive du langage CSS, qui permet d'insérer des styles à partir d'une autre feuille de styles, facilitant ainsi l'organisation du code CSS en le répartissant sur plusieurs fichiers.

La directive @import doit se trouver avant la définition des styles, donc au début de la feuille de styles, mais après une éventuelle directive @charset.

Les styles importés sont traités exactement comme s'ils avaient été écrits à l'endroit où se trouve la directive @import. Si des chemins relatifs figurent dans la feuille de styles importée, ils seront donc résolus par rapport à l'emplacement du fichier où figure @import.

Syntaxes pour @import.

  • @import url('styles/fichier.css');

    Une url, désignant le fichier de styles à charger.

  • @import 'styles/fichier.css';

    Une chaîne de caractères, entre apostrophes ou entre guillemets. Cette syntaxe est équivalente à la précédente. La fonction url() et donc facultative.

  • @import url('styles/fichier.css') print,screen and (min-width:900px);

    L'url, ou le nom du fichier, peut être suivi d'une liste de médias, avec éventuellement des critères sur les caractéristiques du terminal (média-queries). Reportez vous à la directive @media pour une description plus complète des médias autorisés et de la syntaxe des média-queries.

    Cette option vise à optimiser les chargements, le navigateur peut ne télécharger que les fichiers correspondant au média utilisé.

  • @import url('styles/fichier.css') layer(nom);

    L'indication d'une couche de cascade (layer) permet d'importer des styles dans cette couche particulière.

    Pour d'autres informations, reportez vous au tutoriel sur les couches de cascade.

  • @import url('styles/fichier.css') supports( ... );

    Cette syntaxe permet d'introduire une condition sur l'importation de la feuille de styles.

    Exemple : la syntaxe ci-dessous n'importe le fichier compat-styles.css que sur les navigateurs qui ne traitent pas les conteneurs grille.

    @import url('styles/compat-styles.css') supports( not (display:grid));

Prise en charge par les navigateurs (compatibilité).

La directive @import est globalement bien reconnue, mais il reste des problèmes de compatibilité avec les nouvelles fonctionnalités.

Colonne 1
Prise en charge par les navigateurs de la directive @import.
Colonne 2
Gestion des couches de styles en cascade, une fonctionnalité nouvelle qui commence à être correctement traitée par les navigateurs.
Colonne 3
Prise en charge de la syntaxe avec supports.
1
Directive
@import
2
Couchees
de cascade
3
Fonction
supports()
Estimation de la prise en charge globale.
95%
93%
69%

Navigateurs sur ordinateurs :

Navigateurs sur mobiles :

Navigateurs obsolètes ou marginaux :

Androïd Brower

Baidu Browser

Chrome

Chrome pour Androïd

Edge

Firefox

Firefox pour Androïd

Internet Explorer

KaiOS Browser

Opéra

Opéra Mobile

QQ Browser

Safari

Safari sur IOS

Samsung Internet

UC Browser pour Androïd

Opéra mini

Évolution de la directive @import.

La directive @import a peu évolué depuis sa création, si ce n'est la possibilité récente d'importer des styles dans une couche de cascade choisie. Reportez-vous à la directive @layer pour plus de précisions sur les couches de cascade.

Voir aussi, au sujet de la gestion des feuilles de styles.

La spécification "Module CSS - Cascade et héritage" (CSS Cascading and Inheritance) regroupe les outils disponibles pour organiser les styles dans les cas complexes (nombreuses feuilles de styles, cascade d'héritages volumineuse, etc.

Propriétés :

all
Initialisation de toutes les propriétés.

Directives :

Définit les couches de cascade (layer) pour faciliter la gestion des priorités entre les règles CSS.

Valeurs:

Rend une règle prioritaire sur toutes les autres.
Donne à une propriété la même valeur que celle de l'élément parent.
Redonne sa valeur initiale à une propriété.
Donne à une propriété la valeur définie par le navigateur.
Rétablit la valeur de la couche précédente.
Donne à une propriété la valeur qu'elle aurait eu si aucun style ne l'avait changée.