Я играю с SVG и у меня есть несколько проблем с позиционированием. У меня есть ряд фигур, которые содержатся в g
теге группы. Я надеялся использовать его как контейнер, чтобы я мог установить его положение x, и тогда все элементы в этой группе также переместятся. Но это не представляется возможным.
- Как большинство людей позиционирует группу элементов, которые вы хотите перемещать в тандеме?
- Есть ли концепция относительного позиционирования? например, относительно его родителя
Как упоминалось в другом комментарии,
transform
атрибутg
элемента - это то, что вам нужно. Используйтеtransform="translate(x,y)"
для перемещенияg
вокруг, и вещи внутриg
будут двигаться относительноg
.источник
Есть два способа сгруппировать несколько форм SVG и расположить группу:
Первый использовать
<g>
сtransform
атрибутом, как написал Аарон. Но вы не можете просто использоватьx
атрибут<g>
элемента.Другой способ - использовать вложенный
<svg>
элемент.Таким образом, svg # group1 вложен в #parent, а
x=10
относительно родительского svg. Тем не менее, вы не можете использоватьtransform
атрибут для<svg>
элемента, который совершенно противоположен<g>
элементу.источник
Я знаю, что это старый, но ни
<svg>
групповой тег, ни<g>
исправленная проблема, с которой я столкнулся. Мне нужно было настроить положение y тега, на котором также была анимация.Решением было использовать оба тега и:
источник