【发布时间】:2018-01-11 15:42:00
【问题描述】:
我有以下 HTML。在这种情况下,它有一个按钮来切换错误消息,但在现实生活中这将是动态的
<md-card>
<md-card-content layout-padding>
<div class="subtitle"><span translate="allocation"></span></div>
<div><md-button ng-click="test = !test">Testing</md-button></div>
<div class="infoMessages" ng-show="test">
Error
</div>
</md-card-content>
</md-card>
<md-card>
<md-card-content layout-padding>
<div class="subtitle"><span translate="allocation"></span></div>
<div><md-button ng-click="test = !test">Testing</md-button></div>
<div class="infoMessages" ng-show="test">
Error
</div>
</md-card-content>
</md-card>
现在我尝试在错误可见时将 md 卡的边框颜色设置为红色,这等于 .infoMessages 类在 md-card 中可见。
我尝试了一些 scss 配置,但似乎无法选择我的父母。我认为这很接近,但我不确定。
md-card {
md-card-content + .infoMessages & {
border: 1px solid red;
}
}
测试用代码笔:https://codepen.io/cskiwi/pen/jYxyqy
我开始想知道这是否可能,有什么建议吗? 无论如何已经感谢您的阅读!
你好,格伦
【问题讨论】:
-
这在 css 中是不可能的,你将如何使
.infoMessages可见?为此,您将需要 javascript -
或者只是改变结构,将
.infoMessages放在md-card-content之外,也许在一个新标签内 -
或者也许在 md-card-content 上使用 ng-class="{'error': test1 === true}" 并应用你的风格