diff --git a/less/buttons.less b/less/buttons.less
index cda87cb8cbde6c2c84116d27d8cc0ce4d888b8e1..05bd89d08128cf36bb894325a2ece4934ea57f74 100644
--- a/less/buttons.less
+++ b/less/buttons.less
@@ -23,13 +23,15 @@
   &,
   &:active,
   &.active {
-    &:focus {
+    &:focus,
+    &.focus {
       .tab-focus();
     }
   }
 
   &:hover,
-  &:focus {
+  &:focus,
+  &.focus {
     color: @btn-default-color;
     text-decoration: none;
   }
diff --git a/less/mixins/buttons.less b/less/mixins/buttons.less
index 409f8f20a414168dc03a0d151c981aae1e1b9cba..92d8a056cd3b73c82937b0c9d478a86baa6d142a 100644
--- a/less/mixins/buttons.less
+++ b/less/mixins/buttons.less
@@ -10,6 +10,7 @@
 
   &:hover,
   &:focus,
+  &.focus,
   &:active,
   &.active,
   .open > .dropdown-toggle& {
@@ -28,6 +29,7 @@
     &,
     &:hover,
     &:focus,
+    &.focus,
     &:active,
     &.active {
       background-color: @background;