Original-URL des Artikels: https://www.golem.de/1103/82063.html    Veröffentlicht: 17.03.2011 08:46    Kurz-URL: https://glm.io/82063

Browser

Das ist neu bei Firefox 4

Firefox 4 ist praktisch fertig. Im aktuellen Release Candidate wurden keine groben Fehler gefunden, so dass dieser wohl ohne Änderungen als Final-Version veröffentlicht wird. Zeit, sich die zahlreichen großen und kleineren Neuerungen von Mozillas neuem Browser anzusehen.

Mehr Geschwindigkeit, das ist eines der wesentlichen Ziele der Entwickler gewesen. Dazu wurden verschiedene Teile des Browsers überarbeitet. So soll Firefox 4 nicht nur Webinhalte schneller rendern und Javascript schneller ausführen können als sein Vorgänger, sondern auch selbst zügiger reagieren. Da das Userinterface des Browsers selbst über Javascript gesteuert wird, profitiert Firefox von vielen Änderungen in doppelter Hinsicht.

Darüber hinaus haben die Mozilla-Entwickler das Userinterface ihres Browsers gründlich überarbeitet, die Sicherheit verbessert und ihn mit zahlreichen neuen Funktionen ausgestattet. Wesentliche Neuerungen gibt es auch im Hinblick auf Erweiterungen. Jägermonkey, Javascript-Engine der dritten Generation

Eine grundlegende Veränderung wurde an der Javascript-Engine von Firefox vorgenommen. Die Entwickler sprechen von der ersten Javascript-Engine der dritten Generation. Die Javascript-Engine Spidermonkey wird nun mit dem JIT-Compiler kombiniert, was Mozilla zusammen Jägermonkey nennt. Der Just-In-Time-Compiler springt ein, wenn Firefox das noch schnellere Tracing - Tracemonkey genannt - nicht einsetzen kann. Bislang fiel Firefox dann auf seinen alten Javascript-Interpreter zurück, der deutlich langsamer arbeitet.

Wann immer Tracemonkey schneller ist, soll es zum Einsatz kommen. Ist das nicht der Fall, soll Jägermonkey auf den JIT-Compiler zurückgreifen und die in nativen Maschinencode übersetzten Methoden verwenden. So ist Firefox in den üblichen Javascript-Benchmarks Sunspider und V8 wieder auf Augenhöhe mit der Konkurrenz und kann in Mozillas eigenem Benchmark Kraken sogar davonziehen.

Compartments

Ebenfalls für mehr Geschwindigkeit sollen die sogenannten Compartments sorgen. Dazu wurde die Art umgestellt, wie Javascript-Objekte verwaltet werden. Jetzt werden nicht mehr alle Objekte im gleichen Heap verwaltet, sondern auf mehrere Heaps verteilt, wobei alle Objekte einer Quelle in einem Heap zusammengefasst werden. Das verringert den Aufwand bei der Garbage-Collection, da nur noch ein Teil des Heaps überprüft werden muss.

Firefox 4 setzt auf Hardwarebeschleunigung

Firefox 4 setzt auf Hardwarebeschleunigung, nicht nur zur Darstellung von 3D-Grafik und beim Abspielen von Videos. Welche Aspekte konkret beschleunigt werden, hängt vom verwendeten Betriebssystem und den genutzten Treibern ab: Unter Windows 7 wird Direct2D, DirectX 9 oder 10 verwendet, unter Mac OS X OpenGL. Nutzer von Windows XP profitieren zumindest von der neuen Layers-Infrastruktur.

Dabei werden Bilder, feste Hintergründe, eingebundene Videos und andere Objekte in der GPU zusammengesetzt, was die Darstellung von grafiklastigen Funktionen wie Scrollen, Zoomen, Animationen Darstellen und Videos Abspielen beschleunigt. Unter Linux sieht die Hardwarebeschleunigung bislang noch nicht so gut aus: Hier bereiten die Treiber zum Teil noch Probleme, auf einigen Distributionen bietet Firefox aber auch unter Linux Hardwarebeschleunigung.

