Heim > Web-Frontend > CSS-Tutorial > Warum behält Chrome beim Fokussieren den Platzhaltertext bei und wie kann ich das Problem beheben?

Warum behält Chrome beim Fokussieren den Platzhaltertext bei und wie kann ich das Problem beheben?

Mary-Kate Olsen
Freigeben: 2024-11-10 09:01:02
Original
968 Leute haben es durchsucht

Why Does Chrome Keep Placeholder Text When Focused, and How Can I Fix It?

Überwindung des Autofokus-Platzhalterfehlers von Chrome mit CSS und jQuery

Beim Arbeiten mit Platzhaltertext in HTML tritt häufig ein Problem auf, bei dem Der Platzhaltertext bleibt auch dann sichtbar, wenn das Eingabefeld den Fokus erhält. Browser wie Firefox, Safari und Edge handhaben dies problemlos und blenden den Platzhaltertext automatisch aus. Dies gelingt Chrome jedoch häufig nicht.

Um dieses spezielle Problem mit Chrome zu beheben, können wir CSS oder jQuery verwenden. Mithilfe der folgenden CSS-Regel können Sie den Platzhaltertext transparent machen, wenn das Eingabefeld den Fokus erhält:

input:focus::placeholder {
  color: transparent;
}
Nach dem Login kopieren

Diese CSS-Deklaration zielt speziell auf den Platzhaltertext ab, wenn das Eingabefeld den Fokus erhält. Indem Sie die Farbe auf transparent setzen, wird der Platzhaltertext praktisch unsichtbar.

Wenn Sie eine jQuery-Lösung bevorzugen, können Sie den folgenden Code verwenden:

$(function() {
  $("input[placeholder]").focus(function() {
    $(this).attr("placeholder", "");
  });

  $("input[placeholder]").blur(function() {
    $(this).attr("placeholder", $(this).attr("data-placeholder"));
  });
});
Nach dem Login kopieren

In diesem jQuery-Code hören wir zu für das Fokusereignis und das Unschärfeereignis für Eingabeelemente mit einem Platzhalterattribut. Wenn der Fokus erreicht ist, löschen wir das Platzhalterattribut, wodurch der Platzhaltertext ausgeblendet wird. Wenn der Fokus verloren geht, stellen wir den Platzhaltertext wieder her, indem wir das Platzhalterattribut auf den im Datenplatzhalterattribut gespeicherten Wert setzen, den wir bei der Initialisierung festgelegt haben.

Sowohl die CSS- als auch die jQuery-Lösung blenden Platzhaltertext effektiv automatisch aus in Chrome, wenn das Eingabefeld den Fokus erhält, wodurch ein konsistentes und benutzerfreundliches Erlebnis in allen Browsern gewährleistet wird.

Das obige ist der detaillierte Inhalt vonWarum behält Chrome beim Fokussieren den Platzhaltertext bei und wie kann ich das Problem beheben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage