Peki, teknik almak mümkün değildir :before
ve :after
sözde elemanları üzerinde çalışmak input
elemanları
Gönderen W3C :
12.1: before ve: after sözde elemanlar
Yazarlar oluşturulan içeriğin stilini ve konumunu: before ve: after sözde elemanlarıyla belirtirler. Adlarının da belirttiği gibi,: before ve: after sözde öğeleri, bir öğenin belge ağacı içeriğinden önce ve sonra içeriğin konumunu belirtir. 'Pseudo-elements ile birlikte' content 'özelliği, eklenenleri belirtir.
Bu yüzden input
etiket şeklinde düğmeler gönderdiğim bir projem vardı ve bir nedenden ötürü diğer geliştiriciler <button>
normal giriş gönderme düğmeleri yerine etiketleri kullanmamı kısıtladılar , bu yüzden bir başka çözüm buldum.span
kümenin için position: relative;
ve o zaman kesinlikle kullanılarak simge konumlandırılması :after
sözde.
Not: Demo kemanı FontAwesome 3.2.1 için içerik kodunu kullanır, bu nedenle content
özellik buna göre .
HTML
<span><input type="submit" value="Send" class="btn btn-default" /></span>
CSS
input[type="submit"] {
margin: 10px;
padding-right: 30px;
}
span {
position: relative;
}
span:after {
font-family: FontAwesome;
content: "\f004"; /* Value may need to be changed in newer version of font awesome*/
font-size: 13px;
position: absolute;
right: 20px;
top: 1px;
pointer-events: none;
}
Demo
Şimdi burada her şey burada açıklayıcı, bir mülk hakkında yani pointer-events: none;
, :after
sözde oluşturulan içeriğin üzerine gelindiğinde düğmeniz tıklanmayacaktır, bu nedenle değerini kullanmak none
, tıklama eylemini bu içerikten geçmeye zorlar .
itibaren Mozilla Geliştirici Ağı :
Öğenin, fare olaylarının hedefi olmadığını belirtmenin yanı sıra, none değeri, fare olayına öğeyi "geçmesini" ve bunun yerine o öğenin altında "her şeyi" hedeflemesini bildirir.
Kalp yazı tipini / simgesini üzerine getirin ve DemoKULLANMAYseniz ne olacağını görünpointer-events: none;