Estoy jugando con SVG y tengo algunos problemas con el posicionamiento. Tengo una serie de formas que están contenidas en la g
etiqueta del grupo. Tenía la esperanza de usarlo como un contenedor, para poder establecer su posición x y luego todos los elementos en ese grupo también se moverían. Pero eso no parece ser posible.
- ¿Cómo hace la mayoría de las personas para posicionar un grupo de elementos que desea mover en conjunto?
- ¿Existe algún concepto de posicionamiento relativo? por ejemplo, relativo a su padre
Como se mencionó en el otro comentario, el
transform
atributo en elg
elemento es lo que desea. Usetransform="translate(x,y)"
para mover elg
alrededor y las cosas dentro de lag
voluntad se moverán en relación con elg
.fuente
Hay dos formas de agrupar múltiples formas SVG y posicionar el grupo:
El primero en usar
<g>
contransform
atributo como Aaron escribió. Pero no puede simplemente usar unx
atributo en el<g>
elemento.La otra forma es usar un
<svg>
elemento anidado .De esta manera, el # group1 svg está anidado en #parent, y
x=10
es relativo al padre svg. Sin embargo, no puede usar eltransform
atributo en el<svg>
elemento, que es todo lo contrario del<g>
elemento.fuente
Sé que esto es antiguo, pero ni una
<svg>
etiqueta de grupo ni un<g>
problema resuelto. Necesitaba ajustar la posición y de una etiqueta que también tenía animación.La solución fue usar ambos y etiquetar juntos:
fuente