我的 CSS 包括以下内容:
#mainbody a[href ^='http'] {
background:transparent url('/images/icons/external.svg') no-repeat top right;
padding-right: 12px;
}
这会在以“http”开头的链接旁边放置一个“外部”图标(所有内部站点链接都是相对的)。工作得很好,除非我链接一个图像,它也会得到这个图标。
例如:<a href='http://example.com'><img src='whatever.jpg'/></a>
还会在图像旁边获得“外部”图标。如有必要,我可以忍受这个,但想消除它。
这必须在 CSS(无 JS)中实现;不得要求图像的 html 中的任何特殊 ID、类、样式或图像周围的锚点。这可能吗?