Heim  >  Artikel  >  Web-Frontend  >  So ändern Sie den Standardstil der Datei-Upload-Schaltfläche mithilfe von reinem HTML und CSS

So ändern Sie den Standardstil der Datei-Upload-Schaltfläche mithilfe von reinem HTML und CSS

伊谢尔伦
伊谢尔伦Original
2016-11-22 15:22:531529Durchsuche

Wenn Sie es jemals versucht haben, wissen Sie, dass die Implementierung einer einheitlichen Schaltfläche zum Hochladen von Dateien mit reinen CSS-Stilen und HTML problematisch sein kann. Schauen Sie sich unten die Screenshots verschiedener Browser an. Es ist offensichtlich, dass sie sehr unterschiedlich aussehen.

Unser Ziel ist es, eine einfache Schaltfläche zum Hochladen von Dateien zu erstellen, die in reinem CSS implementiert ist und in allen Browsern das gleiche Aussehen und Layout hat. Wir können dies tun:

Schritt 1. Erstellen Sie ein einfaches HTML-Tag

<div class="fileUpload btn btn-primary">
    <span>Upload</span>
    <input type="file" class="upload" />
</div>

Schritt 2: CSS: Etwas knifflig

.fileUpload {
    position: relative;
    overflow: hidden;
    margin: 10px;
}
 
.fileUpload input.upload {  position: absolute;
    top: 0;
    right: 0;
    margin: 0;
    padding: 0;
    font-size: 20px;
    cursor: pointer;
    opacity: 0;
    filter: alpha(opacity=0);
}

Der Einfachheit halber verwende ich eine Schaltfläche mit angewendetem BootstrapCSS-Stil (div.file-upload).

Demo:

So ändern Sie den Standardstil der Datei-Upload-Schaltfläche mithilfe von reinem HTML und CSS

Upload-Button, zeigt die ausgewählte Datei

Leider kann dies mit reinem CSS nicht durchgeführt werden. Wenn Sie die ausgewählte Datei jedoch wirklich anzeigen möchten, kann Ihnen das folgende JavaScript-Snippet helfen.

JavaScript:

document.getElementById("uploadBtn").onchange = function () {
    document.getElementById("uploadFile").value = this.value;
};

DOM:

<input id="uploadFile" placeholder="Choose File" disabled="disabled" />
<div class="fileUpload btn btn-primary">
    <span>Upload</span>
    <input id="uploadBtn" type="file" class="upload" />
</div>

So ändern Sie den Standardstil der Datei-Upload-Schaltfläche mithilfe von reinem HTML und CSS


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn