CSS选择器:没有<img/>作为孩子

时间:2012-08-09 15:42:59

标签: css css-selectors

我正在尝试选择链接到没有子图像标记的外部网站的所有锚标记。如果我将图像作为链接,它会在这些图像旁边添加一点外部链接图标,但我不希望这样。

这是我到目前为止所做的:

a[href^="http://"]{
  background:transparent url(..icon/external.png) center right no-repeat;
  display:inline-block;
  padding-right:18px;
}

作为额外的奖励,我如何使用“https://”链接?

1 个答案:

答案 0 :(得分:6)

使用纯CSS无法做到这一点。但是你可以使用一些jQuery魔法: jQuery:

$("a[href^='http://']:not(:has(img))").addClass("external");

CSS:

a.external {
  background:transparent url(..icon/external.png) center right no-repeat;
  display:inline-block;
  padding-right:18px;
}

请参阅演示:http://jsfiddle.net/hKTBp/

请参阅演示(包括HTTPS):http://jsfiddle.net/hKTBp/1/