WebGL bringt 3D-Grafik in den Browser

Firefox 4 unterstützt offiziell WebGL. Die von der Khronos Group entwickelte 3D-Schnittstelle basiert auf OpenGL ES 2.0, das eine Untermenge der OpenGL-APIs abbildet. Die 3D-Grafik wird dabei mit Hilfe des Canvas-Elements aus HTML5 via Javascript in den Browser gebracht und durch die GPU beschleunigt. Neben Firefox unterstützt auch Chrome WebGL, Opera und das Webkit-Projekt haben Entwicklerversionen mit WebGL-Unterstützung veröffentlicht.

DOM- und CSS-Operationen beschleunigt

Durch die enorme Geschwindigkeitssteigerung von Javascript-Engines in den vergangenen Jahren werden zunehmend andere Teile des Browsers zum Flaschenhals. Oft sind es die DOM-Operationen und die Anwendung von Style-Sheets, die am längsten dauern. Auch hier haben die Firefox-Entwickler Hand angelegt. Firefox 4 soll dabei teilweise doppelt so schnell sein wie Firefox 3.6.

Für schnelleres Rendern soll auch die asynchrone Darstellung von Plugins sorgen, die Firefox 4 unter Windows und Linux unterstützt. Der Browser muss dadurch nicht auf langsame Plugins warten.

Um die Verarbeitung größerer Datenmengen zu beschleunigen, unterstützt Firefox 4 native, typisierte Arrays (typed arrays). Vor allem WebGL und Bildmanipulationen sollen davon profitieren. Per XHR (XmlHttpRequst) nachgeladene Daten können direkt in dieser Form übergeben werden, um die Verarbeitung zu beschleunigen.

Schnellerer Start dank besserem Cache

Verbesserungen am Festplattencache des Browsers sollen unter anderem den Startvorgang der Software beschleunigen. Die Mozilla-Entwickler gehen davon aus, dass Seiten künftig häufiger aus dem Cache geladen werden, was auch das allgemeine Surfen beschleunigt. Auch Webseitenbetreiber sollen das zu spüren bekommen. Wie viel Platz der Cache auf der Festplatte einnimmt, regelt Firefox 4 abhängig vom freien Speicherplatz.

Grenzen für Animationen

Für eine effiziente Nutzung der Ressourcen soll das Ereignis MozBeforePaint sorgen. Es wird maximal 60-mal pro Sekunde aufgerufen, um Animationen auf 60 Bilder pro Sekunde zu begrenzen. Mehr könne das menschliche Auge nicht wahrnehmen, so dass es sinnvoller sei, darüber hinaus auf Berechnungen zu verzichten, erklären die Entwickler. Bei Tabs im Hintergrund wird MozBeforePaint sogar nur einmal pro Sekunde aufgerufen, was die Rechenlast weiter senkt - schließlich ist von der Animation ohnehin nichts zu sehen.

Neues Userinterface für Firefox

Auch optisch hat sich Firefox in der neuen Version verändert. Das Userinterface wurde auf allen Plattformen angepasst und stärker am jeweiligen Betriebssystem ausgerichtet. Außerdem wurde es verschlankt, um den eigentlichen Webinhalten mehr Raum zu geben.

Die Tabs wandern nach oben (Tabs on Top) und sitzen über der URL-Zeile, was sich über ein Kontextmenü (Rechtsklick in die Tab-Zeile) jederzeit ändern lässt.

Die Menüzeile fällt weg und wird durch einen sogenannten App-Button ersetzt, in dem alle Menüs zusammengefasst sind. Dabei orientieren sich die Mozilla-Entwickler an den Menüs nativer Windows-7-Applikationen wie Paint und Wordpad sowie an Microsoft Office. Der Reload-Button wird mit dem Stop-Button kombiniert. Er wird automatisch zum Stop-Button, solange eine Seite geladen wird. Zugleich wandert der Knopf in die URL-Zeile.

