Heim >Web-Frontend >CSS-Tutorial >Wie kann ich benutzerdefinierte Dateieingabeschaltflächen ohne JavaScript gestalten?

Wie kann ich benutzerdefinierte Dateieingabeschaltflächen ohne JavaScript gestalten?

Barbara Streisand
Barbara StreisandOriginal
2024-12-13 19:33:11308Durchsuche

How Can I Style Custom File Input Buttons Without JavaScript?

Benutzerdefiniertes Dateieingabe-Styling: Ein Label-basierter Ansatz

Viele Entwickler haben Schwierigkeiten, das Erscheinungsbild von Datei-Upload-Schaltflächen anzupassen. Während JavaScript eine Lösung bieten kann, kann es auch zusätzliche Herausforderungen mit sich bringen. Glücklicherweise gibt es einen einfacheren, plattformübergreifenderen Ansatz mit der HTML-Funktion

Vorteile der Verwendung von

Die Verwendung von

  • Kein JavaScript erforderlich: Das
  • Freiheit beim Styling: Im Gegensatz zu einigen browserspezifischen Stylingtechniken ist
  • Semantischer Code: Das

Implementierung

Um diesen Ansatz zu implementieren, führen Sie die folgenden Schritte aus:

  1. Verpacken Sie Ihre versteckte Datei-Upload-Eingabe in ein
  2. Stilen Sie das
  3. Positionieren Sie die Eingabe absolut außerhalb des sichtbaren Bereichs, um eine Benutzerinteraktion mit der Standardschaltfläche zu verhindern.

Beispielcode

<label class="myLabel">
    <input type="file" required>
    <span>My Label</span>
</label>
label.myLabel input[type="file"] {
    position:absolute;
    top: -1000px;
}

/***** Example custom styling *****/
.myLabel {
    border: 2px solid #AAA;
    border-radius: 4px;
    padding: 2px 5px;
    margin: 2px;
    background: #DDD;
    display: inline-block;
}
.myLabel:hover {
    background: #CCC;
}
.myLabel:active {
    background: #CCF;
}
.myLabel :invalid + span {
    color: #A44;
}
.myLabel :valid + span {
    color: #4A4;
}

In diesem Beispiel wird die Eingabe außerhalb des Bildschirms mit oben positioniert: -1000px. Der auf das

Fazit

Dieser

Das obige ist der detaillierte Inhalt vonWie kann ich benutzerdefinierte Dateieingabeschaltflächen ohne JavaScript gestalten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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