web-dev-qa-db-fra.com

Que fait un tilde `~` dans un CSS `url ()`?

Par exemple. @import url("~./foobar");

Saw it ici , je ne suis pas sûr que ce soit spécifique à un paquet ou si c'est la syntaxe CSS réelle.

62
ahstro

Le CSS @import chemin <url> Est généralement relatif au répertoire de travail actuel.

Donc, utiliser le préfixe ~ Au début du chemin demande au chargeur Webpack de résoudre l'importation "comme un module" à partir d'un chemin de module de noeud.

Cela signifie que si vous avez installé un module de nœud appelé normalize et que vous devez importer un fichier nommé /normalize.css, Vous pouvez le faire avec:

@import "~normalize/normalize.css";

Dans votre exemple lié, à l'intérieur de font-loader/example/test.js, Il y a une importation d'un module appelé font-boon.

var boon = require('./font-boon');

À l'intérieur de font-loader/example/test.css, Le module font-boon est @imported afin qu'il soit disponible dans text.css.

@import url("~./font-boon");

88
ksav