Die Statusleiste wird durch die neue Addon-Leiste ersetzt. Hier können Addons weiterhin Informationen anzeigen. Die üblichen Statusinformationen sind hier aber nicht mehr zu finden. Welche URL sich hinter einem Link verbirgt, blendet Firefox 4 über der Statuszeile am unteren Rand des Browserfensters ein. In einigen Vorabversionen wurden die Informationen stattdessen am rechten Rand der URL-Zeile angezeigt, dies aber später wieder geändert.

Tabwechsel vereinfacht

Passt ein offener Tab zu dem, was gerade in die URL-Zeile eingegeben wird, bietet Firefox direkt die Möglichkeit, zum jeweiligen Tab zu wechseln. Die Tabs werden dabei durch ein kleines Symbol markiert, so dass erkennbar ist, dass eine Seite nicht im aktuellen Tab aufgerufen, sondern zu einem anderen Tab gewechselt wird. So soll verhindert werden, dass die gleichen Seiten in mehreren Tabs geöffnet werden, weil der Nutzer die Übersicht verloren hat.

App-Tabs anpinnen

Die neuen App-Tabs ermöglichen es, einzelne Tabs links in der Tab-Leiste anzupinnen. Gedacht ist dies für Webapplikationen, die in aller Regel ständig geöffnet sind, beispielsweise eigene Webmailaccounts. Über ein Kontextmenü lassen sich beliebige Tabs in App-Tabs umwandeln. Die Tabs werden dabei auf das Favicon minimiert, so dass sie weniger Platz einnehmen. Auch bei vielen geöffneten Tabs rutschen diese App-Tabs nicht aus dem sichtbaren Bereich.

Tabgruppen für mehr Übersicht

Eine neue Panoramaansicht soll für mehr Übersicht über die geöffneten Tabs sorgen. Sie versteckt sich hinter einem "Tab-Gruppen" genannten Knopf in der Tabzeile.

Die unter dem Namen Tab Candy entwickelte Funktion stellt mit einem Klick oder Tastendruck eine Übersicht über alle offenen Tabs dar. Sie werden in Form kleiner Vorschaubilder, ergänzt um das jeweilige Favicon, nebeneinander angeordnet. Mit einem Klick kann dann zum gewünschten Tab gewechselt werden.

Panorama macht es auch möglich, die offenen Tabs zu gruppieren. Ein Tab kann per Drag-and-Drop aus einer Gruppe entfernt und zu einer neuen Gruppe hinzugefügt oder als erstes Element einer neuen Gruppe abgelegt werden. So lassen sich die Tabs leicht nach Themen ordnen. Wird ein Tab geöffnet, zeigt die Tableiste nur noch die zur jeweiligen Gruppe gehörenden Tabs an, was die Übersicht ebenfalls erleichtert.

Aufgerufen wird die Tab-Candy-Übersicht aller offenen Tabs mit der Tastenkombination "Steuerung + Shift + e" unter Windows und "Cmd + Shift + e" unter Linux und Mac OS X. Die dort gezeigten Tabs können per Mausklick oder per Tastatur (Pfeiltasten und Enter) geöffnet werden. Die Tabs lassen sich außerdem leicht verschieben und damit gruppieren.

Die Größe der Vorschaubilder wird automatisch an den verfügbaren Platz angepasst. Räumt der Nutzer einer Gruppe mehr Platz ein, so erhält er auch eine recht große und detaillierte Vorschau auf die Tabs. Gibt er einer Gruppe nur minimalen Platz, werden die Tabs als Stapel dargestellt, nur das oberste Tab ist erkennbar. Mit einem Klick auf die Gruppe öffnet sich der Stapel und zeigt seinen Inhalt. In Zukunft soll Tab Candy auch automatisch Gruppen anlegen können.

Sync, Jetpack und ein neuer Addon-Manager

Firefox Sync wurde direkt in Firefox 4 integriert. Darüber kann der Browser Daten wie Bookmarks, Verlauf, Logindaten und geöffnete Tabs über einen Server mit anderen Firefox-Installationen abgleichen. So finden Firefox-Nutzer auch auf unterschiedlichen Rechnern die gleiche Surfumgebung vor und können dort weitermachen, wo sie vorher aufgehört haben.

