代码之家  ›  专栏  ›  技术社区  ›  Moses

关于图像地图的一般问题

  •  2
  • Moses  · 技术社区  · 15 年前

    首先,我注意到你可以把 <map> <地图> <head> ,还是把它放在 <body> 紧接着 <img /> 它对应于?

    第二,我知道地图标签在HTML5中还没有被弃用,使用tab可以跳转到客户端图像地图中的每个链接。尽管如此,我还是听到很多关于图像地图是过时的,不可访问的。这是真的吗?

    最后,我总是听到人们说有更好更易访问的方法来使用CSS或JavaScript实现图像映射,但我从未见过这样的例子。有没有人能给我看一个跨浏览器兼容的例子(例如,在IE中工作)。

    1 回复  |  直到 15 年前
        1
  •  2
  •   Moses    15 年前

    由于没有其他人对这个问题有意见,我想为了完整起见,我会用我目前学到的知识来回答我自己的问题。

    根据 W3Schools 只有六个标签应该放在Head元素中,而Map/Area标签不在这六个标签中。此外,通过关联,当地图标记直接位于img标记之前时,它使标记更易于理解。

    至于第二个问题,我认为我从中听到的少数来源要么在评估中不正确,要么在说服务器端图像映射时错误地引用了客户端图像映射。客户端图像映射非常容易访问。

    作为图像地图的替代方案:

    有一些非JavaScript方法可以使用divs/span、floating、z索引和hover伪选择器来创建图像映射,从而实现一般的图像映射效果。但是,这些应该避免,因为实际的图像映射可以通过添加JavaScript事件处理程序来实现相同的效果。

    在JavaScript中,您可以观察鼠标的坐标,并为用户在图像的特定坐标内单击设置事件处理程序,从而允许您以编程方式复制图像映射效果。但是,由于这种技术只使用JavaScript,因此通常应该避免使用,因为禁用JavaScript的人无法访问它。