【发布时间】:2020-10-13 08:43:02
【问题描述】:
我有一个简单的 SVG 图像。里面有一个圆圈,我想旋转90 度。但是正如您在 JSFiddle 示例中看到的那样,旋转的中心不在中间。我做错了什么?
svg {
background-color: #ddd;
}
.circle1 {
fill: none;
stroke-width: 20px;
stroke: #b5b5b5;
}
.circle2 {
fill: #aaa;
transform: rotate(-20deg);
stroke-width: 15px;
stroke: #71c7ff;
}
<svg height="600" width="600">
<circle class="circle1" cx="300" cy="300" r="200"></circle>
<circle class="circle2" cx="300" cy="300" r="200"></circle>
</svg>
这里是 JSFiddle 示例 https://jsfiddle.net/oxt681gr/1/
【问题讨论】:
-
变换原点:中心; ?
-
也许还有 transform-box: fill-box;
-
但是 center 它应该是旋转的默认值。
-
SVG specification 不同意。
-
太复杂了。但出于我的目的,顶部 svg 元素的旋转效果很好。
标签: css svg rotation css-transforms