Das gilt auch für mobile Endgeräte, denn auch Firefox Mobile alias Fennec unterstützt Firefox Sync. Für das iPhone steht mit Firefox Home ein Browseraufsatz zur Verfügung, der ebenfalls die Daten mit den Sync-Servern von Mozilla abgleicht.

Die Nutzung von Firefox Sync setzt einen Sync-Account bei Mozilla voraus, da die Daten über Mozillas Server laufen. Firefox 4 fordert Nutzer daher auf, einen entsprechenden Account anzulegen, beziehungsweise einen bestehenden Firefox-Sync-Account zu übernehmen. Die Daten werden auf dem Client verschlüsselt, so dass Mozilla zu keinem Zeitpunkt Einblick in die Daten seiner Nutzer hat.

Addon-Manager als zentrale Anlaufstelle

Die Verwaltung von Erweiterungen wandert zusammen mit anderen Funktionen zur Personalisierung in ein Tab. Über den Addon-Manager können in Firefox 4 neue Erweiterungen gesucht und installiert sowie bereits installierte Erweiterungen, Themes und Plugins verwaltet werden. Die Verwaltung von Suchmaschinen wurde entgegen den ersten Entwürfen nicht in den Addon-Manager integriert. Nutzer passen die Suchmaschinen selten an und wenn, dann sei der bestehende Dialog dafür optimal, erläuterte Firefox-Chefentwickler Mike Beltzner die Entscheidung im Gespräch mit Golem.de.

Jetpack für eine neue Generation von Erweiterungen

Firefox 4 bildet die Basis für eine neue Generation von Firefox-Erweiterungen, die mit Webtechniken wie HTML, CSS und Javascript entwickelt wurden und jederzeit installiert und deinstalliert werden können, ohne dass der Browser extra neu gestartet werden muss. Allerdings können auch herkömmliche Erweiterungen in Firefox 4 ohne Neustart installiert werden, sofern diese dafür angepasst wurden, so Beltzner.

Für die Entwicklung der neuen Generation von Erweiterungen wird zusätzlich das Addon SDK benötigt, das noch nicht fertiggestellt ist. Derzeit steht eine dritte Beta des vormals Jetpack genannten Addon SDK über Mozilla Labs zum Download bereit. Das Addon SDK soll auch in Zukunft unabhängig von Firefox weiterentwickelt werden, so dass die Erweiterungsplattform unabhängiger vom Browser wird. Die benötigten Bibliotheken des SDK werden mit der jeweiligen Erweiterung gebündelt und dann im Browser installiert. So können unterschiedliche Erweiterungen auch unterschiedliche Versionen des Addon SDK verwenden.

Firefox 4 bietet auch weiterhin die Möglichkeit, die alte Generation von Erweiterungen zu verwenden. In Zukunft werden die Möglichkeiten für solche Erweiterungen jedoch eingeschränkt sein, denn die Mozilla-Entwickler planen die Aufspaltung des Browsers in mehrere Prozesse. Jetpack ist auf die im Rahmen des Projekts Electrolysis alias "e10s" entwickelte Multi-Prozess-Architektur bereits vorbereitet, so dass damit entwickelte Erweiterungen auch in künftigen Firefox-Versionen laufen werden.

Um die Entwicklung von Jetpack-Erweiterungen zu erleichtern, bietet Mozilla den Addon Builder an.

Firefox 4 spricht HTML5 und ES5

Firefox 4 bietet aber auch zahlreiche neue Funktionen für Webentwickler. Das gilt auch für die neue Javascript-Engine, die weite Teile von ECMAScript 5 unterstützt, einschließlich deren Modus "strict". Neu ist auch die Web Console, ein Werkzeug für Webentwickler, mit dem sich eine laufende Webapplikation untersuchen lässt. Wie ein "Head-Up-Display" gibt sie Einblicke in dynamische Webseiten, einschließlich Netzwerkaktivität und Warnungen für CSS. Anders als Firebug ist die Web Console fester Bestandteil des Browsers.

