在Google Chrome上显示svg图像
Display an svg image on Google Chrome
我遇到了一个问题,当我想在谷歌浏览器上显示一个SVG图像与库D3.js。
代码如下:
var svg = d3.select("body").append("embed");
svg.attr("src","img/drawing.svg").attr("type","image/svg+xml");
此代码适用于Firefox,但不适用于Google Chrome(同样的问题,如果我使用对象而不是嵌入)。
但是如果我添加这个样式到我的SVG图片:attr("style", "display:block")
,我的图片显示在谷歌浏览器。
…有人能给我解释一下发生了什么吗?因为这样显示图像很难看
根据w3schools,嵌入标签"在HTML4和XHTML中不支持(但在HTML5中允许)"。您应该使用object标记。以下代码片段适用于我的Chrome:
var svg = d3.select("body").append("object");
svg.attr("data", "http://upload.wikimedia.org/wikipedia/commons/6/6b/Bitmap_VS_SVG.svg")
.attr("type","image/svg+xml");
相关文章:
- 在轴上旋转SVG图像
- 如何在悬停时更改SVG图像的颜色
- Javascript:如何将SVG图像放入数组中
- 将 src 内容动态加载到 SVG 图像
- 根据窗口大小调整 HTML 中 SVG 图像的大小
- 在web浏览器中保存操作过的SVG图像
- Firefox使用drawImage将SVG图像渲染到HTML5画布时出错
- 拉伸和旋转SVG图像的特定部分
- 缩放SVG图像以适应父对象,并在不同的实例中更改仪表颜色
- AngularJS:如何将ng-click绑定到使用嵌入或对象元素插入的SVG图像
- 更改 xlink:当图像在 D3js 中未退出时 svg 图像的 href 链接
- 如何检查 svg 图像的大小
- 将 SVG 图像绘制到 CanvasRenderingContext2D 中
- 是否可以使用 JavaScript 获取 SVG 图像的 XML
- 如何在不看到“闪烁”的情况下更新 SVG 图像
- 如何延迟加载 css 中给出的 svg 图像
- svg 图像被添加到 DOM 中,但除非在 Firebug 中触摸,否则不可见
- 如何将 svg 图像附加到另一个 svg 图像的矩形元素
- 屏幕闪烁与 mxGraph 和 svg 图像
- D3.js SVG 图像拖动有效,但引发许多类型错误