Html SVG微调器不在原点上旋转

Html SVG微调器不在原点上旋转,html,css,animation,svg,Html,Css,Animation,Svg,我正在使用由div包装的img标记来显示svg微调器。div上有一个旋转动画。你知道为什么它不在原点旋转,为什么内联微调器重叠吗 我不能使用SVG animationTransform,因为IE不支持它。由于它是一个简单的旋转器,我希望只旋转div并获得加载效果 以下是plunkr演示: 更新: .spinner *{ width: 100%; height: 100%; } .spinner-inline *{ width: 100%; height: 1

我正在使用由
div
包装的
img
标记来显示svg微调器。
div
上有一个旋转动画。你知道为什么它不在原点旋转,为什么内联微调器重叠吗

我不能使用SVG animationTransform,因为IE不支持它。由于它是一个简单的旋转器,我希望只旋转div并获得加载效果

以下是plunkr演示:

更新:

.spinner *{
    width: 100%;
    height: 100%;
}


.spinner-inline *{
    width: 100%;
    height: 100%;
}

为子元素添加上面的CSS有一点帮助,但内联微调器仍然不能在原点旋转。

我查看了您的plunkr,虽然我不相信我能回答原点问题,但内联微调器是一个简单的修复方法

您将
宽度
高度
设置为
20px
(仅为其实际尺寸的一半)

微调器内联设置为:

.spinner-inline{
  display: inline-block;
  height: 40px;
  width: 40px;
  animation: spin 2s linear infinite;
  transform-origin: 50% 50%;
}
它们将不再重叠


*或者,设置此选项似乎也会使微调器在原点旋转。

我查看了您的plunkr,虽然我不相信我能回答原点问题,但内联微调器是一个简单的解决方案

您将
宽度
高度
设置为
20px
(仅为其实际尺寸的一半)

微调器内联设置为:

.spinner-inline{
  display: inline-block;
  height: 40px;
  width: 40px;
  animation: spin 2s linear infinite;
  transform-origin: 50% 50%;
}
它们将不再重叠


*或者,设置此选项看起来也会使微调器在原点上旋转。

内联微调器在变换原点中有偏移的原因是默认的
行高度(
28px
)占据了您的高度,因此重置以解决原点问题:

.spinner-inline{
  display: inline-block;
  height: 10px;
  line-height:0;/*****/
  width: 10px;
  animation: spin 2s linear infinite;
  transform-origin: 50% 50%;
}

内联微调器在变换原点中有偏移的原因是默认的
线高度(
28px
)占据了您的高度,因此重置以解决原点问题:

.spinner-inline{
  display: inline-block;
  height: 10px;
  line-height:0;/*****/
  width: 10px;
  animation: spin 2s linear infinite;
  transform-origin: 50% 50%;
}

您可以使用在IE中启用animateTransform。您可以使用在IE中启用animateTransform。