тестовая страница
Разметка:
<svg viewBox="0 0 400 400"  preserveAspectRatio="xMinYMin meet">
    <g>
        <circle r="70" class="circle-back" />
    </g>
</svg>
CSS
.doughnutChart{
    text-align:center;
    padding:50% 1em 0;
    position: relative;
    overflow: hidden;
    > svg{
        position: absolute;
        top: 0;
        left:0; right:0;
        margin: auto;
        g{ transform:rotate(270deg) translate(-88px, 200px); }
    }
    circle{ fill: none; }
    .circle-back { stroke:#EEE; stroke-width: 5px; }
}
Как вы можете видеть на тестовой странице, я пытаюсь расположить отрегулированный круг с некоторым радиусом, и я хочу, чтобы он располагался в середине контейнера, независимо от ширины контейнера. Было бы еще лучше, если бы круг также соответствовал высоте контейнера.
Кажется, что проблема с css translate связана с процентами в элементе g, что мешает мне просто делать translate(-50%, -50%)
Это очень упрощенная версия того, что у меня есть, поскольку в моем коде это диаграмма для пончиков, поэтому у нее есть это преобразование rotate
