Muszę sprawić, aby przycisk wyglądał jak link przy użyciu CSS. Zmiany zostały wprowadzone, ale kiedy je kliknę, pokazuje to tak, jakby zostało wciśnięte jak w przycisku. Masz pomysł, jak to usunąć, aby przycisk działał jak link nawet po kliknięciu?
287
#
a następnie użyćevent.preventDefault()
. To paskudne, jak się łączyjavascript:void(0);
.Odpowiedzi:
źródło
button.link {...styles...}
wtedy<button class="link">Your button</button>
. Pozwala to również uniknąć używania,!important
co jest zawsze dobrym pomysłem.outline
. Niektóre przeglądarki dodają go do przycisków. Możesz ustawićoutline-color: transparent
.border-bottom
używaćtext-decoration:underline
.Kod akceptowanej odpowiedzi działa w większości przypadków, ale aby uzyskać przycisk, który naprawdę zachowuje się jak link, potrzebujesz trochę więcej kodu. Szczególnie trudne jest uzyskanie stylu skoncentrowanych przycisków bezpośrednio w przeglądarce Firefox (Mozilla).
Poniższy CSS zapewnia, że kotwice i przyciski mają te same właściwości CSS i zachowują się tak samo we wszystkich popularnych przeglądarkach:
Powyższy przykład modyfikuje tylko
button
elementy, aby poprawić czytelność, ale można go łatwo rozszerzyć również o modyfikacjęinput[type="button"], input[type="submit"]
iinput[type="reset"]
elementy. Możesz także użyć klasy, jeśli chcesz, aby tylko niektóre przyciski wyglądały jak kotwice.Zobacz JSFiddle, aby zobaczyć demo na żywo.
Należy również pamiętać, że dotyczy to domyślnego stylu zakotwiczenia przycisków (np. Niebieski kolor tekstu). Więc jeśli chcesz zmienić kolor tekstu lub cokolwiek innego z kotwic i przycisków, powinieneś to zrobić po CSS powyżej.
Oryginalny kod (patrz fragment kodu) w tej odpowiedzi był zupełnie inny i niekompletny.
Pokaż fragment kodu
źródło
outline-offset: 0;
jeśli kontur jest ustawiony na Brak?box-shadow: none
aby wyczyścić całą stylizację natext-transform: none;
Jeśli nie masz nic przeciwko użyciu bootstrapu na Twitterze , sugeruję po prostu użyć klasy link .
Mam nadzieję, że to komuś pomoże :) Miłego dnia!
źródło
spróbuj użyć pseudoklasy css
:focus
edytuj jak dla linków i wykorzystania zdarzeń onclick (nie powinieneś używać wbudowanych modułów obsługi zdarzeń javascript, ale dla uproszczenia użyję ich tutaj):
Dzięki this.href możesz nawet uzyskać dostęp do celu łącza w swojej funkcji.
return false
po prostu uniemożliwi przeglądarkom klikanie linku.jeśli javascript jest wyłączony, link będzie działał jak normalny link i po prostu się załaduje -
some/page.php
jeśli chcesz, aby twój link był martwy, gdy js jest wyłączony, użyjhref="#"
źródło
Nie można stylowo określać przycisków jako linków w różnych przeglądarkach. Próbowałem, ale w niektórych przeglądarkach zawsze występują dziwne problemy z dopełnianiem, marginesami lub czcionkami. Albo na żywo, aby przycisk wyglądał jak przycisk, lub użyj onClick i zapobiegnij domyślnemu ustawieniu łącza.
źródło
Możesz to osiągnąć za pomocą prostego css, jak pokazano w poniższym przykładzie
źródło