10

我想用箭头显示方向,并考虑使用标准离子箭头作为方向。我可以以某种方式将向上箭头旋转到任何方向吗?

ion-arrow-up-a

这是来自以下评论的尝试

<i class="icon ion-arrow-up-a" rotate degrees="90"></i>


angular.module('app.customDirectives', []).directive('rotate', function() {
      return {
            link: function(scope, element, attrs) {
                // watch the degrees attribute, and update the UI when it changes
                scope.$watch(attrs.degrees, function(rotateDegrees) {
//                  console.log(rotateDegrees);
                    //transform the css to rotate based on the new rotateDegrees
                    element.css({
                        '-moz-transform': 'rotate(' + rotateDegrees + 'deg)',
                        '-webkit-transform': 'rotate(' + rotateDegrees + 'deg)',
                        '-o-transform': 'rotate(' + rotateDegrees + 'deg)',
                        '-ms-transform': 'rotate(' + rotateDegrees + 'deg)'
                    });
                });
            }
    }
});
4

4 回答 4

12

与上面类似,这就是我的做法......

HTML:

<i class="ion-arrow-up-c rotate-90">

CSS:

.rotate-90 {
  display: inline-block; 
  transform: rotate(90deg);
}
于 2016-01-04T18:07:16.007 回答
8

特别是对于 Ionic 图标 v1、v2,rotate 属性仅适用于设置为“inline”或“inline-block”的 display 属性,它也可能适用于 inline 的其他变体。

然后你可以使用 CSS 正常旋转它们

transform: rotate(90deg);
于 2018-03-20T07:35:50.310 回答
6

箭头还有其他变体:

ion-arrow-up-a
ion-arrow-right-a
ion-arrow-down-a
ion-arrow-left-a

或者...据我所知,离子框架是基于 HTML5 的,因此您可以使用 CSS 样式。

.style {
    -moz-transform: rotate(15deg);
    -webkit-transform: rotate(15deg);
    -o-transform: rotate(15deg);
    -ms-transform: rotate(15deg);
    transform: rotate(15deg);
}

如果你想要动态旋转,你必须检查这个 url

于 2015-06-16T01:02:56.797 回答
0

由于某种原因,<i>元素必须拥有display: inline-blockcss 样式才能成功旋转:

控制器代码:

$scope.angle = 90

HTML:

<i class="ion-arrow-up-c" style="display: inline-block; transform: rotate({{angle}}deg);"></i>
于 2015-12-04T05:22:53.033 回答