我是一名有用的助手,可以为您翻译文本。
我正在尝试通过CSS旋转一个包含SVG的单个对象。虽然已经设置了“transform-origin”,但我仍然无法使元素围绕中心旋转。
HTML:
<svg xmlns="http://www.w3.org/2000/svg" width="8.94" height="31.23" viewBox="0 0 8.94 31.23">
<defs>
<g id="el">
<rect x="1.86" y="0.2" width="5.22" height="30.82" transform="translate(-1.87 0.66) rotate(-7)"></rect>
</g>
</defs>
</svg>
<svg class="canvas">
<use x="49%" y="76%" href="#el"></use>
<use x="80%" y="63%" href="#el"></use>
<use x="5%" y="32%" href="#el"></use>
<use x="80%" y="12%" href="#el"></use>
</svg>
CSS:
.canvas {
position: absolute;
height: 100%;
width: 100%;
top: 0;
left: 0;
bottom: 0;
right: 0;
}
.canvas use:nth-child(4){
fill: red;
transform-origin: 50% 50%;
transform: rotate(20deg);
}
我制作了一个JSfiddle来澄清问题。我想要做的是将红色元素绕其自身中心旋转20度。但它仍然围绕左上角旋转。