1

按照教程http://ejohn.org/blog/html-5-data-attributes/我想调整为图像(不是链接)创建工具提示的过程。所以我将“工具提示”类规则调整为通用而不是a特定于标签。

我在 js-fiddle http://jsfiddle.net/AqPN8/中复制了我的努力

正如您在小提琴中看到的那样,它确实适用于链接,但不适用于图像。你知道为什么不吗?

从技术上讲,我认为:hoverand likes 也应该 for<img>和 not only <a>

4

3 回答 3

5

您不能::before/::after在不能有子标签的标签上使用伪元素,<img>例如<br>,、、、<hr>等:MDN 文档:before

:before创建一个伪元素,它是匹配元素的第一个子元素。

于 2013-08-26T11:32:45.517 回答
3

::before创建一个伪元素,它是匹配元素的第一个子元素。

<img>element 是一个标签而不是容器标签,你不能在::before <img>.

作为替代方案,您可以通过内联包装器元素包装图像,例如<span>

<span class="tooltip" data-tip="show a tooltip for image">
    <img alt="show a tooltip for image" src="path/to/image" />
</span>

JSFiddle 演示

于 2013-08-26T11:33:06.250 回答
2

图像不允许使用伪元素,因此在 an 上设置 a:before或将不起作用。:after<img>

阅读以获取更多信息: CSS:未向某些元素添加内容之后

于 2013-08-26T11:33:09.100 回答