运行时错误CSS1019:意外的令牌,找到'@charset'

时间:2013-05-19 07:33:38

标签: css asp.net-mvc css3 stylesheet

我有一个CSS样式表,其中包含以下代码:

@charset "utf-8";
/* CSS Document */

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video
{
    margin: 0;
    padding: 0;
    border: 0;
    vertical-align: baseline;
}

我正面临这些错误

/ *缩小失败。返回未经授权的内容。 (1189,1):运行时错误CSS1019:意外的令牌,发现'@charset' (1189,10):运行时错误CSS1019:意外的令牌,发现'“utf-8”' (1189,17):运行时错误CSS1019:意外的令牌,找到';'

2 个答案:

答案 0 :(得分:1)

CSS中只能出现一个@charset,它必须出现在文档的最开头。它必须 NOT 前面有任何字符,甚至不是注释。

大多数情况下,这是由于捆绑CSS以及其他'CSS'文件 我的猜测是,你在一个捆绑包中使用了一堆css'es捆绑文件中最顶层的CSS,只能@charset "utf-8"
因此,您可以在@charset "utf-8"语句中的最顶层CSS文件中设置Bundle(如果是,请确保您没有使用@charset以外的其他"utf-8"声明,那么您需要将捆绑的文件拆分成单独的包,以便每个@charset容纳在它的捆绑订单的顶部。)

注意:由于HTTP标头的优先级高于文档内@charset声明,因此您可能还想省略@charset语句并在HTTP标头中声明它。

答案 1 :(得分:1)

我有同样的错误消息,但就我而言,我试图用<script>标签加载CSS文件。

使用<link rel="stylesheet" href="foo.css">加载它应该可以正常工作。