web-dev-qa-db-ger.com

So entfernen Sie den "Druckknopf" -Effekt und machen den Knopf flach, auch wenn Sie klicken

Ich habe den Button mit folgenden Stilen

button {
  background: none;
  border-color: #87db41;
  color: #87db41;
  padding: 5px 5px;
  width: 30%;
  text-align: center;
  &: active {
    border-color: @aviata-color;

  }
}
<button>Subscribe</button>

Und ich möchte den 3D-Effekt "Druckknopf" entfernen. Wie kann ich das tun? Ich benutze bootstrap auch auf meiner Site, wenn es hilft

13
AmirM

Nur ein Vorschlag.

Wenn Sie bootstrap verwenden, sehen Sie im Code für bootstrap.css Folgendes: 

.btn {
  display: inline-block;
  padding: 6px 12px;
  margin-bottom: 0;
  font-size: 14px;
  font-weight: normal;
  line-height: 1.42857143;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  -ms-touch-action: manipulation;
      touch-action: manipulation;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  background-image: none;
  border: 1px solid transparent;
  border-radius: 4px;
}
.btn:focus,
.btn:active:focus,
.btn.active:focus,
.btn.focus,
.btn:active.focus,
.btn.active.focus {
  outline: thin dotted;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}
.btn:hover,
.btn:focus,
.btn.focus {
  color: #333;
  text-decoration: none;
}
.btn:active,
.btn.active {
  background-image: none;
  outline: 0;
  -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);
          box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);
}
.btn.disabled,
.btn[disabled],
fieldset[disabled] .btn {
  cursor: not-allowed;
  filter: alpha(opacity=65);
  -webkit-box-shadow: none;
          box-shadow: none;
  opacity: .65;
}
a.btn.disabled,
fieldset[disabled] a.btn {
  pointer-events: none;
}
.btn-default {
  color: #333;
  background-color: #fff;
  border-color: #ccc;
}
.btn-default:focus,
.btn-default.focus {
  color: #333;
  background-color: #e6e6e6;
  border-color: #8c8c8c;
}
.btn-default:hover {
  color: #333;
  background-color: #e6e6e6;
  border-color: #adadad;
}
.btn-default:active,
.btn-default.active,
.open > .dropdown-toggle.btn-default {
  color: #333;
  background-color: #e6e6e6;
  border-color: #adadad;
}
.btn-default:active:hover,
.btn-default.active:hover,
.open > .dropdown-toggle.btn-default:hover,
.btn-default:active:focus,
.btn-default.active:focus,
.open > .dropdown-toggle.btn-default:focus,
.btn-default:active.focus,
.btn-default.active.focus,
.open > .dropdown-toggle.btn-default.focus {
  color: #333;
  background-color: #d4d4d4;
  border-color: #8c8c8c;
}
.btn-default:active,
.btn-default.active,
.open > .dropdown-toggle.btn-default {
  background-image: none;
}
.btn-default.disabled,
.btn-default[disabled],
fieldset[disabled] .btn-default,
.btn-default.disabled:hover,
.btn-default[disabled]:hover,
fieldset[disabled] .btn-default:hover,
.btn-default.disabled:focus,
.btn-default[disabled]:focus,
fieldset[disabled] .btn-default:focus,
.btn-default.disabled.focus,
.btn-default[disabled].focus,
fieldset[disabled] .btn-default.focus,
.btn-default.disabled:active,
.btn-default[disabled]:active,
fieldset[disabled] .btn-default:active,
.btn-default.disabled.active,
.btn-default[disabled].active,
fieldset[disabled] .btn-default.active {
  background-color: #fff;
  border-color: #ccc;
}
.btn-default .badge {
  color: #fff;
  background-color: #333;
}
<button class="btn btn-default">BTN DEFAULT</button>

Der erste Teil definiert nur die Anzeigeeigenschaften für alle "btn" -Klassenelemente . Der zweite Teil definiert spezifischere Anzeigeeinstellungen für "btn-default" -Elemente (es gibt auch btn-success btn-warning und so weiter ...). .

Wenn Sie dies anpassen möchten, kopieren Sie einfach den Code und ändern Sie den Namen in "btnCustom" und bearbeiten Sie die Einstellungen. OR fügt einfach eine benutzerdefinierte btn- * -Anzeige hinzu, wie btn-pink oder irgendetwas. Ich benutze dies oft, um verschiedene Buttons mit Farbthemen zu gestalten. In meinen Projekten habe ich manchmal Dinge wie btn-black, btn-purple, ...

Unterhalb des Codes als Beispiel für "btnCustom btnCustom-default", eine Schaltfläche, die sich nicht bewegen kann, bleiben Sie mit dem "Standard" -Farbdesign der Bootstraps statisch: 

