考虑到我的整个网站都有一个css文件(这样做是一种常用技术),我想知道是否有办法选择网站范围的属性,如body
(或任何其他属性)实际上)根据当前页面仅使用css。
像
这样的东西body:in('index.html') {
some properties;
}
body:in('contact.html') {
other properties;
}
再次,仅限css。我知道使用php,js,jquery ......等简单的解决方案。
答案 0 :(得分:7)
选择器除了DOM树中显示的内容之外,没有关于文档的信息,并且DOM不会根据文件名,URL或任何其他此类属性公开有关页面的信息。
从历史上看,有一个@document
用于查询当前网址的规则,但它已从Conditional Rules Level 3 module中移除。最可能的原因是缺乏跨供应商实现,因为Gecko中唯一已知的实现存在@-moz-document
。它太糟糕了,你在野外发现它的唯一用途是不基于某个页面应用CSS,而只是作为Firefox的CSS黑客攻击
正如您所说,最简单的解决方法是让每个页面为html
或body
元素应用一个唯一的类,并根据该类选择是否通过硬编码,或动态地。
答案 1 :(得分:0)
您可以将id
属性添加到body
标记,并使用以下内容设置其中的内容:
body#contact div{
background:#376;
color:#857;
/*etc*/
}
中选择器的更多信息