- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我在 Internet Explorer(Edge?以 Win7 上的哪个为准)中遇到与 SVG 创建和操作相关的问题。
在我正在处理的应用程序中,我们使用 d3 将图形生成为 SVG。在 Chrome 和 Firefox 中,它们工作得很好,没有任何问题。然而,在 Internet Explorer 上,有一个单一的问题在非常随机的情况下困扰着整个站点。
示例 1:在包含 SVG 图形和屏幕按钮元素的页面上,将鼠标悬停在按钮上会停止呈现文本元素,直到单击 SVG。将鼠标悬停在按钮上两次后,元素再也不会返回。在整个过程中,它们都保留在 DOM 中。
示例 2:在另一个带有 SVG 维恩图的页面上,单击选择元素时文本元素停止呈现。他们不会通过点击 SVG 上的任何地方重新呈现,除了现在不可见的文本本身。
我会看看我是否可以展示视觉示例,但我无法创建 fiddle 或任何复制问题的东西。我最初认为这是因为我们在 SVG 中有动画,但禁用这些动画并使所有元素始终 100% 可见没有任何效果。
如果我打开开发人员 Pane 并禁用页面上任何元素上的任何 CSS 选项,问题就会消失,这让我很困惑。
我已经阅读了人们遇到的关于 SVG 文本在 IE 中消失的类似问题,但解决方案无效,并且(在 Microsoft 支持网站上)代表已关闭票证并表示问题已解决。我在这里看到的唯一类似问题是完全相反的(点击时文本消失)并且将近 3 年没有任何回应。
如果有人有过类似的经历并且知道如何防止这种情况发生,请发送帮助
var bbox, width, height, x=0, y=0, coordinates=scope.coordinates;
if (this.viewBoxWidth > 0)
{
width = this.viewBoxWidth;
height = this.viewBoxHeight; // assumed to also be defined
}
else
{
bbox = scope.container.node().getBBox();
width = bbox.width;
height = bbox.height;
}
if (width > 0)
{
if (coordinates)
{
x = coordinates.x; y = coordinates.y;
}
scope.svg.attr('viewBox', '' + x + ' ' + y + ' ' + width + ' ' + height);
}
所以看起来设置 viewbox 的宽度和高度会扰乱文本渲染,但我找不到任何好的解决方法来调整 svg 的大小。
在 Internet Explorer 中,SVG 不会自行调整大小以填充包含它的 div。当宽度和高度设置为百分比值时,如果未定义 View 框,它们什么也不做。如果定义了 View 框,则只有高度值(以 % 表示)调整 SVG 的大小——但是对于 View 框,除非高度和宽度是静态的(即使它们未定义),否则会出现文本呈现问题。
最佳答案
我遇到了同样的问题。我通过为 svg 容器设置固定高度找到了一个解决方法,如下所示:
<svg viewBox="200 100 900 500" xml:space="preserve" width="79%" height="500">
这对我有用
关于javascript - SVG 文本在 IE 中消失,直到我点击它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34008998/
我需要在 JavaScript 中的笛卡尔坐标和球坐标之间进行转换。我在论坛上浏览了一下,没有找到我要找的东西。 现在我有这个: this.rho = sqrt((x*x) + (y*y) + (z*
有没有matrix3d可以像这样把矩形变成梯形的?我知道常规的 2d 矩阵变换只能以平行四边形结束,因为您只能有效地倾斜和旋转。 div { width: 300px; height:
关于这个例子(d3.j radial tree node links different sizes),我想知道是否可以在 d3.js 中混合径向树和直线树。 对于我的 jsFiddle 示例:htt
我尽量把标题写得最好,但我不确定如何准确描述这里发生的事情,所以请随时更正。 我想使用 › 直 Angular 引号 (›) 而不是 > 直 Angular 引号 (>),虽然 › 字符比 > 短,但
我正在尝试使用 CSS 创建一个具有圆边的矩形棱柱,如下图所示。 到目前为止,我已经指定了顶部和底部的边界半径。问题是我不知道如何让另一边的左右边缘向内 curl 。因此,拐 Angular 处不应有
关闭。这个问题是opinion-based 。目前不接受答案。 想要改进这个问题吗?更新问题,以便 editing this post 可以用事实和引文来回答它。 . 去年关闭。 社区去年审查了是否重
首先,我刚刚开始学习 HTML 和 CSS。 我想如何使用这段代码: https://codepen.io/martinjkelly/pen/vEOBvL .container { width:
我是一名优秀的程序员,十分优秀!