无法更改 Angular UI 中复选框按钮的背景颜色
Cannot change background color of checkbox button in Angular UI
In this plunk 我有一个 Angular UI 复选框按钮,激活时(即按下)需要显示黄色背景和红色字体。这意味着如果您点击多次,颜色应该从黄色背景变为蓝色背景等等。尽管如此,由于当您单击按钮时具有焦点,它不会改变颜色并且背景始终为蓝色。如何解决这个问题?
HTML
<style>
.my-active-class {
background-color: yellow;
color: red;
}
</style>
<div ng-controller="ButtonsCtrl">
<buttondir></buttondir>
</div>
Javascript
var app = angular.module('ui.bootstrap.demo', ['ngAnimate', 'ui.bootstrap']);
app.controller('ButtonsCtrl', function($scope) {
});
app.directive('buttondir', function (uibButtonConfig) {
uibButtonConfig.activeClass = 'my-active-class';
var directive = {};
directive.restrict = 'EA';
directive.scope = {
control: '='
};
directive.template = '<button type="button" class="btn btn-primary" ng-model="singleModel" uib-btn-checkbox ' +
' btn-checkbox-true="1" btn-checkbox-false="0"> Single Toggle </button>';
directive.link = function (scope, element, attrs) {
scope.singleModel = 1;
};
return directive;
});
您好,请在此处查找更新的答案!
问题是 .btn-primary:focus
也在申请 .my-active-class
所以为了解决这个问题,我默认将 bootstrap class 覆盖为 .my-active-class
.my-active-class, .my-active-class:focus {
background-color: yellow;
color: red;
}
请在这里找到工作的插件:http://plnkr.co/edit/PuNRtiTZ25JV0zJL1UCn?p=preview
干杯!
In this plunk 我有一个 Angular UI 复选框按钮,激活时(即按下)需要显示黄色背景和红色字体。这意味着如果您点击多次,颜色应该从黄色背景变为蓝色背景等等。尽管如此,由于当您单击按钮时具有焦点,它不会改变颜色并且背景始终为蓝色。如何解决这个问题?
HTML
<style>
.my-active-class {
background-color: yellow;
color: red;
}
</style>
<div ng-controller="ButtonsCtrl">
<buttondir></buttondir>
</div>
Javascript
var app = angular.module('ui.bootstrap.demo', ['ngAnimate', 'ui.bootstrap']);
app.controller('ButtonsCtrl', function($scope) {
});
app.directive('buttondir', function (uibButtonConfig) {
uibButtonConfig.activeClass = 'my-active-class';
var directive = {};
directive.restrict = 'EA';
directive.scope = {
control: '='
};
directive.template = '<button type="button" class="btn btn-primary" ng-model="singleModel" uib-btn-checkbox ' +
' btn-checkbox-true="1" btn-checkbox-false="0"> Single Toggle </button>';
directive.link = function (scope, element, attrs) {
scope.singleModel = 1;
};
return directive;
});
您好,请在此处查找更新的答案!
问题是 .btn-primary:focus
也在申请 .my-active-class
所以为了解决这个问题,我默认将 bootstrap class 覆盖为 .my-active-class
.my-active-class, .my-active-class:focus {
background-color: yellow;
color: red;
}
请在这里找到工作的插件:http://plnkr.co/edit/PuNRtiTZ25JV0zJL1UCn?p=preview
干杯!