web-dev-qa-db-fra.com

comment déboguer la minification a échoué. Retour de contenu non réduit

J'utilise le bundle Asp.net MVC 4 pour regrouper et réduire mes fichiers Css.

YSlow affiche cette erreur ci-dessous

 /* Minification failed. Returning unminified contents.
    (1442,26): run-time error CSS1019: Unexpected token, found ':'
    (1442,26): run-time error CSS1042: Expected function, found ':'
    (1442,26): run-time error CSS1062: Expected semicolon or closing curly-brace, found ':'
     */

Ceci est mon code groupé,

    bundles.Add(new StyleBundle("~/Content/css").Include(
        "~/Content/site.css",
        "~/Content/fullcalendar.css",
        "~/Content/jquery.dropdown.css",
        "~/Content/jquery.tagit.css",
        "~/Content/tipsy.css"
        ));

Maintenant, comment savoir quel fichier CSS est à l'origine du problème? Comment déboguer pour trouver la ligne à l'origine du problème? site.css est le seul fichier css que j'ai écrit.

26
user636525

Au cas où quelqu'un aurait toujours des problèmes comme celui-ci.

Dans l'exemple ci-dessus: (1442,26) 1442 est le numéro de ligne et 26 est le décalage de caractère. CEPENDANT, pour que cela soit exact, vous devez supprimer tout le commentaire où cette erreur est indiquée:

 /* Minification failed. Returning unminified contents.
    (1442,26): run-time error CSS1019: Unexpected token, found ':'
    (1442,26): run-time error CSS1042: Expected function, found ':'
    (1442,26): run-time error CSS1062: Expected semicolon or closing curly-brace, found ':'
     */
34
Carlos Martinez T

Voici deux causes possibles:

  • Les fichiers CSS invalides qui doivent être validés avant le regroupement. voici service de validation CSS W3C pour répondre à cet objectif.
  • Compte tenu également du fait que Microsoft Optimizer lit le contenu des ressources cibles pour le processus de minification, donc en utilisant des expressions spéciales comme @ sourceMappingURL=jquery.min.map Dans un fichier JavaScript ou @charset "UTF-8"; Dans un fichier de feuille de style, la minification échouera à nouveau. Essayez donc de les supprimer ou de les commenter.

Notez que par défaut, le processus de regroupement ne peut pas construire le chemin relatif des ressources d'image dans les fichiers css ou js.

Solution de chemin d'image relative:

Vous pouvez utiliser le même chemin que le chemin de regroupement comme:

bundles.Add(new StyleBundle("~/Content/css/jquery-ui/bundle")
       .Include("~/Content/css/jquery-ui/*.css"));

Lorsque vous définissez le bundle sur le même chemin que les fichiers source qui le composent, le chemin relatif des ressources d'image fonctionne toujours (c'est-à-dire que /bundle Peut être n'importe quel nom que vous aimez).

Ou en utilisant new CssRewriteUrlTransform() comme deuxième paramètre comme:

bundles.Add(new StyleBundle("~/Content/css/bundle")
    .Include("~/Content/css/*.css", new CssRewriteUrlTransform()));
2

filtre: alpha (opacité: 0); était la ligne à l'origine du problème. Après avoir supprimé cette ligne, j'ai pu réduire le fichier css sans aucun problème,

1
user636525