旋转时IE9和IE10中的图标消失

时间:2016-12-07 06:33:05

标签: html css internet-explorer cross-browser internet-explorer-9

我在使用transform: rotate(180deg)时在IE9,IE10和IOS 8中遇到问题,图标正在消失。

我尝试使用-ms供应商前缀但没有用。

JSFIDDLE
Test on Modern.ie

.down-arrow {
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
  -ms-transform-origin: center;
  transform-origin: center;
  width: 16px;
  height: 16px;
}
svg {
  max-height: 100%;
  max-width: 100%;
  vertical-align: top;
}
<div style="display:none">
  <svg>
    <symbol id="down-arrow">
      <path fill-rule="evenodd" clip-rule="evenodd" d="M4.527,6.854L0.202,1.042c-0.269-0.288-0.269-0.754,0-1.042h8.621
c0.269,0.288,0.269,0.755,0,1.042" />
    </symbol>
  </svg>
</div>
<div class="down-arrow">
  <svg>
    <use xlink:href="#down-arrow"></use>
  </svg>
</div>

我认为这不仅适用于SVG,也适用于使用html元素。检查这个例子小提琴。

.down-arrow {
  width: 0;
  height: 0;
  border-width: 12px;
  border-color: #000 transparent transparent transparent;
  border-style: solid;
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
  -ms-transform-origin: center;
  transform-origin: center;
}
<div class="down-arrow"></div>

1 个答案:

答案 0 :(得分:4)

您可以使用SVG for Everybody

我在这里创建了测试笔:http://codepen.io/mkdizajn/pen/PbyZoM我在WIN 7和IE9上测试过,图像在这里:

https://app.crossbrowsertesting.com/public/ic7b2b4fec0f754a/livetests/6573248/snapshots/z1482ad843f3e76a100f

我唯一做的就是我包含了外部JS文件:

https://cdnjs.cloudflare.com/ajax/libs/svg4everybody/2.1.3/svg4everybody.min.js

并致电

svg4everybody();

希望有所帮助