我有一个PHP应用程序,必须为其动态生成样式表。样式表的文件扩展名为.php,但是我通过Content-Type函数(PHP)将文件的text/css设置为header,然后创建了适合我目的的格式正确的CSS并将此样式表包括在我的页。

我看到的问题是,当我通过选择的任何浏览器工具查看CSS文件时,无论是Firebug,Chrome开发工具还是I​​E开发工具,都缺少某些类声明(这显然是浏览器呈现的内容) -这些类不存在)。当我检查文件的原始输出时(例如,将PHP CSS文件的地址放在浏览器中以查看原始文本),确实存在丢失的类声明。

通常缺少的是第二个(或第n个)类,该类指定相同的background-color值,但具有不同的类名。

这是一个具体的例子:

在原始输出中,我有以下两个类:

#draft-board div.pick.RB{
  background-color: #FFCC66;
}

#draft-board div.pick.1B {
  background-color: #FFCC66;
}


但是在浏览器中,它只会看到:

#draft-board div.pick.RB{
  background-color: #FFCC66;
}


为什么是这样?

这是一个公开的示例页面:
http://www.phpdraft.com/public_draft.php?action=draftBoard&did=9

(这是该页面的原始CSS输出:)
http://www.phpdraft.com/css/draft_board_dynamic_styles.php

最佳答案

我发现了一个问题:CSS类名不能以数字开头,因此所有三个浏览器都无法识别CSS的原因-它们正确地跟随了CSS,而我却没有!

07-28 02:09
查看更多