.btnCustom {
  display: inline-block;
  padding: 6px 12px;
  margin-bottom: 0;
  font-size: 14px;
  font-weight: normal;
  line-height: 1.42857143;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  background-image: none;
  border: 1px solid transparent;
  border-radius: 4px;
}
.btnCustom:hover,
.btnCustom:focus,
.btnCustom.focus {
  text-decoration: none;
}
.btnCustom:active,
.btnCustom.active {
  background-image: none;
}
.btnCustom.disabled,
.btnCustom[disabled],
fieldset[disabled] .btnCustom{
  cursor: not-allowed;
  filter: alpha(opacity=65);
  opacity: .65;
}
a.btnCustom.disabled,
fieldset[disabled] a.btnCustom{
  pointer-events: none;
}
.btnCustom-default {
  color: #333;
  background-color: #fff;
  border-color: #ccc;
}
.btnCustom-default:focus,
.btnCustom-default.focus {
  color: #333;
}
.btnCustom-default:hover {
  color: #333;
}
.btnCustom-default:active,
.btnCustom-default.active,
.open > .dropdown-toggle.btnCustom-default {
  color: #333;
}
.btnCustom-default:active:hover,
.btnCustom-default.active:hover,
.open > .dropdown-toggle.btnCustom-default:hover,
.btnCustom-default:active:focus,
.btnCustom-default.active:focus,
.open > .dropdown-toggle.btnCustom-default:focus,
.btnCustom-default:active.focus,
.btnCustom-default.active.focus,
.open > .dropdown-toggle.btnCustom-default.focus {
  color: #333;
}
.btnCustom-default:active,
.btnCustom-default.active,
.open > .dropdown-toggle.btnCustom-default {
  background-image: none;
}
.btnCustom-default.disabled,
.btnCustom-default[disabled],
fieldset[disabled] .btnCustom-default,
.btnCustom-default.disabled:hover,
.btnCustom-default[disabled]:hover,
fieldset[disabled] .btnCustom-default:hover,
.btnCustom-default.disabled:focus,
.btnCustom-default[disabled]:focus,
fieldset[disabled] .btnCustom-default:focus,
.btnCustom-default.disabled.focus,
.btnCustom-default[disabled].focus,
fieldset[disabled] .btnCustom-default.focus,
.btnCustom-default.disabled:active,
.btnCustom-default[disabled]:active,
fieldset[disabled] .btnCustom-default:active,
.btnCustom-default.disabled.active,
.btnCustom-default[disabled].active,
fieldset[disabled] .btnCustom-default.active {
}
.btnCustom-default .badge {
  color: #fff;
  background-color: #333;
}
<button class="btnCustom btnCustom-default">BTNCUSTOM DEFAULT</button>

Das sieht ziemlich kompliziert aus, oder langwierig. Aber damit können Sie Ihren eigenen "bootstrap-like" -Klassenstil erstellen, der dann einfach wiederverwendbar ist. Speichern Sie Ihre Änderungen in einer "customBootstrap.css" -Datei und fügen Sie sie Ihrer hinzu Projekt.

Hoffe das hilft ;)

6
Julo0sS

Verwenden Sie folgende CSS-Regel:

:active { border-style: outset;}

button {
  background: none;
  border-color: #87db41;
  color: #87db41;
  padding: 5px 5px;
  width: 30%;
  text-align: center;
  outline: none;
}
button:active {
  border-style: outset;
}
<button>Subscribe</button>

Auch entferne ich die Kontur von der aktivierten Schaltfläche.

5
vp_arth

Standardmäßig ruft button die Eigenschaft -webkit-appearance: button oder eine andere, vom Browser abhängige Eigenschaft auf. 

Sie können diesen Stil auf verschiedene Arten zurücksetzen.

Wenn Sie border: none; oder sogar border-style: outset; verwenden, wird die appearance in none.

2
Joel Almeida

wenn Sie bootstrap verwenden, verwenden Sie bitte die Bootstrap-Klasse btn , btn-primary . Ich hoffe es hilft dir.

.btn {
    -webkit-border-radius: 0px;
    -moz-border-radius: 0px;
    -ms-border-radius: 0px;
    -o-border-radius: 0px;
    border-radius: 0px;
    outline: none;
    border: none;

}
.btn:active {
  border-style: outset;
  border: none;
}


<button class="btn btn-primary">Subscribe</button>
1

Setzen Sie einfach border-style auf solid und fügen Sie einige active/focus-Zustände hinzu 

button {
  background: none;
  border-style: solid;
  border-color: #87db41;
  color: #87db41;
  padding: 5px 5px;
  width: 30%;
  text-align: center;
  &: active {
    border-color: @aviata-color;

  }
}

button.active.focus, button.active:focus,
button.focus, button:active.focus, 
button:active:focus, button:focus {
  outline: none;
  box-shadow: none;
  background-color: white;
}
<button>Subscribe</button>

1
CeeJay

Füge einfach diese CSS-Zeile hinzu button {outline: none !important;}

0