Kabul edilen cevabın kodu çoğu durumda çalışır, ancak gerçekten bir bağlantı gibi davranan bir düğme almak için biraz daha fazla koda ihtiyacınız vardır. Firefox'ta (Mozilla) odaklanmış düğmelerin stilini elde etmek özellikle zor.
Aşağıdaki CSS, bağlantıların ve düğmelerin aynı CSS özelliklerine sahip olmasını ve tüm yaygın tarayıcılarda aynı şekilde davranmasını sağlar:
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;
}
}
Yukarıdaki örnek yalnızca değiştiriliyor button
okunabilirliği geliştirmek için öğeleri , ancak değiştirmek input[type="button"], input[type="submit"]
ve input[type="reset"]
öğeler de kolayca genişletilebilir . Sadece belirli düğmelerin çapa gibi görünmesini istiyorsanız, bir sınıf da kullanabilirsiniz.
Görmek Canlı bir demo için bu JSFiddle'a .
Bunun düğmelere varsayılan bağlantı stilini uyguladığını da unutmayın (örn. Mavi metin rengi). Dolayısıyla, metin rengini veya çapa ve düğmelerin başka bir şeyini değiştirmek istiyorsanız, bunu yapmalısınız. yukarıdaki CSS'den sonra .
Bu yanıttaki orijinal kod (snippet'e bakın) tamamen farklı ve eksikti.
/* 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;
}