Wie man einen … macht in Bootstrap wie ein normaler Link in Nav-Tabs aussehen?

Lesezeit: 6 Minuten

Benutzer-Avatar
meustrus

Ich arbeite in (ehemals Twitter) Bootstrap 2 und wollte Schaltflächen so gestalten, als wären sie normale Links. Allerdings nicht nur irgendwelche normalen Links; diese gehen in a <ul class="nav nav-tabs nav-stacked"> Container. Das Markup wird wie folgt enden:

<form action="..." method="post">
  <div class="row-fluid">
    <!-- Navigation for the form -->
    <div class="span3">
      <ul class="nav nav-tabs nav-stacked">
        <li><button type="submit" name="op" value="Link 1">Link 1</button></li>
        <li><button type="submit" name="op" value="Link 2">Link 2</button></li>
        <!-- ... -->
      </ul>
    </div>
    <!-- The actual form -->
    <div class="span9">
      <!-- ... -->
    </div>
  </div>
</form>

Hat Bootstrap eine Möglichkeit, diese zu erstellen <button>s sehen aus wie sie tatsächlich waren <a>s?

Benutzer-Avatar
SW4

Wie in der offiziellen Dokumentation vermerktwenden Sie einfach die Klasse(n) an btn btn-link:

<!-- Deemphasize a button by making it look like a link while maintaining button behavior -->
<button type="button" class="btn btn-link">Link</button>

Zum Beispiel mit dem von Ihnen bereitgestellten Code:

<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.1/css/bootstrap.min.css" rel="stylesheet" />


<form action="..." method="post">
  <div class="row-fluid">
    <!-- Navigation for the form -->
    <div class="span3">
      <ul class="nav nav-tabs nav-stacked">
        <li>
          <button class="btn btn-link" role="link" type="submit" name="op" value="Link 1">Link 1</button>
        </li>
        <li>
          <button class="btn btn-link" role="link" type="submit" name="op" value="Link 2">Link 2</button>
        </li>
        <!-- ... -->
      </ul>
    </div>
    <!-- The actual form -->
    <div class="span9">
      <!-- ... -->
    </div>
  </div>
</form>

  • Dadurch sieht es nicht mehr wie ein Knopf aus. Es wird jedoch nicht wie gewünscht im ul.nav-stacked-Markup angezeigt. Das CSS für dieses Markup scheint nur mit zu funktionieren <a> Stichworte…

    – meustrus

    14. November 2013 um 19:36 Uhr

  • Wird anders angezeigt als Links.

    – Ciro Santilli Путлер Капут 六四事

    5. Oktober 2014 um 9:35 Uhr

  • in Bootstrap 3 Schaltflächen, die so gestaltet sind sehen wie Links, aber sie haben zu viel Polsterung um sich herum, was das Layout durcheinander bringt. ABER Sie können das beheben, indem Sie eine kleine Menge CSS hinzufügen (siehe Antwort von @mcNux unten).

    – Martin CR

    22. Februar 2020 um 17:21 Uhr


Lassen Sie einfach einen normalen Link wie eine Schaltfläche aussehen 🙂

<a href="#" role="button" class="btn btn-success btn-large">Click here!</a>

