Html 将css应用于面积图

Html 将css应用于面积图,html,css,map,area,Html,Css,Map,Area,我创建了一个非常大的地图,其中有许多多边形区域,每个区域的坐标超过20个。但是,您不能将css添加到区域标记中,因为我被告知它不是可见元素。我要做的是,当用户将鼠标悬停在地图上的某个区域上时,我希望通过对特定区域元素应用1px边框来高亮显示该区域。有没有办法做到这一点?不,我不打算使用矩形。不,没有办法像你描述的那样做到这一点。我已经研究并尝试过了。你可以做的是在不同的片段上设置鼠标悬停事件,并交换一些在同一区域中着色的重叠图像。如果你想能够使用任意形状并且仍然使用样式,你考虑过尝试SVG吗 我

我创建了一个非常大的地图,其中有许多多边形区域,每个区域的坐标超过20个。但是,您不能将css添加到区域标记中,因为我被告知它不是可见元素。我要做的是,当用户将鼠标悬停在地图上的某个区域上时,我希望通过对特定区域元素应用1px边框来高亮显示该区域。有没有办法做到这一点?不,我不打算使用矩形。

不,没有办法像你描述的那样做到这一点。我已经研究并尝试过了。你可以做的是在不同的片段上设置鼠标悬停事件,并交换一些在同一区域中着色的重叠图像。

如果你想能够使用任意形状并且仍然使用样式,你考虑过尝试SVG吗

我不是SVG大师,但这里有一个我突然想到的例子:。对于制作,您可能希望将默认笔划替换为“无”,我使用了灰色,以便您可以看到它的位置

缺点是,你会失去容易使用的区域/地图给你,但我想你可以实现你的目标,如果你走这条路。我添加了指向多边形的游标:指针,您可以添加onclick处理程序来模拟的href

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

CSS不可能。 不过,您可以查看jQuery插件

编辑10.2011
是一个更新、更强大的插件,你也应该去看看。

@PeterBZ这可能会让人头疼,但我相信你可以为不支持SVG的浏览器添加回退行为,例如。我想,您需要花费多少开发时间才能使它完全跨浏览器,而实现起来又有多容易。祝你好运查看raphael.js-它是适用于所有浏览器IE6+的SVG。据我所知,除了早期安卓手机中的股票浏览器,它什么都能做。你的JSFIDLE给了我与IE、Chrome和Firefox不同的结果,可能是什么,Firefox只打印三角形的顶部。