Bessere HTML5-Unterstützung

Die HTML5-Unterstützung von Firefox haben die Entwickler weiter ausgebaut. So enthält Firefox 4 einen HTML5-fähigen Parser, der auch Inline-SVG unterstützt und laut den Mozilla-Entwicklern stärker an dem in HTML5 spezifizierten Parser orientiert ist. Da der Parser in einem eigenen Prozess abläuft, soll sich diese Veränderung auch positiv auf die Geschwindigkeit auswirken.

Firefox 4 unterstützt auch einige neue HTML5-Elemente, darunter article, section, nav, aside, hgroup, header und footer sowie die HTML5-Elemente mark, figure und figcaption. Der Browser kann auch mit dem HTML5-Attribut hidden umgehen.

HTML5 Forms

Firefox 4 unterstützt HTML5-Formulare, wenn auch nicht in allen Einzelheiten. Neben neuen Input-Typen und -Attributen wie Autofocus und Platzhalter werden Datenlisten, entkoppelte Formulare, Formularvalidierung inklusive Bedingungen und neue CSS-Selektoren unterstützt. Auch mit dem Objekt Formdata kann Firefox 4 umgehen.

HTML5-Video mit WebM

Per HTML5-Tag eingebettete Videos können in Firefox 4 auch im freien Format WebM abgespielt werden, das Google auf Basis von VP8 entwickelt hat.

Firefox 4 stellt ein API zum Zwischenspeichern von Videos bereit und unterstützt dabei das entsprechende HTML5-Attribut "buffered". So können Webapplikationen dem Nutzer anzeigen, welcher Teil eines Videos schon heruntergeladen wurde.

Das Attribut "autobuffer" wird von Firefox 4 nicht mehr unterstützt, dafür jedoch das Attribut "preload". Letzteres bietet Entwicklern mehr Kontrolle darüber, wann welche Teile eines Videos heruntergeladen werden sollen: Preload lässt sich mit den Werten none, metadata und auto verwenden. Im Fall von none lädt der Browser das betreffende Video nicht, sondern zeigt nur ein Posterimage an, sofern eines im Tag angegeben wurde. Erst wenn der Nutzer die Wiedergabe startet, wird die Videodatei geladen. Die Angabe metadata führt dazu, dass die Metadaten und der erste Frame des Videos geladen und angezeigt werden. Dies ist auch die Standardeinstellung. Die Variante auto bringt den Browser dazu, die gesamte Datei automatisch zu laden, sofern der Mediencache des Browsers noch nicht voll ist. Das Verhalten entspricht der Angabe autobuffer.

Das Firefox Audio Data API erlaubt es, Daten aus Audio- und Videoelementen zu lesen, zu modifizieren und zu schreiben.

Verlauf manipulieren

Der Verlauf des Browsers (History) lässt sich mit den Aufrufen pushState und replaceState modifizieren. Das ist vor allem für Webapplikationen gedacht, die in einer einzelnen Webseite ablaufen. Zudem lassen sich interne Verlaufsinformationen löschen, damit sie nicht über den HTTP-Referer weitergegeben werden.

Multitouch, SVG und IndexedDB

Firefox 4 enthält auch zahlreiche neue DOM-Funktionen. So wird die Funktion .click() für den Datei-Upload-Dialog unterstützt. Das bedeutet, Entwickler können den nativen Dateiauswahldialog des Betriebssystems selbst per Javascript aufrufen und müssen dazu nicht das eher unansehnliche Standardelement verwenden. Die Implementierung des File API wurde um Unterstützung für das Blob API und .slice erweitert, um Dateien in kleinen Stücken zu verarbeiten. Es muss also nicht länger die komplette Datei in den Speicher geladen werden. Der Upload großer Dateien lässt sich dadurch robuster gestalten, da diese vor dem Upload in mehrere kleine Dateien aufgespalten werden können. Bricht der Upload ab, muss so nicht die gesamte Datei nochmals übertragen werden. Auch das .url-Attribut wird nun für das File API unterstützt.

