Css忽略了第一堂课后的一切

时间:2010-11-29 00:49:49

标签: .net css concatenation minify

我正在使用this guide创建一个HTTPHandler,它将脚本和css文件组合在一起作为一个请求提供。

基本上它将一堆.css文件读入一个字节数组,然后使用内容类型text / css(或text / javascript)将字节写入客户端

当使用FireBug时,似乎CSS很好......它就在那里。但是,浏览器本身只会渲染组合操作中使用的第一个文件中的CSS。

示例:

File1.css: body {font-size:20px; } h1 {颜色:红色; }

File2.css: div {border:solid 1px black; }

所有CSS都可以通过CSS选项卡中的Firebug查看...但是File2.css中的类实际上并未应用于页面上的div。如果我翻转文件的顺序,div会得到一个边框,但File1.css中没有任何内容被应用。

Javascript文件工作得很好,但CSS让我完全难过!

编辑显示CSS退出FIREBUG

body {
font-size:22px;
}
h1 {
color:Red;
text-decoration:underline;
}
div {
border:1px solid black;
}

这里是来自NET TAB,实际的响应

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是否会在文件中添加一些看不见的内容?

FIDDLER TEXTVIEW (Dunno,其中有额外的角色来自。有趣。

9a


body 
{
    font-size: 22px;

}

h1 
{
    color: Red;
    text-decoration: underline;
}div 
{
    border: solid 1px black;
}
0

2 个答案:

答案 0 :(得分:1)

GetFileBytes中更改以下行

    byte[] bytes = File.ReadAllBytes(physicalPath);
    // TODO: Convert unicode files to specified encoding. For now, assuming
    // files are either ASCII or UTF8
    return bytes;

    string content = File.ReadAllText(physicalPath, encoding);
    return encoding.GetBytes(content);

答案 1 :(得分:0)

我不确定是什么问题;如果Firebug的CSS选项卡看到CSS,它应该呈现。

尝试清除缓存(Ctrl + F5)并重新启动Firefox。

尝试在服务器上的CSS文件之间添加换行符;这可能会有所帮助。