Javascript 使用ng样式编辑多类div AngularJS上一个类的属性

Javascript 使用ng样式编辑多类div AngularJS上一个类的属性,javascript,html,css,angularjs,Javascript,Html,Css,Angularjs,这是AngularJS 1.5(不是2) 我有一个标记,它有一个默认类和一个仅应用于变量值的类。我使用ng类来切换前面提到的后一个类 基于相同的变量值,我想切换默认类中的一个属性。我正在使用ng样式尝试切换此选项 如何知道或设置ng样式与哪个类交互?或者是否有其他/更好的方法来做到这一点?我希望在HTML中保持逻辑内联,而不是在控制器中编辑类 我的HTML: <div class="default-class" ng-style="{flex-direction: Contro

这是AngularJS 1.5(不是2)

我有一个
标记,它有一个默认类和一个仅应用于变量值的类。我使用ng类来切换前面提到的后一个类

基于相同的变量值,我想切换默认类中的一个属性。我正在使用ng样式尝试切换此选项

如何知道或设置ng样式与哪个类交互?或者是否有其他/更好的方法来做到这一点?我希望在HTML中保持逻辑内联,而不是在控制器中编辑类

我的HTML:

<div class="default-class" 
     ng-style="{flex-direction: Controller.isMobile() ? 'column-reverse' : 'row'}"
     ng-class="{'sometimes-class': !Controller.isMobile()}">
    ...
</div>
我正试图编辑
默认类中的
弹性方向

只需从默认类中删除弹性方向即可

.default-class{
    display: flex;
} 

我相信您不能在ng样式上使用该运算符,但请不要引用我的话,无论如何,您可以使用该运算符:

ng-style="Controller.isMobile() && {'flex-direction':'column-reverse'} || {'flex-direction': 'row'}"
这就应该做到了,我用一个简单的布尔值和文本颜色制作了一个js小提琴来说明:

您也可以检查此问题:

希望有帮助。

根据,我的语法对于Angular 1.1.5+是正确的

虽然我仍然不确定在同一范围内有其他类时是否可以使用ng show切换CSS属性,但我能够解决在CSS中使用媒体查询的问题

在我的问题中,我特别希望在安装程序以移动分辨率运行时切换(
Controller.isMobile()
)。因此,我只是直接应用了该属性

(Sass中的示例)

具体地说,在我的例子中,
Controller.isMobile()
实际上是一种简化,其中所讨论的代码通过注入工厂传递给控制器,注入工厂的工作是确定屏幕分辨率。在这种情况下,这个工厂不是我能接触到的。是否该注入停止了
ng show
的适当切换?(尽管没有
ng show
,但这种注入式方法似乎在整个HTML中都得到了成功的使用)


我的具体问题已通过CSS中的媒体查询得到解决,但在单个
div
上使用多个类的
ng show
的总体问题仍然存在。

这不起作用。柔性方向仍然不会基于Controller.isMobile()进行切换。
ng-style="Controller.isMobile() && {'flex-direction':'column-reverse'} || {'flex-direction': 'row'}"
.default-class{
    display: inline-flex;
    flex-direction: row;

    @include respond-to(mobile) {
        flex-direction: column-reverse;
    }
}