我正在玩SVG并且在定位方面遇到了一些问题.我有一系列形状,包含在g
组标签中.我希望像容器一样使用它,所以我可以设置它的x位置,然后该组中的所有元素也会移动.但这似乎不可能.
大多数人如何定位一组你希望同时移动的元素?
有相对定位的概念吗?例如,相对于其父母
Aaron Digull.. 256
g元素中的所有内容都相对于当前变换矩阵定位.
要移动内容,只需将转换放在g元素中:
链接:实施例从该SVG 1.1规范
g元素中的所有内容都相对于当前变换矩阵定位.
要移动内容,只需将转换放在g元素中:
链接:实施例从该SVG 1.1规范
有一个较短的替代前一个答案.SVG元素也可以通过嵌套svg元素进行分组:
两个矩形是相同的(除了颜色),但父svg元素具有不同的x值.
请参见http://tutorials.jenkov.com/svg/svg-element.html.
正如其他注释中所提到的,元素的transform
属性g
就是你想要的.使用transform="translate(x,y)"
移动g
内部和周围的事物g
会相对于移动g
.
有两种方法可以对多个SVG形状进行分组并定位组:
第一个
与transform
属性一起使用的Aaron写道.但是你不能只x
在
元素上使用一个属性.
另一种方法是使用嵌套
元素.
这样,#group1 svg嵌套在#parent中,并且x=10
相对于父svg.但是,你不能transform
在
元素上使用属性,这与
元素完全相反.