将SVG定位在浏览器窗口的中间
Positioning SVG at middle of browser window
我有以下SVG定义,即使我指定了viewBox坐标,我似乎也无法将SVG窗口定位在屏幕的正中央。
var width = 1000, height = 500;
var svg = d3.select("body").append("svg")
.attr("width", width)
.attr("height", height);
svg.append("defs").selectAll("marker")
.data(["suit", "licensing", "resolved"])
.enter().append("marker")
.attr("id", function (d) {
return d;
})
.attr("viewBox", "100 -100 1000 500")
.attr("preserveAspectRatio", "xMidYMid meet")
.attr("display", "block")
.attr("refX", 25)
.attr("refY", 0)
.attr("markerWidth", 6)
.attr("markerHeight", 6)
.attr("orient", "auto")
.append("path")
.attr("d", "M0,-5L10,0L0,5 L10,0 L0, -5")
.style("stroke", "#4679BD")
.style("opacity", "0.6");
如何将SVG定位在浏览器窗口的中心位置?
如果您试图创建一个SVG元素并将其放在页面的中心,那么我想这将是一个简单的DOM节点的中心问题。但首先必须检索SVG DOM节点,它与svg
变量不同。
使用此处描述的技术:https://davidwalsh.name/css-vertical-center
svgElement = document.getElementsByTagName("svg")[0];
svgElement.style.position = "relative";
svgElement.style.top = "50%";
svgElement.style.left = "50%";
svgElement.style.transform = "translate(-50%, -50%)";
演示:http://jsfiddle.net/cgupL5mk/
相关文章:
- 创建一个类似链接的按钮,并通过Javascript函数打开一个新的弹出窗口
- 防止Iframe窗体在新窗口中打开
- 内部分区字体大小获胜'调整浏览器窗口大小时不会随媒体查询而更改
- 调整窗口大小时,可拖动的对象会出现在容器外部
- Javascript排序的图像弹出窗口..可以't单独弹出
- 窗口大小html css
- 弹出窗口出现,然后退出
- 为什么不是't窗口.恢复正常工作吗?(javascript/jquery)
- Javascript更新孙窗口中的表单元素
- 在屏幕中间打开一个弹出窗口
- 运行一个函数,每次
到达窗口中间时更改图像
- CodeMirror - 是否可以滚动到一行,使其位于窗口中间
- 根据 window.innerWidth 在中间设置弹出窗口
- 到达(窗口)上的中间元素.滚动
- 无论分辨率如何,都可以在屏幕中间显示内联HTML/JavaScript弹出窗口
- 将SVG定位在浏览器窗口的中间
- 如何用javascript在屏幕中间显示新窗口
- 中间对齐窗口打开与窗口.在非IE浏览器中打开
- 居中&中间位置,而不考虑窗口滚动
- 在调整窗口大小时,将某些图像设置在屏幕行中间