Multitouch-Unterstützung

Webapplikationen erhalten unter Windows 7 Zugriff auf Touch- und Multitouch-Ereignisse, da diese über das DOM kommuniziert werden. Zudem kann mittels mozInputSource zwischen Mausklicks und dem Tippen mit dem Finger unterschieden werden. So können Applikationen explizit berücksichtigen, ob sie per Maus oder Touchscreen bedient werden.

Erweiterte SVG-Unterstützung

Die SVG-Unterstützung in Firefox wurde erweitert. Der Browser kann SVG nun per SMIL animieren und SVG als Bilder behandeln, so dass diese per Image-Tag eigebunden und auch als Hintergrund in CSS gesetzt werden können. Den Inhalt des Canvas-Elements können sich Entwickler mit mozGetAsFile() direkt als Bilddatei übergeben lassen.

Texteingabefelder (textarea) sind per Standardeinstellung in Firefox 4 vergrößerbar. Das Verhalten kann aber per CSS verändert werden.

IndexedDB: Datenbank im Browser

Firefox 4 verfügt über eine frühe Version der Browserdatenbank IndexedDB. Damit können Entwickler Daten direkt im Browser speichern, damit sie auch ohne Internetverbindung zur Verfügung stehen. Das Indexed Database API ermöglicht, wie Web Storage, das Speichern und Abrufen von Objekten anhand von Schlüsseln, ist aber nicht auf einfache Schlüssel-Wert-Paare beschränkt. Zu einem Schlüssel können mehrere Datenspalten und zusätzlich Indices für die einzelnen Spalten angelegt werden. So können einzelne Datensätze auch anhand anderer Kriterien als ihrem Schlüssel aus der Datenbank gelesen werden.

Da sich das Ganze noch in einem frühen Stadium befindet, stehen die Funktionen nur über ein privates API mit dem Präfix -moz zur Verfügung. Eine erste Einführung in die Funktion von IndexedDB gibt es unter developer.mozilla.org.

Die Unterstützung von Websockets ist derzeit in der Standardeinstellung aus Sicherheitsgründen deaktiviert.

Mozilla wagt neue CSS-Experimente

Einige CSS-Eigenschaften verlieren in Firefox 4 ihr Mozilla-Präfix, können also in der offiziellen Version genutzt werden. Andere kommen neu hinzu. Dazu zählen unter anderem CSS Transitions, die zunächst mit -moz-Präfix eingeführt werden.

CSS Layouts vereinfachen

Der Ausdruck calc() kann überall dort genutzt werden, wo Length-Angaben benötigt werden. Das soll CSS-Layouts einfacher machen, da auf Divs als Platzhalter verzichtet werden kann. Zunächst aber steht auch diese Funktion nur mit Präfix als -moz-calc zur Verfügung.

Auch -moz-any() soll Entwicklern das Leben leichter machen. Damit lassen sich CSS-Selektoren gruppieren und so komplexe Selektoren vereinfachen. Kommen mehrere Selektoren an einer Position infrage, können diese mit -moz-any() zusammengefasst werden, statt dass für jede mögliche Kombination ein Selektor genutzt werden muss.

Mit -moz-element() kann jedes Element als Hintergrund für ein anderes Element verwendet werden. Die Mozilla-Entwickler hoffen, dass andere Browserhersteller ihre Idee aufgreifen.

Um Platzhaltertexte in Formularen anzupassen, unterstützt Firefox 4 :-moz-placeholder. Standardmäßig stellt Mozilla solche Texte in grauer Schrift dar, was aber ungünstig sein kann, wenn eine andere Hintergrundfarbe verwendet wird. Mit :-moz-handler-crashed kann die Darstellung von Inhalten angepasst werden, deren Plugins abgestürzt sind und :-moz-window-inactive wird auf Elemente in inaktiven Fenstern angewendet.

Mehr Kontrolle über Schriften

