我有一系列的svg矩形(使用D3.js),我想在鼠标悬停时显示一条消息,该消息应被用作背景的框包围。它们应彼此完全对齐,并与矩形(顶部和中心)完全对齐。做这个的最好方式是什么?
我尝试使用“ x”,“ y”,“ width”和“ height”属性添加svg文本,然后在svg
rect之前添加。问题是文本的参考点在中间(因为我想使它居中对齐text-anchor: middle
),但是对于矩形,它是左上角的坐标,而且我想在文本周围留一点空白,这使它有点痛苦。
另一个选择是使用html div,这会很好,因为我可以直接添加文本和填充,但是我不知道如何获取每个矩形的绝对坐标。有没有办法做到这一点?
您是否可以仅使用SVG <title>
元素及其传达的默认浏览器渲染?(注:这是不一样的title
,你可以上使用属性DIV / IMG /跨度在HTML,它需要一个子元素命名title
)
rect {
width: 100%;
height: 100%;
fill: #69c;
stroke: #069;
stroke-width: 5px;
opacity: 0.5
}
<p>Mouseover the rect to see the tooltip on supporting browsers.</p>
<svg xmlns="http://www.w3.org/2000/svg">
<rect>
<title>Hello, World!</title>
</rect>
</svg>
另外,如果您确实想在SVG中显示HTML,则可以直接嵌入HTML:
rect {
width: 100%;
height: 100%;
fill: #69c;
stroke: #069;
stroke-width: 5px;
opacity: 0.5
}
foreignObject {
width: 100%;
}
svg div {
text-align: center;
line-height: 150px;
}
<svg xmlns="http://www.w3.org/2000/svg">
<rect/>
<foreignObject>
<body xmlns="http://www.w3.org/1999/xhtml">
<div>
Hello, <b>World</b>!
</div>
</body>
</foreignObject>
</svg>
…但是然后您需要JS来打开和关闭显示。如上所示,使标签出现在正确位置的一种方法是将rect和HTML包裹在相同的
要使用JS查找SVG元素在屏幕上的位置,可以使用getBoundingClientRect(),
我有一系列svg矩形(使用D3.js),我想在mouseover上显示一条消息,该消息应该被一个充当背景的框包围。它们应该彼此完全对齐,并与矩形(在顶部和居中)完全对齐。做这件事最好的方法是什么? 我尝试使用“x”、“y”、“width”和“height”属性添加一个svg文本,然后预置一个svg rect。问题是文本的参考点在中间(因为我希望它居中对齐,所以我使用了),但对于矩形,它是左上的坐标
问题内容: 我想要一个添加到自定义的 JMapViewer 。但是,取消搜索并不能帮助我解决这个问题。 自定义 MapMarker 为: 绘制方法的覆盖是 感谢您提供的任何帮助。 问题答案: 覆盖的方法。在您的实现中,用于将坐标转换为大地坐标。下面的示例仅显示未格式化的坐标。您需要找到最接近的文本并返回适当的文本。 附录: 是否可以将工具提示直接添加到图像? 没有; 是处理工具提示的外壳。 我在地
问题内容: 如何在JTable的行中添加工具提示(Java Swing)?这些工具提示应包含相对行的相同值。 这是我在扩展JTable的类中使用的代码。它覆盖了方法“ prepareRenderer”,但是我得到了空单元格,并且为行中的每个单元格添加了一个工具提示,而不是整个行的一个工具提示(这就是我想要的): 问题答案: 它为行中的每个单元格添加了一个工具提示,而不是整个行中的一个工具提示 您正
我有一个图标列表。我想把图标的颜色改为白色。默认情况下,我的图标是黑色的。伙计们有什么建议吗?
问题内容: 我试图找出是否存在一种方法以及如何使用python从网页中的Tableau嵌入式图形中刮取工具提示值。 这是当用户将鼠标悬停在条形图上时带有工具提示的图形的示例: https://public.tableau.com/views/NumberofCOVID-19 Patientsadmittedordischarged / DASHPublicpage_ Patients Discha
我想在我的模型中使用“reason”属性为添加一个工具提示。我该怎么做?