我有一个PHP应用程序,必须为其动态生成样式表。样式表的文件扩展名为.php
,但是我通过Content-Type
函数(PHP)将文件的text/css
设置为header
,然后创建了适合我目的的格式正确的CSS并将此样式表包括在我的页。
我看到的问题是,当我通过选择的任何浏览器工具查看CSS文件时,无论是Firebug,Chrome开发工具还是IE开发工具,都缺少某些类声明(这显然是浏览器呈现的内容) -这些类不存在)。当我检查文件的原始输出时(例如,将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,而我却没有!