html - 防止svg路径溢出

标签 html css svg

我有一个简单的 SVG 图像,里面有一条线:

<svg class="icon icon-person" width="25rem" height="25rem" viewBox="0 0 200 200" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
  <style>
    path {
      stroke-width: 5 !important;
    }
  </style>
  <path d="M2.5 0 V 200"></path>
</svg>

它沿着 SVG 图像的左边框绘制一条简单的垂直线。我的 stroke-width 是常量,等于 5

为了让 path 不溢出 SVG 图像区域,我必须将 path 起点 x 坐标设置为 2.5 是其宽度的 50%。然而,每当我在 SVG 图像的边缘附近绘制一些东西时,都会感到困惑。

所以我想的是将我所有的路径包装到一些 g 元素或其他东西中,将其大小设置为 195 x 195 并偏移它距离 SVG 图像的边缘 2.5 单位,然后指定其中所有路径相对于 g 元素的位置,而不必扣除边框的 50%宽度。

问题是 g 元素无法定位,所以我被卡住了任何帮助将不胜感激。

最佳答案

您可以转换一个组的内容。

<svg class="icon icon-person" width="25rem" height="25rem" viewBox="0 0 200 200" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
  <style>
    path {
      stroke: black;
      stroke-width: 5 !important;
    }
  </style>
  <g transform="translate(2.5, 0)">
    <path d="M0 0 V 200"></path>
  </g>
</svg>

关于html - 防止svg路径溢出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49336329/

相关文章:

html - 简单的 CSS 动画,我应该在 canvas 还是 SVG 中做这个?

php - 由未点击的链接触发的事件

javascript - Canvas 图像旋转不居中

html - 在滚动条附近显示 div

css - 自定义宽度时 Woocommerce 产品布局问题

javascript - 使用 CSS 定位鼠标单击的左/右或顶部/底部

HTML5 语音合成 API 语音/语言支持

jquery - 如何仅在一页上显示 li ul 而在其他页面中 li ul 不应该可见

javascript - SVG 线端不相交

html - 从 SVG 链接到外部样式表时为 "Security restrictions"(作为图像嵌入时)