2012-03-28 7 views
8
Invalid CSS after "}": expected selector or at-rule, was "}" 
    (in /home/test/www/dispatch/app/assets/stylesheets/application.css) 
(sass):364 

Der obige Fehler ist, was in meiner Vorkompilierung auftritt und ich bin nicht in der Lage, das Problem zu finden. Ich habe versucht, die Datei zu application.css.scss Umbenennung und ich bekomme die gleichen Fehler, mit einer anderen Zeilennummer :405Rails Vorkompilierung Fehler in CSS

Was ich verblüfft hat, ist, dass diese Datei enthält nur 159 Linien so bin ich nicht sicher, wo die Zeilennummer kommt aus.

Ich bin vorcompiling auf meinem lokalen Computer, weil letzte Nacht dieser Fehler bei einem Versuch einer Produktion Migration aufgetreten ist.

+0

Vielen Dank, genau das war das Problem, ein fehlendes Semikolon. Lektion gelernt, war mir nicht bewusst, dass alles zu dieser Datei kompiliert wurde. Tausend Dank für die Info. – user1214966

+0

Kein Problem, froh, dass es geholfen hat. Ich werde meinen Kommentar als Antwort verschieben, wenn es Ihnen nichts ausmacht, ihn als Antwort für andere zu markieren, die das lesen. Danke und fröhliche Programmierung. – digicazter

Antwort

14

Wenn es Ihre application.css dann würde es alle Ihre CSS zu dieser Datei kompilieren, so gibt es eine Chance, dass das Problem nicht in dieser Datei selbst ist, aber in einer Datei kompiliert es hinein. Überprüfen Sie Ihren Code auf ein fehlendes Semikolon.

+0

http://jigsaw.w3.org/css-validator/validator hat mir geholfen, die Fehler zu finden. Vielen Dank. – quantumpotato

1

Ich fehlte das Semikolon. Meine wurde am Ende der Zeile "$ greyMediumLight" deklariert. Vielleicht wird das jemandem die 30 Minuten sparen, die ich verbracht habe.

2

Ich stimme @Digi_Cazter zu. Aber der gleiche Fehler kann passieren, wegen ungültiger Klammern setzen wie

.someclass{ 
    property: value; 
}} 
0

Gut, dass Sie Ihren Fehler gefunden und es behoben, aber ich wollte ein wenig mehr für andere Neulinge wie mich erklären, dass benötigen könnten an einem anderen Ort zu suchen für ihre Lösung.

Ich hatte gerade dieses Problem, und für mich example.css.scss precompiled zu example.css in/public - und ein zusätzliches "}" wurde am Ende einer Medienabfrage hinzugefügt - in/public/Beispiel. css, obwohl es keinen Fehler in /example.scss.css gab

Für alle anderen, die dieses Problem haben, vergleichen Sie Ihre SCSS und CSS mit etwas wie Kaleidoscope, um nach Syntaxfehlern während Ihrer Vorkompilierung und Fehlerbehebung von dort zu suchen.

3

Ich habe diese Fehler gehasst, weil sie keine Stack-Trace bieten. Sobald dies passiert, sind Sie gezwungen, stundenlang nach diesem Semikolon zu suchen. Ich hoffe, die Jungs von Rails werden das bald regeln.

Inzwischen habe ich eine ausgezeichnete Möglichkeit gefunden, solche Fehler zu erkennen, indem Sie sie durch Ihren CSS Compiler oder Compressor übergeben. In meiner app, verwenden wir SASS, so kann ich nennen:

sass --style compressed --scss -C your_problematic_file.css 

Das wird Ihnen sagen, wenn es mit dieser Datei ein Fehler ist, und die Zeilennummer. Sie müssen dies für jede CSS-Datei ausführen, die möglicherweise ein Täter sein kann.

In meinem Fall war es ein extra } um Medienabfragen.

+0

Es ist hilfreich, aber ich habe immer noch das Problem. Es scheint, dass alles in Ordnung ist, indem Sie dies ausführen, aber ich bekomme den Fehler !! –

Verwandte Themen