Ich hätte gerne eine gestylte Datei input
Feld auf meiner Seite und damit in eine button
, die es vollständig abdeckt und machte es unsichtbar durch die Einstellung seiner Funktion auf 0.Datei Eingabefeld innerhalb der Taste funktioniert nicht in Firefox
Dieser Ansatz recht gut in der neuesten Version von Chrome, aber Firefox (und IE) funktioniert nicht den Datei-Dialog öffnen, wenn die Schaltfläche klicken:
http://jsfiddle.net/ch8xxvez/3/
<button style="width: 100px; height: 100px; position: relative;">Upload button
<input type="file" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; opacity: 0;"></input>
</button>
der gleiche Code funktioniert, wenn Ich ersetze das button
Element mit einem div
, aber ich würde wirklich gerne wissen, ob es eine Möglichkeit gibt, dies mit dem button
Tag in den neuesten Versionen von IE (> = 10), FF, Chrome & Edge arbeiten zu lassen.
Dass dies überhaupt funktioniert, ist ziemlich surprise g: Das sollte nicht, das HTML ist falsch. Setzen Sie es in ein div oder ähnliches Element, machen Sie die Datei 'opacity: 0; 'und formatieren Sie das Element div/similar, das ist der einfachste Weg, um das zu tun, was Sie tun wollen. Platzieren Sie keine Formulareingabeelemente in andere Formulareingabeelemente, es ergibt keinen logischen Sinn. – DanCouper
Mögliches Duplikat von [span in button, kann nicht in ff geklickt werden] (http://stackoverflow.com/questions/14689879/span-inside-button-is-not-clickable-in-ff) – BSMP