Kode jawaban yang diterima berfungsi untuk sebagian besar kasus, tetapi untuk mendapatkan tombol yang benar-benar berperilaku seperti tautan, Anda memerlukan sedikit kode lagi. Sangat sulit untuk mendapatkan penataan tombol yang terfokus tepat di Firefox (Mozilla).
CSS berikut memastikan bahwa jangkar dan tombol memiliki properti CSS yang sama dan berperilaku sama pada semua browser umum:
button {
align-items: normal;
background-color: rgba(0,0,0,0);
border-color: rgb(0, 0, 238);
border-style: none;
box-sizing: content-box;
color: rgb(0, 0, 238);
cursor: pointer;
display: inline;
font: inherit;
height: auto;
padding: 0;
perspective-origin: 0 0;
text-align: start;
text-decoration: underline;
transform-origin: 0 0;
width: auto;
-moz-appearance: none;
-webkit-logical-height: 1em; /* Chrome ignores auto, so we have to use this hack to set the correct height */
-webkit-logical-width: auto; /* Chrome ignores auto, but here for completeness */
}
/* Mozilla uses a pseudo-element to show focus on buttons, */
/* but anchors are highlighted via the focus pseudo-class. */
@supports (-moz-appearance:none) { /* Mozilla-only */
button::-moz-focus-inner { /* reset any predefined properties */
border: none;
padding: 0;
}
button:focus { /* add outline to focus pseudo-class */
outline-style: dotted;
outline-width: 1px;
}
}
Contoh di atas hanya memodifikasi button
elemen untuk meningkatkan keterbacaan, tetapi dapat dengan mudah diperluas untuk memodifikasi input[type="button"], input[type="submit"]
dan input[type="reset"]
elemen juga. Anda juga bisa menggunakan kelas, jika Anda ingin membuat hanya tombol tertentu yang terlihat seperti jangkar.
Lihat JSFiddle ini untuk demo langsung.
Harap perhatikan juga bahwa ini menggunakan penataan jangkar standar untuk tombol (mis. Warna teks biru). Jadi jika Anda ingin mengubah warna teks atau hal lain dari jangkar & tombol, Anda harus melakukan ini setelah CSS di atas.
Kode asli (lihat cuplikan) dalam jawaban ini benar-benar berbeda dan tidak lengkap.
/* Obsolete code! Please use the code of the updated answer. */
input[type="button"], input[type="button"]:focus, input[type="button"]:active,
button, button:focus, button:active {
/* Remove all decorations to look like normal text */
background: none;
border: none;
display: inline;
font: inherit;
margin: 0;
padding: 0;
outline: none;
outline-offset: 0;
/* Additional styles to look like a link */
color: blue;
cursor: pointer;
text-decoration: underline;
}
/* Remove extra space inside buttons in Firefox */
input[type="button"]::-moz-focus-inner,
button::-moz-focus-inner {
border: none;
padding: 0;
}