如何在没有id或class的情况下更改CSS样式

时间:2012-11-23 17:04:42

标签: html css xhtml

我想更改此2链接的背景 <a href="http://www.domain.com/index.html"> <a href="http://www.domain.com/index.php"> 但条件是我不能在这里添加任何类或Div id。我也无法触及这个HTML代码。我需要从外部添加一些css。我的意思是在main style.css表中。有可能吗?我试过这段代码a { background:url(../images/image.png);},但问题是它改变了整个链接的页面背景。但我想要2个链接的2个不同背景。是真的有可能。任何人都可以帮助我:)

2 个答案:

答案 0 :(得分:1)

您可以使用CSS属性选择器仅为具有与您提供的链接匹配的href的链接设置样式。例如:

a[href="http://www.domain.com/index.html"],
a[href="http://www.domain.com/index.php"]{
    background:url(../images/image.png);
}

您还可以使用以下规则匹配所有带 的链接 http://www.domain.com

a[href^="http://www.domain.com"]{
    background:url(../images/image.png);
}

请检查支持,因为较旧的浏览器可能会忽略属性选择器。

http://css-tricks.com/attribute-selectors/

答案 1 :(得分:1)

您需要找到一种区分这两个链接的方法,从您发布的代码中,它们只在它们指向的网址上有所不同,因此您可以使用此方法:

/* anchors with href attribute ending in index.html */
a[href$='index.html'] { background:url(../images/image.png);}

/* anchors with href attribute ending in index.php */
a[href$='index.php'] { background:url(../images/image2.png);}