我有一系列svg矩形(使用D3.js),我想在mouseover上显示一条消息,该消息应该被一个充当背景的框包围。它们应该彼此完全对齐,并与矩形(在顶部和居中)完全对齐。做这件事最好的方法是什么?
我尝试使用“x”、“y”、“width”和“height”属性添加一个svg文本,然后预置一个svg rect。问题是文本的参考点在中间(因为我希望它居中对齐,所以我使用了text-anchor:midding
),但对于矩形,它是左上的坐标,另外我希望文本周围有一点边距,这让它有点麻烦。
另一个选择是使用html div,这会很好,因为我可以直接添加文本和填充,但我不知道如何获得每个矩形的绝对坐标。有办法做到这一点吗?
您可以按照Phrogz的指示使用title元素。还有一些很好的工具提示,比如jQuery的Tipsy http://oneHackoranother.com/projects/jQuery/Tipsy/(可以用来替换所有的title元素)、Bob Monteverde的nvd3,甚至Twitter的工具提示都来自他们的引导程序http://twitter.github.com/Bootstrap/