Cross-Browser

Cross-Browser

Cross-Browser bezeichnet die Fähigkeit von in Webseiten eingebetteten Inhalten (insbesondere Cascading Style Sheets (CSS) und JavaScript), unabhängig vom jeweiligen Browsertyp und Betriebssystem die gleiche Ausgabe zu erzeugen beziehungsweise sich weitestgehend identisch zu verhalten.

Inhaltsverzeichnis

Einhaltung von Webstandards

Die Notwendigkeit für Cross-Browser-Fähigkeiten ist historisch gewachsen und stammt zum einen Teil aus der Zeit des Browserkrieges zwischen Microsoft und Netscape und zum anderen Teil aus der unterschiedlichen Interpretation diverser Standards in marktführenden Browsern. Zudem spielt der Wunsch vieler Webdesigner und -entwickler nach pixelgenauer Positionierung einzelner Elemente eine große Rolle.

Problematik

Das Ergebnis sind Webseiten, die nur auf bestimmten Browsern das gewünschte Ergebnis liefern, während sie auf dem Browser eines anderen Herstellers unschöne Darstellungsfehler aufweisen oder im schlimmsten Fall nicht funktionieren.

Als Konsequenz müssen sich Webdesigner darum bemühen, ihre Inhalte auf allen wichtigen Browsern lauffähig zu halten, welches mitunter ein aufwändiges Unterfangen nach der Versuch-und-Irrtum-Methode sein kann.

Aussicht

Mit dem DOM, einem Standardobjektmodell des W3C wurde ein erheblicher Schritt in eine einheitliche Richtung gegangen, jedoch gibt es noch starke Differenzen und Unzulänglichkeiten insbesondere bei der Kodierung von Events (siehe QuirksMode).

Beispiele

Um die nachfolgenden Code-Beispiele zu verstehen, sind Grundkenntnisse in HTML und JavaScript nötig:

JavaScript

<div id="sample" style="position : absolute; top : 100px; left : 100px;">Beispieltext</div>

Der Code beschreibt einen Textblock der in der linken oberen Ecke der Webseite 100 Pixel vom oberen und 100 Pixel linken Rand angezeigt werden soll. In den Browsern der 4er Serie des Netscape Navigators könnte man diesen Textblock mit JavaScript nachträglich verschieben:

document.layers['sample'].left = 200;

Dieser Code würde jedoch im Internet Explorer 4 nicht funktionieren. Stattdessen müsste man folgende Notation verwenden:

document.all['sample'].style.left = 200;

Um den Code cross-browser-fähig zu gestalten, müsste er also folgendermaßen aussehen:

if (document.all)
  document.all['sample'].style.left = 200;
else if (document.layers)
  document.layers['sample'].left = 200;

Der folgende Code benutzt das DOM, ein Standardmodell des W3C das von allen modernen Browsern unterstützt wird (z. B. Mozilla Firefox, Internet Explorer, Opera, Safari usw.):

document.getElementById('sample').style.left = '200px';

Cascading Stylesheets

Der folgende Code bewirkt eine Mindesthöhe in Block-Elementen:

 <div style="min-height: 200px;">Beispieltext</div>

Der Internet Explorer bis einschließlich Version 6 interpretiert die Angabe min-height fehlerhaft oder gar nicht, weshalb sich die Größe des Elements in diesen Browsern nach dem Inhalt richtet.

Folgende Angaben beschreiben die Größe und den Abstand eines div-Elements:

 <div style="width: 200px; height:50px; padding: 10px; border: 5px solid red;">Beispieltext</div>

Auch hier kann der Internet Explorer aufgrund des Box-Modell-Bugs das div-Element nicht korrekt darstellen, wenn das Dokument im Quirks-Modus gerendert wird: Entgegen der Spezifikation beträgt die Gesamtbreite in den betroffenen Browsern 200 Pixel (korrekt wäre eine Elementgesamtbreite von 230px).

Siehe auch

Weblinks

  • QuirksMode – Unterschiede moderner Webbrowser, und Möglichkeiten, diese zu umgehen
  • XJavaScript-Bibliothek mit vielen Demos
  • Crosscheck – JavaScript-Modultest-Framework, das Browserumgebungen für eine Vielzahl von Plattformen simuliert

Wikimedia Foundation.

Игры ⚽ Нужна курсовая?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Cross-browser — refers to the ability for a website, web application, HTML construct or client side script to support all the web browsers. The term cross browser is often confused with multi browser. Multi browser is a new paradigm in web development that… …   Wikipedia

  • Cross-Browser — Le Cross browser est la possibilité pour toute application web, sous format HTML ou programmée avec un langage de script s exécutant côté client de supporter plusieurs navigateurs web. Ce terme a été largement utilisé pendant la guerre des… …   Wikipédia en Français

  • cross-browser — adjective Compatible with more than one web browser …   Wiktionary

  • Cross-site scripting — (XSS) is a type of computer security vulnerability typically found in Web applications that enables attackers to inject client side script into Web pages viewed by other users. A cross site scripting vulnerability may be used by attackers to… …   Wikipedia

  • Cross-Site Scripting — (XSS) bezeichnet das Ausnutzen einer Computersicherheitslücke in Webanwendungen, indem Informationen aus einem Kontext, in dem sie nicht vertrauenswürdig sind, in einen anderen Kontext eingefügt werden, in dem sie als vertrauenswürdig eingestuft… …   Deutsch Wikipedia

  • Cross-site request forgery — Cross site request forgery, also known as a one click attack or session riding and abbreviated as CSRF (pronounced sea surf[1]) or XSRF, is a type of malicious exploit of a website whereby unauthorized commands are transmitted from a user that… …   Wikipedia

  • Cross-Site-Scripting — (XSS; deutsch Seitenübergreifendes Scripting) bezeichnet das Ausnutzen einer Computersicherheitslücke in Webanwendungen, indem Informationen aus einem Kontext, in dem sie nicht vertrauenswürdig sind, in einen anderen Kontext eingefügt werden …   Deutsch Wikipedia

  • Cross-zone scripting — is a browser exploit taking advantage of a vulnerability within a zone based security solution. The attack allows content (scripts) in unprivileged zones to be executed with the permissions of a privileged zone i.e. a privilege escalation within… …   Wikipedia

  • Cross-Origin Resource Sharing — (CORS) is a web browser technology specification, which defines ways for a web server to allow its resources be accessed by a web page from a different domain.[1] Such access would otherwise be forbidden by the same origin policy. Contents 1… …   Wikipedia

  • Cross-application scripting — (CAS) is a vulnerability affecting desktop applications that don t check input in an exhaustive way. CAS allows an attacker to insert data that modifies the behaviour of a particular desktop application. This makes it possible to extract data… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”