2013-09-22 15 views
11

Wenn ich autofocus="autofocus" auf einem Eingangselement gesetzt ist, dann in Firefox, wenn die Seite geladen wird, zeigt es für einen Bruchteil einer Sekunde, ohne die Anwendung CSS. (Zum Beispiel Inhalt nicht zentriert, Überschrift in Standard gerendert Schrift etc.)HTML 5 Autofokus vermasseln CSS Laden

Wenn ich den Autofokus zu entfernen, um die Seite geladen wird fein und wird angezeigt, wenn es fertig ist.

Gibt es eine Möglichkeit, die Seite zu bekommen normalerweise zu laden, während die autofocus Features in Firefox?

+4

Dies scheint ein Fehler in Firefox zu sein: https://bugzilla.mozilla.org/show_bug.cgi?id=712130 – tw16

Antwort

14

Ich habe festgestellt, dass einige JavaScript in den <head> durch Hinzufügen der Seite wartet der Stil vor dem Fokus zu laden.

Ich bin mir nicht ganz sicher, warum das funktioniert, aber es funktioniert!

Beispiel:

<script type="text/javascript"> 
    // Fix for Firefox autofocus CSS bug 
    // See: http://stackoverflow.com/questions/18943276/html-5-autofocus-messes-up-css-loading/18945951#18945951 
</script> 
+0

Diese Korrektur funktioniert! Danke vielmals. –

+0

Das funktioniert, weil es den Browser blockiert und es scheint, dass diese kurze Blockierung ausreicht, damit Firefox die Seite im Hintergrund korrekt auslegt. – Fleshgrinder

+2

Es scheint dieser Fehler vor kurzem wurde behoben und FF 60 landen in: https://bugzilla.mozilla.org/show_bug.cgi?id=712130 – Niavlys