【发布时间】:2010-11-29 00:49:48
【问题描述】:
我正在使用this guide 创建一个 HTTPHandler,它结合了脚本和 css 文件以将它们作为一个请求传递。
基本上它将一堆 .css 文件读入一个字节数组,然后 response.writes 字节到客户端,内容类型为 text/css(或 text/javascript)
当使用 FireBug 时,CSS 似乎可以正常运行……它就在那里。但是,浏览器本身只会渲染组合操作中使用的第一个文件中的 CSS。
例子:
文件1.css: 正文 { 字体大小:20px; } h1 { 颜色:红色; }
文件2.css: div {边框:实心1px黑色; }
所有的 CSS 都可以通过 Firebug 在 CSS 选项卡中看到...但是 File2.css 中的类实际上并未应用于页面上的 div。如果我翻转文件的顺序,div 会得到一个边框,但 File1.css 中的任何内容都不会被应用。
Javascript 文件可以正常工作,但 CSS 让我很困惑!
编辑以显示从 Firebug 中复制的 CSS
body {
font-size:22px;
}
h1 {
color:Red;
text-decoration:underline;
}
div {
border:1px solid black;
}
这里是来自 NET 选项卡,生成的实际响应
ParamsHeadersPostPutResponseCacheHTML
Response Headersview source
Server ASP.NET Development Server/9.0.0.0
Date Mon, 29 Nov 2010 01:10:26 GMT
X-AspNet-Version 2.0.50727
Transfer-Encoding chunked
Cache-Control public, must-revalidate, proxy-revalidate, max-age=259200
Expires Thu, 02 Dec 2010 01:10:26 GMT
Content-Type text/css
Connection Close
Request Headersview source
Host localhost:49598
User-Agent Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12
Accept text/css,*/*;q=0.1
Accept-Language en-us,en;q=0.5
Accept-Encoding gzip,deflate
Accept-Charset ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive 115
Connection keep-alive
Referer http://localhost:49598/
body
{
font-size: 22px;
}
h1
{
color: Red;
text-decoration: underline;
}div
{
border: solid 1px black;
}
新的发展。如果我在记事本中创建 .css 文件,一切正常。 VS2008在创建Stylesheet文件的时候会不会给文件添加一些看不见的东西?
FIDDLER TEXTVIEW(不知道多余的字符是从哪里来的。很有趣。
9a
body
{
font-size: 22px;
}
h1
{
color: Red;
text-decoration: underline;
}div
{
border: solid 1px black;
}
0
【问题讨论】:
-
你能贴出Firebug收到的实际css吗?
-
正文 { 字体大小:22px; } h1 { 颜色:红色;文字装饰:下划线; } div { 边框:1px 纯黑色; }
-
请编辑您的问题并使用代码块发布收到的 CSS,以便我们可以看到其格式正确
-
请向我们展示来自 Firebug 的 Net 选项卡的原始 CSS 响应。 (虽然如果您在 CSS 选项卡中看到所有这些,则证明没有任何语法错误,所以我不确定是什么问题。)
-
它可以在 Chrome 或 Safari 中使用吗?
标签: .net css concatenation minify