svg - 如何使 Chrome/Firefox 与 IE 7 和 8 的 RaphaelJS 垂直对齐文本?

标签 svg raphael vml

我认为 RaphaelJS 在 Chrome/Firefox 和 IE 7 和 8 中应该是一样的?

例子在

http://jsfiddle.net/8UPhS/1/

文本在 Chrome 和 Firefox 上垂直居中,但在 IE 7 和 8 上,文本的基线改为居中(因此它比 FF 高几个像素)...有没有办法让它们全部表现一样吗?

(最好不要使用浏览器检测并针对 IE 7 和 8 将文本调低几个像素,因为这不是一个干净的解决方案)

(在 IE 9 上,出于某种原因,图像根本没有显示,即使使用开发人员工具将兼容模式更改为 IE 7 或 8...但是如果我在 IE 9 上使用单独的页面链接raphael.jsindex.html 的同一网站上,然后我遇到了最糟糕的情况:有时我会随机出现一种行为,有时会出现另一种行为...它几乎看起来像是一个竞争条件)

(对于IE 9,可以使用这个页面:

http://try-raphael-text.heroku.com
http://try-raphael-text.heroku.com/raphael20.html

第二个链接是在 GitHub 的 Raphael 2.0 分支上使用 Raphael 2.0

2.0 版本实际上在 IE 7 上可以垂直对齐,但在 IE 8 上,没有显示文本... 它使用这个简单的案例在 IE 9 上运行良好......但在我们的真实页面上,它有时会导致 IE 9 崩溃)

最佳答案

这是 Raphael 1.5.2 [1] 中的一个已知错误。我更喜欢功能检测而不是浏览器检测来解决这个错误? Raphael 提供了一个名为 svg (true|false) 的属性。看我的例子:http://jsbin.com/iwudu5/edit .

[1] https://github.com/DmitryBaranovskiy/raphael/issues/86

关于svg - 如何使 Chrome/Firefox 与 IE 7 和 8 的 RaphaelJS 垂直对齐文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5679179/

相关文章:

math - 如何通过两个点和半径大小计算椭圆的中心

html - SVG 坐标到 VML 坐标

web-applications - SVG 中的 Web 应用程序、性能问题和可行性

raphael - 使用 Raphael 绘制带连接点的矩形

javascript - 为什么浏览器解析 <script> 标签的方式不同?

svg - 使用贝塞尔曲线或椭圆路径以编程方式绘制椭圆的一部分 — SVG 和 raphael.js

javascript - For 循环不适用于 JavaScript 动画

css - 如何在 SVG 标签之间嵌入 html 代码

javascript - 绘制具有 2 个或 3 个彩色区域的密度函数?

android - 选择 Android Webview 中使用的动画以获得高性能