Über -moz-font-feature-settings erhalten Entwickler mehr Kontrolle über die Darstellung von Truetype-Schriften. Unterstützt werden unter anderem Unterschneidungen (Kerning), Ligaturen und Kapitälchen.

Alles ist relativ

Mit dem Ziel, CSS-Maßeinheiten konsistent umzusetzen, passt Mozilla die Behandlung absoluter Maßeinheiten an das Verhalten von Internet Explorer, Safari und Chrome an. Künftig gilt 1 Zoll = 96 Pixel. Andere Maßeinheiten wie px, pt, cm, mm und pc orientieren sich daran. Das bedeutet zugleich, dass auf kleinen Displays 1 Zoll eben nicht mehr 1 Zoll entspricht. Dazu gibt es das neue Maß "mozmm", bei dem Firefox 4, soweit möglich, dafür sorgt, dass 1 Zoll wirklich 1 Zoll entspricht, ganz gleich, ob auf einem Smartphone- oder einem Desktopdisplay.

Dabei unterstützt Firefox 4 die Angabe "-moz-device-pixel-ratio", über die sich abfragen lässt, wie viele CSS-Pixel pro Bildschirmpixel dargestellt werden. Über -moz-tab-size kann angegeben werden, wie groß Tabulatoren (Zeichen U+0009) dargestellt werden sollen.

Über den CSS-Pseudo-Selektor -moz-focusring kann bestimmt werden, wie ein fokussiertes Element erscheint. Und mit -moz-image-rect ist es möglich, einen Ausschnitt eines Bildes als Hintergrund zu verwenden.

Bereits seit längerem unterstützt Firefox "runde Ecken", bislang aber nur mit "-moz-border-radius". Daraus wird in der neuen Version nun die offizielle Variante "-border-radius". Gleiches gilt für -box-shadow.

Mehr Sicherheit für Nutzer und Webentwickler

Die Content Security Policy (CSP) umfasst Werkzeuge, die Webentwicklern helfen sollen, verschiedene Angriffsklassen zu unterbinden, beispielsweise Cross-Site-Scripting, Click-Jacking und Packet-Sniffing. Werden Regeln verletzt, kann Firefox 4 die Webseite über den Missbrauch informieren.

Zudem unterstützt Firefox 4 HTTP Strict Transport Security (HSTS alias ForceTLS). Damit kann der Browser über einen Header angewiesen werden, eine Seite niemals ohne Verschlüsselung aufzurufen. Nutzer können über die Erweiterung STS UI Seiten manuell auf die HSTS-Liste setzen oder aus dieser entfernen, unabhängig davon, ob die Seiten HSTS unterstützen oder nicht.

Um die Privatsphäre der Nutzer besser zu schützen, unterbindet Firefox 4 die Möglichkeit, über die Pseudoklasse :visited herauszufinden, welche Webseiten ein Nutzer besucht hat. Das Problem ist nicht auf Firefox beschränkt und existiert seit geraumer Zeit. Auch Webkit hat die von Mozilla umgesetzte Änderung aufgegriffen und vermutlich soll auch der Internet Explorer 9 eine entsprechende Anpassung erhalten.

Bereits mit einem der Minor-Updates für Firefox 3.6 eingeführt wurde die Unterstützung des Headers X-Frame-Options, um Clickjacking zu verhindern.

Anti-Tracking-Header

Firefox 4 kann auch einen "Do-Not-Track-HTTP-Header" senden. Damit können Nutzer Werbeanbietern anzeigen, dass sie nicht getrackt werden wollen und die Werbeanbieter aus ihrem Surfverhalten keine Profile erstellen sollen. Der Header liefert jedoch keine Garantie, dass er von Anbietern auch beachtet wird. Mozilla geht dabei einen anderen Weg als Google oder Microsoft und hält den Header für die langfristig beste Lösung, um ehrliche Anbieter anzusprechen. Der eigentliche Header wurde gegenüber dem ersten Vorschlag gekürzt: "DNT: 1" soll anzeigen, dass ein Nutzer nicht getrackt werden will. Allerdings enthält der von Microsoft mittlerweile beim W3C eingereichte Vorschlag für einen Trackingschutz ebenfalls einen Do-Not-Track-HTTP-Header. Microsoft hat also die Idee der Mozilla-Entwickler aufgegriffen und seinen eigenen Ansatz erweitert.