“Rolle” innerhalb eines Href-Codes lässt es wie eine Schaltfläche aussehen, natürlich können Sie weitere Variablen wie Klasse hinzufügen.

  • Das ist nützlich, beantwortet aber nicht die gestellte Frage.

    – meustrus

    6. Oktober 2014 um 14:41 Uhr

  • I wanted to style buttons as though they were normal links das ist das Gegenteil :S

    – SW4

    6. Dezember 2014 um 12:46 Uhr

  • role Das Attribut ist kein gültiges Attribut für die a Element. (w3.org/TR/html5/text-level-semantics.html#the-a-element)

    – Zeus

    13. April 2017 um 20:14 Uhr

  • Das ist das Gegenteil von dem, was gefragt wird

    – Kunal

    3. Mai 2018 um 20:02 Uhr

  • Das Problem bei dieser Antwort ist, dass der Schaltflächentext in diesem Fall tatsächlich wie ein Link gestaltet ist, was nicht gut ist (z. B. wenn Sie “$link-decoration: underline !default;” in Ihrer _variables.scss verwenden). Dies sollten Entwickler wahrscheinlich beachten – vielleicht wollten sie dies nicht erreichen. Der Link sollte VOLLSTÄNDIG als Button gestaltet sein.

    – Dmitri Somow

    27. April 2019 um 8:17 Uhr

Benutzer-Avatar
Rubin

Fügen Sie Ihrem Button-Tag einfach remove_button_css als Klasse hinzu. Sie können den Code für Link 1 überprüfen

.remove_button_css { 
  outline: none;
  padding: 5px; 
  border: 0px; 
  box-sizing: none; 
  background-color: transparent; 
}

Geben Sie hier die Bildbeschreibung ein

Zusätzliche Stile bearbeiten

Hinzufügen color: #337ab7; und :hover und :focus passend zu OOTB (bootstrap3)

.remove_button_css:focus,
.remove_button_css:hover {
    color: #23527c;
    text-decoration: underline;
}

  • Funktioniert perfekt. Hinzugefügt :hover und :focus für eine engere Übereinstimmung mit bootstrap3.

    – Freiheitn-m

    14. Juni 2017 um 8:09 Uhr

In Bootstrap 3 funktioniert das gut für mich:

.btn-link.btn-anchor {
    outline: none !important;
    padding: 0;
    border: 0;
    vertical-align: baseline;
}

Verwendet wie:

<button type="button" class="btn-link btn-anchor">My Button</button>

Demo

Entfernen Sie einfach die Hintergrundfarbe, Ränder und fügen Sie Hover-Effekte hinzu. Hier ist eine Geige: http://jsfiddle.net/yPU29/

<form action="..." method="post">
<div class="row-fluid">
<!-- Navigation for the form -->
<div class="span3">
  <ul class="nav nav-tabs nav-stacked">
    <li><button type="submit" name="op" value="Link 1" class="button-link">Link 1</button></li>
    <li><button type="submit" name="op" value="Link 2" class="button-link">Link 2</button></li>
    <!-- ... -->
  </ul>
</div>
<!-- The actual form -->
<div class="span9">
  <!-- ... -->
</div>
</div>
</form>

CSS:

.button-link {
background-color: transparent;
border: none;
}

.button-link:hover {
color: blue;
text-decoration: underline;
}

  • Ich habe ein paar weitere CSS-Elemente hinzugefügt, damit es genau wie ein Dropdown-Link aussieht. Insgesamt: .button-link { display: block; Breite: 100 %; Polsterung: 3px 20px; Lösche beide; Farbe: #333; Leerzeichen: nowrap; Hintergrundfarbe: transparent; Grenze: keine; Textausrichtung: links; } .button-link:hover { Hintergrundfarbe: #f5f5f5; }

    – Andy Beverly

    11. September 2014 um 23:50 Uhr


Benutzer-Avatar
Alexey Mezenin

Ich habe alle hier geposteten Beispiele ausprobiert, aber sie funktionieren nicht ohne zusätzliches CSS. Versuche dies:

<a href="http://www.google.com"><button type="button" class="btn btn-success">Google</button></a>

Funktioniert perfekt ohne zusätzliches CSS.

  • Ich habe ein paar weitere CSS-Elemente hinzugefügt, damit es genau wie ein Dropdown-Link aussieht. Insgesamt: .button-link { display: block; Breite: 100 %; Polsterung: 3px 20px; Lösche beide; Farbe: #333; Leerzeichen: nowrap; Hintergrundfarbe: transparent; Grenze: keine; Textausrichtung: links; } .button-link:hover { Hintergrundfarbe: #f5f5f5; }

    – Andy Beverly

    11. September 2014 um 23:50 Uhr


hier ist ein beispiel:

<form method="POST" > 
  <button type="submit" class=" linkish  my-1 far fa-thumbs-down fa-2x">  </button>

  <button type="submit" class=" linkish  btn btn-primary">click me</button>

</form>

und CSS-Stil:

.linkish {
    background-color: transparent!important;
    border: 0!important;
    color: blue!important;
    cursor: pointer!important;
    display: inline!important;
    margin: 0!important;
    outline: none!important;
    padding: 0!important;
    text-decoration: none!important;
}



.linkish:hover {
 text-decoration: underline!important;
}

Dies ist nur ein Beispiel, und ändern Sie es basierend auf Ihrem Fall / Ihren Anforderungen.

Ich hoffe, das ist hilfreich.

1329080cookie-checkWie man einen … macht in Bootstrap wie ein normaler Link in Nav-Tabs aussehen?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy