2013-02-21 107 views
0

我正在使用Wordpress插件,并且遇到了定位span的问题。基本上,有一个div,它包含一个img和一个spandivspan在插件中动态添加,但在这里我不认为是这种情况),应该覆盖img。一旦图像加载,span的大小,浮动和边距就会动态设置,因此span完全覆盖图像。在相对定位的div内定位跨度

不幸的是,当image右移时,具有正余量左值并且比包含它的div更宽(图像+余量),所以存在问题。 image的左边距已更改,但span的左边距不是,因此span未正确覆盖图像。有没有办法解决这个问题或一个很好的解决方法?我的意思是,在其他情况下可以很好地工作,比如将图像左移等。我注意到它在Chrome,IE9和FF19上的工作方式类似。

一个例子:http://jsfiddle.net/6zQp3/1/

UPDATE 我不认为我已经解释的问题不够好,所以这里是另一个例子:

http://jsfiddle.net/6zQp3/53/

我已经指出了部分代码我可以改变,而我不能。基本上,插件动态地为网站上的每个图像创建div.image-containerspan.cover(我在这里省略了这部分内容,因为它不是真正相关的)。 span.cover应该完全覆盖图像。正如你在这个新例子中看到的那样,第一个图像没有被正确覆盖,而另一些则是。这是我的问题 - 调整JavaScript,也许CSS,所以它也可以在这种情况下正常工作。请注意,我无法修改图像的css(因此在图像上使用绝对定位不是一种选择)。

+0

我不确定你在问什么,但你可以这样做吗? http://jsfiddle.net/6zQp3/2/ – Matthew 2013-02-21 17:57:10

+0

@Matthew:感谢您的回复,但我需要跨度来覆盖**只有图像(它应该与图像的大小和位置相同),而不是整个div(例如,div可以是600px宽,图像宽度为100px,因此跨度只需要100px宽)。我希望这可以澄清一些事情。 – mrsztuczkens 2013-02-21 18:19:21

+0

你可以在图像周围写一个直接的容器吗? – Matthew 2013-02-21 18:37:48

回答

0

您的span被定位为绝对,因此它不能左右浮动。

这里是我的版本是:

A)http://jsfiddle.net/6zQp3/47/

B)http://jsfiddle.net/6zQp3/49/

现在你可以定位IMG +的任意位置。

+0

我更新了这个问题,因为我认为我没有足够清楚地解释我的问题。不幸的是,你提供的解决方案改变了图像的CSS,我不能这样做。感谢帮助。 – mrsztuczkens 2013-02-22 08:48:19