User-Agent verrät weniger

Der von Firefox übermittelte User-Agent wurde in größerem Umfang verändert. So übermittelt Firefox 4 keine Locale wie beispielsweise "en-US" oder "de-DE" mehr. Webseiten, die ihre Sprachversion automatisch anpassen, sollten dazu die Angaben im HTTP-Header nutzen. Zudem entfällt die Angabe "U;", mit der Firefox auf die Unterstützung starker Verschlüsselung verweist. Da mittlerweile jedoch kein Browser mehr mit schwacher Verschlüsselung ausgeliefert wird, ist das überflüssig. Die Angaben "I;" und "N;" weisen weiterhin darauf hin, dass keine starke Verschlüsselung zur Verfügung steht.

Fazit: Umstieg lohnt

Die Entwicklung von Firefox 4 ist abgeschlossen. Derzeit steht Firefox 4 als Release Candidate zum Download bereit, der nach aktuellen Stand der Final-Version entspricht. So verkündet Mozilla-Sprecher Asa Dotzler, es gebe keine Gründe einen zweiten Release Candidate zu veröffentlichen: "Das bedeutet, dass nach allergrößter Wahrscheinlichkeit Firefox 4 RC den ihr gerade benutzt Firefox 4 ist". Die Veröffentlichung der Finalversion wird derzeit für den 22. März 2011 erwartet. Etwa zum gleichen Zeitpunkt soll auch Firefox 4 Mobile alias Fennec für Android und Maemo veröffentlicht werden, das auf der gleichen Browserengine basiert.

Firefox 4 enthält umfangreiche Neuerungen. Das sind vor allem die deutlich schnellere Javascript-Engine, neue HTML5-Funktionen, die Integration von Firefox Sync und die Vorbereitung auf Jetpack sowie die verbesserte Sicherheit. Es ist also davon auszugehen, dass Nutzer von Mozillas Browser schnell auf die neue Version wechseln werden, zumal die wichtigen Erweiterungen bereits auf die neue Version vorbereitet sind.

Die Entwicklung von Firefox 4 hat allerdings viel zu lange gedauert, das räumt auch Mozilla ein. Ursprünglich sollte Firefox 4 bereits Ende 2010 erscheinen, vorher sollte mit Firefox 3.7 noch ein weiteres Feature-Release erfolgen. Obwohl die Version 3.7 zugunsten von Firefox 4 gestrichen wurde, erscheint Firefox 4 voraussichtlich mit vier Monaten Verspätung.

Als Konsequenz daraus hat Mozilla angekündigt, das Entwicklungsmodell von Firefox zu verändern. Künftige Versionen sollen kleiner ausfallen, also weniger Neuerungen enthalten. Dafür sollen häufiger neue Versionen erscheinen. So sind für 2011 noch Firefox 5, 6 und 7 geplant. Einen Zeitplan für Firefox 5 wollen die Mozilla-Entwickler kurz nach Erscheinen von Firefox 4 vorlegen, wie Firefox-Chefentwickler Mike Beltzner im Gespräch mit Golem.de ankündigte.  (ji)


Verwandte Artikel:
Hardwarebeschleunigung: Mozilla wirft Microsoft Lügen vor   
(11.03.2011, https://glm.io/82028 )
Juli 2018: Chrome bestraft Webseiten ohne HTTPS   
(09.02.2018, https://glm.io/132689 )
Mozilla: Firefox soll mit Werbung in Pocket experimentieren   
(29.01.2018, https://glm.io/132450 )
FIDO U2F: Firefox 60 kommt mit aktiver Webauthentication-API   
(25.01.2018, https://glm.io/132391 )
Mozilla: Firefox Quantum wird mit Version 58 noch schneller   
(23.01.2018, https://glm.io/132325 )

© 1997–2020 Golem.de, https://www.golem.de/