一尘不染

将CSS应用于AREA MAP

css

我创建了一个非常大的地图,其中包含地图区域内的多个多边形区域(每个区域都超过20个坐标)。但是,您不能将css添加到AREA标签,因为有人告诉我它不是可见元素。我想做的是,当用户将鼠标悬停在地图上的某个区域上时,我希望通过对特定的AREA元素应用1px边框来“突出显示”该区域。有办法吗?不,我不会使用矩形。


阅读 340

收藏
2020-05-16

共1个答案

一尘不染

如果您希望能够使用任意形状并仍然使用样式,是否考虑过尝试SVG?

我不是SVG大师,但是这是我举个例子。在生产中,您可能需要使用替换默认笔画none,我可以用gray它来查看它在哪里。

缺点是您会失去易用性区域/地图所提供的功能,但是我想如果您走这条路线,就可以实现您的目标。我添加cursor: pointer到多边形,你可以添加onclick处理程序来模拟href<area>

一个明显的警告是浏览器支持。这似乎可以在Chrome中使用,而且我很确定它可以在IE9中使用(jsfiddle目前无法在IE9中使用),但是以前版本的IE不支持SVG。

更新
:制作了一个快速测试页来测试IE9。它确实确实按预期工作。。

再次更新 :这还将解决您在另一个问题中提出的缩放问题。

2020-05-16