2013-05-15 53 views
2

我有问题试图用CSS替换此图像,我无法访问html。用CSS替换当前的html图像

http://jsfiddle.net/ES4mH/

<img 
    width="64" 
    height="64" 
    border="0" 
    style="width: 64px; height: 64px;" 
    src="http://www.nitrografixx.com/2013/lock-icon.gif"> 
</img> 

我想这一点,虽然它增加了图像作为背景,以当前的图像,它不会取代它。

img[src='http://www.nitrografixx.com/2013/lock-icon.gif'] { 
    background: url(http://www.nitrografixx.com/2013/lock_bg.jpg) center !important; 
} 
+2

而不是背景属性,使用内容属性。 –

+2

你的代码工作正常。你对CSS说'当他发现一个带有'src'属性的'img'元素作为他的属性值,然后将'img'元素的背景图像更改为你在他的'background CSS上的财产。您必须将'background'属性更改为'content' – DaGLiMiOuX

+0

如果您有Javascript,那么最好使用它代替CSS,因为您可以直接访问图像并对其进行更改,而不是尝试应用“内容” '通过CSS的属性。 –

回答

8

试试这个

<style> 
.className{ 
    content:url("http://www.nitrografixx.com/2013/lock_bg.jpg"); 
} 
</style> 
<img class="className"/> 
+4

由于OP无法访问HTML,因此您需要将'.className'更改为'img [src ='http://www.nitrografixx.com/2013/lock-icon.gif']'? – Klors

+0

这绝对是在CSS中去的方式(所以:对问题的回答很好)。但是Javascript是处理这个问题的更好方法。 –

+0

@ user2250423你现在是否解决了这个问题 – PSR

3

你在做什么是添加图像的图像元素的背景,但图像元素仍然指向原始图像的来源属性,这就是为什么它不是被删除。如果可能的话,你应该使用javscript去除元素并用其他东西代替。

+1

我没有访问的HTML,不能添加一个Java的网站,我只能改变现有的CSS – user2250423

+0

@ user2250423 Java不是JavaScript。几乎所有浏览器都提供Javascript。 – Rob