javascript - SVG 元素不遵守 CSS 命令,它总是位于屏幕中间,我不知道为什么?

标签 javascript html css svg

我将一个包含多个 SVG 元素的网页放在一起,即使 x,y 坐标设置为 0,0 并且使用的 CSS 指示它位于页面左侧,SVG 只是位于在中间。

这是指向在 jsFiddle 中复制的问题的链接:

https://jsfiddle.net/wf806vvL/

这是 HTML:

svg {
  float:left;
  content-align: left;
  padding-left: 0;
}
<svg xmlns="http://www.w3.org/2000/svg" id="circleGroup" width="100%" height="100vh" viewBox="0 0 700 1000">
  <circle id="circle" class="circle" cx="100" cy="125" r="20" fill="#1dacf9" stroke="black" stroke-width="2"/>
</svg>

我已经尝试了所有与我可以尝试的位置相关的不同 CSS 样式,以及将 SVG 保存在一个 div 中并对其应用定位,这些都不起作用。

我对 CSS 和 HTML 的了解有限,这意味着我已经没有什么可以尝试的了,因为它可能很明显是我遗漏的东西,所以我想我应该把它贴在这里。

有人知道为什么会这样吗?

最佳答案

圆圈未位于 viewbox 的中心。

使用 viewBox="0 0 700 1000",您的圆的中心坐标将为 cx="350"cy="500"

svg {
  width: 25%;
  /* for demo */
  margin:auto;
  display:block;
  border: 1px solid grey;
}
<svg xmlns="http://www.w3.org/2000/svg" id="circleGroup" viewBox="0 0 700 1000">

  <circle id="circle" class="circle" cx="350" cy="500" r="20" fill="#1dacf9" stroke="black" stroke-width="2" />
</svg>

关于javascript - SVG 元素不遵守 CSS 命令,它总是位于屏幕中间,我不知道为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41856026/

相关文章:

php - 如何将任意大小的 Javascript 数组传递给 PHP

javascript - 如何隐藏 jQuery 中仅包含隐藏 DIV 的元素?

JQuery QueryBuilder 不工作

css - Xamarin Studio 从 SASS 或 LESS 文件生成 CSS

css - Accordion 菜单中的框阴影

jquery - 无法使平面 ui 标签正常工作

javascript - 无法从通过 php 发送的 ajax 响应更新 div 文本

javascript - Angularjs:在自定义指令中,我需要读取使用 ngClick 方法传递的参数

javascript - 将 jQuery 变量简化为循环函数

javascript - 框架和 iframe 是否有独立的 javascript 上下文?