背景故事:我有一个 SVG 画布,上面有一些折线。我还有一些 HTML<span>
和<textarea>
元素需要相对于这些折线精确定位。
我首先将 SVG 中的 HTML 元素放在<foreignElement>
标签中,但我在那里遇到了问题,因为 IE 根本看不到它们,而 Firefox 也看不到<textarea>
s。所以我把它们从 SVG 中取出,现在每个浏览器都能看到它们。
到目前为止,一切都很好。现在,我知道确保它们与折线正确定位的唯一方法是使用 CSS 为 HTML 元素和 SVG 画布提供绝对位置。
这是我的问题。在所有这些元素之上是一个标题 div。我希望整个 SVG 业务都位于标题下方的合理距离处。说 15 像素。但是由于 SVG 是绝对定位的,所以我需要知道该标题 div 的高度才能将 SVG 和相关的 HTML 元素放到正确的位置。
我试过 jQuery 的.height()
方法和一些相关的方法。它们的问题在于 Firefox 和 Chrome 给出了两种不同的结果。我知道这并不能反映两者之间的真实像素高度差,因为我可以直观地看到 FF 中的标题略高,但 FF 给出的高度读数较小。
如何为我的标题 div 获得与浏览器一致的高度读数?或者至少一个我可以用来在每个浏览器中将其他元素绝对定位在它下方相同距离的位置。