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

Lỗi trên là những gì xảy ra trong biên dịch trước của tôi và tôi không thể tìm thấy sự cố. Tôi đã thử đổi tên tệp thành application.css.scss và tôi nhận được cùng một lỗi, với một số dòng khác nhau :405Lỗi biên dịch trước của Rails trong CSS

Điều mà tôi cho rằng tệp này chỉ chứa 159 dòng vì vậy tôi không chắc chắn về số dòng đó đến từ.

Tôi đang biên dịch trước trên máy cục bộ của mình vì đêm qua lỗi này xảy ra khi cố gắng di chuyển sản xuất.

+0

Cảm ơn bạn chính xác đó là vấn đề gì, dấu chấm phẩy bị thiếu. Bài học kinh nghiệm, tôi không biết rằng mọi thứ đã được biên dịch thành tập tin đó. Cảm ơn một triệu cho thông tin. – user1214966

+0

Không có vấn đề, vui vì nó đã giúp. Tôi sẽ di chuyển bình luận của tôi như là câu trả lời nếu bạn không nhớ đánh dấu nó như được trả lời cho những người khác đọc nó. Cảm ơn và mã hóa hạnh phúc. – digicazter

Trả lời

14

Nếu ứng dụng của bạn. Sau đó, nó sẽ biên dịch tất cả css của bạn thành tệp đó, do đó, có khả năng sự cố không nằm trong tệp đó, nhưng trong tệp nó biên dịch vào tệp đó. Kiểm tra mã của bạn để tìm dấu chấm phẩy bị thiếu.

+0

http://jigsaw.w3.org/css-validator/validator đã giúp tôi tìm ra lỗi. Cảm ơn. – quantumpotato

1

Tôi đã bỏ lỡ dấu chấm phẩy. Mỏ được để lại ở cuối dòng tuyên bố "$ grayMediumLight". Có lẽ điều này sẽ tiết kiệm cho ai đó trong 30 phút tôi đã dành.

2

Tôi đồng ý với @Digi_Cazter. Nhưng những lỗi tương tự có thể xảy ra vì đặt dấu ngoặc hợp lệ như

.someclass{ 
    property: value; 
}} 
0

Vui mừng bạn đã tìm thấy lỗi lầm của mình và cố định nó, nhưng tôi muốn giải thích thêm một chút cho người mới khác như với tôi rằng có thể cần phải nhìn vào một nơi khác để sửa chữa.

Tôi vừa gặp sự cố này và cho tôi example.css.scss được biên dịch trước thành example.css trong/public - và thêm "}" đã được thêm vào cuối truy vấn phương tiện - trong/công khai/ví dụ. css mặc dù không có lỗi trong /example.scss.css

Đối với bất kỳ ai khác gặp sự cố này, hãy so sánh SCSS và CSS của bạn với một cái gì đó như Kaleidoscope để kiểm tra bất kỳ lỗi cú pháp nào trong khi biên dịch trước và khắc phục sự cố từ đó.

3

Tôi đã ghét những lỗi này vì chúng không cung cấp bất kỳ dấu vết ngăn xếp nào. Vì vậy, một khi điều này xảy ra, bạn buộc phải bỏ ra hàng giờ để tìm kiếm dấu chấm phẩy. Tôi hy vọng các chàng trai của Rails sẽ sớm sửa lỗi này.

Trong khi đó, tôi đã tìm thấy một cách tuyệt vời để phát hiện các lỗi như vậy, bằng cách chuyển chúng qua trình biên dịch CSS hoặc trình nén của bạn. Trong ứng dụng của tôi, chúng tôi sử dụng SASS, vì vậy tôi có thể gọi:

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

Điều đó sẽ cho bạn biết nếu có bất kỳ lỗi nào với tệp đó và số dòng. Bạn sẽ cần phải chạy điều này trên mọi tệp CSS có thể có thể là thủ phạm.

Trong trường hợp của tôi, nó là thêm } xung quanh các truy vấn phương tiện.

+0

Rất hữu ích nhưng tôi vẫn gặp sự cố. Có vẻ như mọi thứ đều OK bằng cách chạy nó nhưng tôi gặp lỗi !! –

Các vấn đề liên quan