HTML & Co.

Die von Browsern interpretierten Sprachen

Zur Darstellung einer (modernen) Webseite erhält der Browser Daten vom Webserver in zwei Kategorien:

  • Die hierarchisch gegliederten Inhalte (Text, Grafiken)
  • Anweisungen zur Darstellung dieser Inhalte
    (Layout, Farben, Schriftart und -größe, usw.)

Diese strikte Trennung von Inhalt und Darstellung gab es früher nicht, sie wurde vom W3C (World Wide Web Consortium) festgelegt und hat sich weitgehend durchgesetzt, um die zunehmende Vielfalt an Anzeigegeräten leichter bedienen zu können. Inhalte werden in einer der Auszeichnungssprachen HTML, XHTML oder XML verfasst, die Darstellung im Browser wird in der Praxis ausschließlich per CSS vorgegeben.

Auszeichnungssprachen – Markup Languages

Bei dieser Art von Sprache wird in einem Textdokument gemäß den Regeln der Sprache Information über seine Struktur bzw. gewünschte Darstellung "eingestreut". So werden z.B. Listen, Absätze oder Überschriften als solche gekennzeichnet, aber auch externe Elemente angesprochen (Grafiken, Filme, Klänge usw.). Enthält die Sprache keine Anweisungen zur Darstellung, spricht man von "descriptive markup", da nur "was es ist" festgehalten wird, nicht aber "wie zeige ich es an".

Die im Folgenden erwähnten Sprachen zeichnen ihr Markup mit "Tags" aus, wobei ein Tag ein Sprachelement in spitzen Klammern ist, mit optionalen Attributen:

  • <p> – Paragraph-Tag, öffnet einen Absatz.
  • <p id="bsp1"> – Paragraph-Tag mit Attribut.
  • <p>Dies ist ein Absatz.</p> – Kompletter Absatz.
1. HTML

HyperText Markup Language war die erste Sprache des Internets. Sie ermöglicht eine Mischung aus "descriptive markup" und "presentational markup" (Anweisungen zur Darstellung), und ist damit aus heutiger Sicht verpönt. Eine weitere Schwäche ist, dass sie nicht "wohlgeformt" ist, d.h. man muss nicht alle Auszeichnungselemente abschliessen (wie oben mit "</p>"), womit die Verschachtelung der enthaltenen Elemente nicht eindeutig sein muss. Daher kann man bei HTML zu Recht von einer "Tag-Suppe" sprechen, und die Browser müssen ihr Bestes tun, die Absicht zu erraten und irgend etwas Sinnvolles anzuzeigen.

2. XML

XML steht für Extensible Markup Language, eine erweiterbare Auszeichnungssprache. XML-Dokumente müssen wohlgeformt sein (eindeutig formuliert), und enthalten keinerlei Anweisungen zu ihrer Darstellung. Doch XML geht auch hierüber weit hinaus, denn auch die Sprachelemente (Tags) und ihre Semantik sind nicht allgemeingültig festgelegt, sondern können vom Benutzer in einem XML Schema selbst vorgegeben werden. Ein Schema könnte z.B. Vorgaben für Dokumente mit Kochrezepten enthalten, ein anderes für Teile in einem Lager.

Aufgrund dieser Flexibilität geniesst XML immer mehr Einsatz in vielen Bereichen der heutigen Informatik, kann aber per se nicht für Internet-Seiten benutzt werden, da hierfür Menge und Semantik von Markup-Elementen fehlen.

3. XHTML

Als Antwort auf die oben erwähnte HTML-Misere wurde HTML nach den Regeln von XML neu formuliert, zu XHTML. Die Tags und ihre Semantik sind dabei fast gleich geblieben, unpassende Attribute (und einige unpassende Tags) wurden entfernt und die Schreibweise ist wohlgeformt. Diese Sprachvariante setzt sich zunehmend im heutigen Internet durch.

Dynamik mit JavaScript

Auszeichnungssprachen beschreiben einen statischen Inhalt. Mit der von jedem Browser interpretierten Sprache JavaScript kann eine große Bandbreite an dynamischen Anpassungen der Inhalte bewerkstelligt werden, ohne die Seite erneut vom Webserver abrufen zu müssen. Mehr dazu finden Sie auf der Seite JavaScript.

 

Wasserkaskaden

Darstellung mit CSS

