So fügst du ein Favicon ein
Speichere dein Icon auf der Website und verweise in <head> mit einem Tag <link rel="icon"> darauf:
<link rel="icon" href="/favicon.ico">
Für eine einfache Website ist das schon die ganze Antwort. Das href kann auf eine Datei mit der Endung .ico, .png oder .svg zeigen. Das Beispiel unten nimmt ein SVG, das als Data-URI direkt in das href geschrieben ist, es braucht also keine eigene Datei. Eine Vorschau in einer anderen Seite kann deinen Browser-Tab nicht ändern, deshalb zeichnet das Skript dasselbe Icon in einem nachgebauten Tab und in drei Größen:
Bei 16 Pixeln ist Platz für einen fetten Buchstaben oder eine einfache Form, und feine Details verschwinden. Entwirf das Icon zuerst für die kleinste Größe. Ändere fill='%232563eb' in eine andere Farbe (%23 ist das URL-kodierte #), und jede Kopie aktualisiert sich.
Welche Dateien du bereitstellst
Browser, Handys und App-Launcher suchen nach unterschiedlichen Icons. Eine kleine Auswahl deckt alle ab:
<link rel="icon" href="/favicon.ico" sizes="32x32">
<link rel="icon" href="/icon.svg" type="image/svg+xml">
<link rel="apple-touch-icon" href="/apple-touch-icon.png">
<link rel="manifest" href="/manifest.webmanifest">
| Datei | Größe | Verwendet für |
|---|---|---|
favicon.ico | 32×32 | Browser-Tabs und Tools, die nur nach /favicon.ico suchen |
icon.svg | Beliebig (Vektor) | Scharfe Tabs bei jeder Pixeldichte, in Chrome, Edge und Firefox |
apple-touch-icon.png | 180×180 | Das Icon, wenn jemand deine Website zum Homebildschirm eines iPhones oder iPads hinzufügt |
| Manifest-Icons | PNG mit 192×192 und 512×512 | Android-Homebildschirm und installierte Web-Apps |
Die meisten Browser fragen außerdem von selbst /favicon.ico im Wurzelverzeichnis der Website an, wenn eine Seite keinen Icon-Link hat, ein favicon.ico dort ist also ein nützlicher Standard. Das Attribut sizes sagt dem Browser, welche Größe jede Datei hat, damit er die beste auswählen kann. Nimm rel="icon"; das ältere rel="shortcut icon" funktioniert nur, weil Browser das zusätzliche Wort ignorieren.
Ein Emoji als Favicon
Für einen Prototyp oder eine persönliche Seite ist ein Emoji ein schnelles Favicon. Setz es in ein SVG-Element <text>:
%F0%9F%8D%AA ist das Keks-Emoji, URL-kodiert. Das Emoji wird von der Emoji-Schrift des Betriebssystems gezeichnet, es sieht also unter Windows, macOS und Android anders aus, und für ein echtes Produkt ist ein gestaltetes Icon die bessere Wahl.
Ein Icon, das dem Dark Mode folgt
Ein SVG-Favicon kann sein eigenes CSS mitbringen, auch eine Media Query prefers-color-scheme. So wird ein dunkles Icon hell, wenn der Browser ein dunkles Theme verwendet:
<!-- icon.svg -->
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32">
<style>
circle { fill: #111827; }
@media (prefers-color-scheme: dark) { circle { fill: #f9fafb; } }
</style>
<circle cx="16" cy="16" r="14"/>
</svg>
Das Favicon mit JavaScript ändern
Websites nutzen ein wechselndes Favicon für einen Benachrichtigungspunkt oder eine Statusfarbe. Zeichne das neue Icon auf ein <canvas> und setz das href des Links auf das Canvas-Bild:
Auf einer echten Seite in Chrome oder Firefox ändert sich das Tab-Icon jedes Mal, wenn href gesetzt wird, im selben Moment, in dem sich hier das Vorschaubild ändert.
Häufige Fehler
- Ein falscher Pfad.
href="favicon.ico"ist relativ zur aktuellen Seite und funktioniert deshalb auf/blog/postnicht. Nimm einen Pfad ab dem Wurzelverzeichnis:href="/favicon.ico". - Erwarten, dass eine Änderung sofort erscheint. Browser cachen Favicons hartnäckig. Lade mit geleertem Cache neu oder ändere die URL (
/favicon.ico?v=2), wenn du das Icon ersetzt. - Ein detailliertes Logo, auf 16 Pixel verkleinert. Vereinfache es: ein Buchstabe oder eine Form mit starkem Kontrast.
- Nur ein SVG. Behalte zusätzlich ein ICO oder PNG für Browser ohne Unterstützung für SVG-Favicons und füg das
apple-touch-iconfür iOS hinzu. - Den Link in
<body>setzen. Lass ihn in<head>bei dem Title-Tag und den anderen Metadaten.
Häufig gestellte Fragen
Wie füge ich in HTML ein Favicon ein?
Leg die Icon-Datei auf deine Website und füg <link rel="icon" href="/favicon.ico"> (oder einen Pfad zu einem PNG oder SVG) in <head> ein. Browser zeigen es dann im Tab, in Lesezeichen und im Verlauf an.
Wie groß sollte ein Favicon sein?
Stell ein favicon.ico (oder PNG) mit 32×32 für Tabs bereit, ein SVG, das auf jede Größe skaliert, und ein PNG apple-touch-icon mit 180×180 für den iPhone-Homebildschirm. Web-Apps mit Manifest führen außerdem PNGs mit 192×192 und 512×512 auf.
Warum wird mein Favicon nicht angezeigt?
Die üblichen Ursachen sind ein falscher Pfad in href, ein <link> außerhalb von <head> oder ein Browser, der noch ein altes Icon aus dem Cache zeigt. Öffne die Icon-URL direkt, um den Pfad zu prüfen, und lade dann mit geleertem Cache neu oder häng eine Version wie ?v=2 an die URL.
Kann ich ein SVG oder PNG als Favicon verwenden?
Ja. Nimm <link rel="icon" href="/icon.svg" type="image/svg+xml"> oder <link rel="icon" href="/icon.png" type="image/png">. SVG funktioniert in Chrome, Edge und Firefox; behalte zusätzlich ein ICO oder PNG für Browser, die es nicht unterstützen.
Brauche ich rel="shortcut icon"?
Nein. rel="icon" ist der Standardwert. Das Wort shortcut ist ein Überbleibsel aus dem alten Internet Explorer und bewirkt in aktuellen Browsern nichts.
Kann ich ein Emoji als Favicon verwenden?
Ja, indem du es in ein SVG packst: eine SVG-Data-URI mit einem <text>-Element, das das Emoji enthält. Für Prototypen ist das praktisch, aber das Emoji sieht auf jedem Betriebssystem anders aus.