Mit der Cascading Style Sheet Sprache können sämtliche Elemente eines Dokuments in einer Auszeichnungssprache gestaltet werden. Dabei können sowohl Position und Aussehen vorgegeben werden. Die Sprache kann in externen Dateien, im Kopf des Dokuments oder sogar inline, bei einzelnen Elementen, benutzt werden. Das Wort "Cascading" (Kaskade) deutet auf ein Vererbungsprinzip, wobei Elemente des Dokumentenbaums ihre "Styles" ihren Kindknoten vererben. Die Macht von CSS können Sie auf dieser Website unter Schema & Schrift live erleben. Verweise zu Websites über CSS finden Sie hier unter Web Links.

Plugin- und serverseitige Sprachen

Bei vielen Webseiten kommen weitere Sprachen zum Einsatz, die nicht vom Browser ausgeführt werden:

  • Zur Erstellung dynamischer Seiten am Webserver sind diverse Sprachen gängig, z.B. PHP, Java, ASP.NET, Perl, Python u.a.m. Solche Lösungen sind überall nötig, wo der Seiteninhalt grundsätzlich dynamisch ist (z.B. Online-Shopping, Suchergebnisse), oder sehr kurzlebig (z.B. Wikis, Portale, CMS-Systeme).
  • Zur Darstellung mancher Seiten – vor allem mit Multimedia-Inhalten – werden die Fähigkeiten des Browsers durch sogenannte "Plugins" erweitert. Diese gehören nicht zum Browser selbst, sondern werden vom jew. Plugin-Hersteller bereit gestellt und vom Browser nach Bedarf, meistens nur nach ausdrücklicher Zustimmung des Benutzers, aus dem Internet heruntergeladen und auf dem Rechner des Benutzers abgelegt. Zu den verbreitesten Plugins gehören Flash Player, Java, Adobe Reader (PDF), und Quicktime.

<title>HTML &amp; Co. - Tim Reeves Internet-Programmierung</title> <meta name= "description" content= "Tim Reeves Internet-Programmierung - Html und Co. - die von Browsern interpretierten Sprachen" /> <meta name= "keywords" content= "HTML, XHTML, XML, JavaScript, CSS" /> <meta name= "date" content= "2007-12-29" /> <?php include("../head.inc.php"); include("../navi.inc.php"); ?> <div class= "content"> <table cellpadding= "0" cellspacing= "0" class= "spalten"> <tr> <td class= "sp3"> <h1>HTML &amp; Co.</h1> <h4>Die von Browsern interpretierten Sprachen</h4> <p>Zur Darstellung einer (modernen) Webseite erhält der Browser Daten vom Webserver in zwei Kategorien:</p> <ul> <li>Die hierarchisch gegliederten Inhalte (Text, Grafiken)</li> <li>Anweisungen zur Darstellung dieser Inhalte<br />(Layout, Farben, Schriftart und -größe, usw.)</li> </ul> <p>Diese strikte Trennung von Inhalt und Darstellung gab es früher nicht, sie wurde vom W3C (World Wide Web Consortium) festgelegt und hat sich weitgehend durchgesetzt, um die zunehmende Vielfalt an Anzeigegeräten leichter bedienen zu können. Inhalte werden in einer der Auszeichnungssprachen HTML, XHTML oder XML verfasst, die Darstellung im Browser wird in der Praxis ausschließlich per CSS vorgegeben.</p> <h4>Auszeichnungssprachen &ndash; Markup Languages</h4> <p>Bei dieser Art von Sprache wird in einem Textdokument gemäß den Regeln der Sprache Information über seine Struktur bzw. gewünschte Darstellung "eingestreut". So werden z.B. Listen, Absätze oder Überschriften als solche gekennzeichnet, aber auch externe Elemente angesprochen (Grafiken, Filme, Klänge usw.). Enthält die Sprache keine Anweisungen zur Darstellung, spricht man von "descriptive markup", da nur "was es ist" festgehalten wird, nicht aber "wie zeige ich es an".</p> <p>Die im Folgenden erwähnten Sprachen zeichnen ihr Markup mit "Tags" aus, wobei ein Tag ein Sprachelement in spitzen Klammern ist, mit optionalen Attributen:</p> <ul> <li><span class= "dunklerhintergrund">&lt;p&gt;</span> &ndash; Paragraph-Tag,