<?xml version="1.0" encoding="ISO-8859-1"?>


<?xml-stylesheet type="text/xsl" href="../xsl/kapitel-html.xsl"?>

<kurs nummer="1">
<titel>Webseiten Quick'n easy</titel>
<ref back="kap2.xml" next="kap4.xml" home="index.xml" main=""/>


<kapitel nummer="3">
  <titel>Die Tabelle, das Universalwerkzeug</titel>

  <absatz>
    <bild src="screenshot3.1.jpg" alt="" align="left" width="300" />
    <text>
      Tabellen sind derzeit eines der Standardmittel um Webseiten
      optisch ansprechend zu gestalten.
    </text>
    <text>
      Der derzeitige Klassiker ist eine Konstruktion mit einem
      Hauptmenu oben, und links und rechts Untermenues. In der Mitte der
      Seite findet sich der eigentliche Inhalt der Seite.
    </text>
    <text>
      Unser Beispiel  links besteht aus einem Menue oben, sowie einem am
      linken Rand. Auf ein Menue am rechten Rand wurde verzichtet.
    </text>
  </absatz>

  <unterkapitel nummer="1">
    <titel>Die Grundstruktur einer Tabelle</titel>
    <absatz>
    <text>
      Als erstes werden wir eine kleine einfache Tabelle erstellen um
      mit der Grundidee von Tabellen warm zu werden.
    </text>
    <text>
      Auch werden wir teilweise inzwischen nicht mehr empfohlene
      Attribute weiterhin beibehalten, da nicht jeder sofort auch gleich
      mit Stylesheets klar kommt. Die betroffenen Attribute sind aber 
      im aktuellen Standard noch legal.
    </text>
    </absatz>

    <absatz>
      <text>
        So eine Tabelle besteht aus drei Tags (es geht auch viel
	komplizierter, aber drei Tags reichen in vielen Fällen).
      </text>
    </absatz>

    <absatz>
      <text>
        Als erstes haben wir ein &lt;table>&lt;/table> Konstrukt,
	welches dem Webbrowser ansagt, dass jetzt eine Tabelle kommt,
	bzw. aufhört.
      </text>
      <text>
        Danach folgt für jede Zeile von links nach rechts - unsere
	Tabelle wird zeilenweise aufgebaut - ein &lt;tr>&lt;/tr>
      </text>
      <text>
        Zu guter Letzt haben wir in jeder Tabellenzeile ein oder mehrere
	Tabellenzellen. Diese werden mit &lt;td>&lt;/td> angezeigt.
      </text>
    </absatz>

    <absatz>
      <text>
        Damit haben wir eine komplette Tabelle. Zwar noch eine sehr
        einfache solche, aber alles andere können wir mit diesen drei
        Bausteinen erreichen.
      </text>
      <text>
        Zum Starten machen wir uns eine Tabelle mit 3 Zeilen und je 2
	Zellen in jeder Zeile (auf den ersten Blick viel Code für wenig
	Ergebnis):
      </text>


    <code>
    <file src="3.1.html" text="BeispielCode" />
    <bild src="screenshot3.2.jpg" alt="" align="right" width="200"/>
    <codesrc>
&lt;html>&lt;head>&lt;title>eine kleine Tabelle&lt;/title>&lt;/head>
&lt;body>


&lt;table border="1">

  &lt;tr>
    &lt;td>Reihe 1, Zelle 1&lt;/td>
    &lt;td>Reihe 1, Zelle 2&lt;/td>
  &lt;/tr>

  &lt;tr>
    &lt;td>Reihe 2, Zelle 1&lt;/td>
    &lt;td>Reihe 2, Zelle 2&lt;/td>
  &lt;/tr>

  &lt;tr>
    &lt;td>Reihe 3, Zelle 1&lt;/td>
    &lt;td>Reihe 3, Zelle 2&lt;/td>
  &lt;/tr>

&lt;/table>



&lt;/body>&lt;/html>
    </codesrc>
    </code>
    </absatz>

  </unterkapitel>

  <unterkapitel nummer="2">
    <titel>Zellen mit Übergröße</titel>

    <absatz>
    <bild src="screenshot3.18.jpg" alt="" align="left" width="100"/>
    <text>
      Manchmal möchte man in der einen Spalte oder Zeile mehrere Zellen
      haben, in der Nachbarspalte (oder Zeile) weniger Zellen.
    </text>

    <text>
      Dafür gibt es die Attribute colspan und rowspan. Diese werden im
      &lt;td colspan="2">, bzw. &lt;td rowspan="2"> untergebracht und
      zeigen mit ihrer Zahl (hier: 2) an, 
      wie viele Felder überspannt werden sollen. Beide Attibute
      können zusammen in einem td-Tag verwendet werden: &lt;td
      colspan="2" rowspan="2">.
    </text>
    <text>
      Die Reihenfolge, in der die Attribute
      angegeben werden, ist grundsätzlich egal und frei wählbar.
    </text>
    </absatz>

    <absatz>
    <text>
      Im Folgenden einige Beispiele.
    </text>
    </absatz>

    <beispiel>
    <titel>Zellen nach rechts überspannen</titel>
    <absatz>
       <text>
         Ein colspan über zwei Zellen, in unserer Übungstabelle
	 von oben. Wir überspannen in der mittelsten Zeile 2 Felder.
	 Hierzu geben wir im ersten Feld, welches betroffen ist an, dass
	 wir ein Feld möchten, welches 2 Felder überspannt und das in
	 waagerechter Richtung. Es wird also das Feld daneben mit
	 verwendet.
       </text>
       <text>
         Alle Angaben für die mit verwendeten Felder entfallen. Unsere
	 Tabelle im Code unten wird also kleiner. Das fehlende Feld wird
	 nicht einmal mehr erwähnt.
       </text>
       <text>
         Wer sich über das Attribut border="1" wundert: hiermit sagen
	 wir dem Webbrowser, dass er uns die Ränder der Tabelle mit
	 anzeigen soll. Gibt man nichts an, bekommt man bei aktuellen
	 Webbrowsern eine Tabelle ohne Ränder. Dies ist zwar hübsch
	 anzuschaun aber beim Entwickeln einer neuen Tabelle eher
	 hinderlich.
       </text>
    <code>
    <file src="3.2.html" text="BeispielCode" />
    <bild src="screenshot3.3.jpg" alt="" align="right" width="200"/>
    <codesrc>
&lt;html>&lt;head>&lt;title>eine kleine Tabelle&lt;/title>&lt;/head>
&lt;body>

&lt;table border="1">

  &lt;tr>
    &lt;td>Reihe 1, Zelle 1&lt;/td>
    &lt;td>Reihe 1, Zelle 2&lt;/td>
  &lt;/tr>

  &lt;tr>
    &lt;td colspan="2">Reihe 2, Zelle 1&lt;/td>
  &lt;/tr>

  &lt;tr>
    &lt;td>Reihe 3, Zelle 1&lt;/td>
    &lt;td>Reihe 3, Zelle 2&lt;/td>
  &lt;/tr>

&lt;/table>


&lt;/body>&lt;/html>
    </codesrc>
    </code>
    </absatz>
    </beispiel>

    <beispiel>
    <titel>Zellen nach unten überspannen</titel>
    <absatz>
    <text>
      Als nächstes drehen wir die Richtung um, nehmen uns aber die
      gleiche Zelle als Startpunkt.
    </text>
    <text>
      Wie wir sehen entfällt auch hier wieder die Tabellenzelle, die
      nicht mehr benötigt wird, weil ihr Platz bereits von der anderen
      Zelle mitbenutzt wird.
    </text>
    <code>
    <file src="3.3.html" text="BeispielCode" />
    <bild src="screenshot3.4.jpg" alt="" align="right" width="200"/>
    <codesrc>
&lt;html>&lt;head>&lt;title>eine kleine Tabelle&lt;/title>&lt;/head>
&lt;body>


&lt;table border="1">

  &lt;tr>
    &lt;td>Reihe 1, Zelle 1&lt;/td>
    &lt;td>Reihe 1, Zelle 2&lt;/td>
  &lt;/tr>

  &lt;tr>
    &lt;td rowspan="2">Reihe 2, Zelle 1&lt;/td>
    &lt;td>Reihe 2, Zelle 2&lt;/td>
  &lt;/tr>

  &lt;tr>
    &lt;td>Reihe 3, Zelle 2&lt;/td>
  &lt;/tr>

&lt;/table>


&lt;/body>&lt;/html>
    </codesrc>
    </code>
    </absatz>
    </beispiel>

    <beispiel ausgabe_in="handout">
    <titel>Zellen unten und rechts gleichzeitig überspannen</titel>
    <absatz>
    <text>
    Zum Schluß noch die dritte Variation: eine Erweiterung in alle
    Richtungen. Wir wählen: je 2 Felder nach rechts und 2 Felder nach
    unten.
    </text>
    <text>
      Damit wir auch etwas davon haben, erweitern wir unsere Tabelle auf
      3 Reihen mit je 3 Tabellenzellen.
    </text>
    <code>
        <file src="3.4.html" text="BeispielCode" />
        <bild src="screenshot3.5.jpg" alt="" align="right" width="200"/>
    <codesrc>
&lt;html>&lt;head>&lt;title>eine kleine Tabelle&lt;/title>&lt;/head>
&lt;body>


&lt;table border="1">

  &lt;tr>
    &lt;td>Reihe 1, Zelle 1&lt;/td>
    &lt;td>Reihe 1, Zelle 2&lt;/td>
    &lt;td>Reihe 1, Zelle 3&lt;/td>
  &lt;/tr>

  &lt;tr>
    &lt;td>Reihe 2, Zelle 1&lt;/td>
    &lt;td colspan="2" rowspan="2">Reihe 2, Zelle 2&lt;/td>
  &lt;/tr>

  &lt;tr>
    &lt;td>Reihe 3, Zelle 1&lt;/td>
  &lt;/tr>

&lt;/table>

&lt;/body>&lt;/html>
    </codesrc>
    </code>
    </absatz>
    </beispiel>

  </unterkapitel>

  <unterkapitel nummer="3">
    <titel>Jede Zelle: eine kleine Welt für sich.</titel>

    <absatz>
    <text>
      Innerhalb einer jeden Zelle können Sie sich mit HTML austoben. Es
      ist alles erlaubt was auch zwischen &lt;body> und &lt;/body>
      erlaubt ist.
    </text>
    <text>
      Absätze, Zeilenumbrüche, Überschriften, Bilder, Verlinkungen auf
      andere Seiten, sogar Tabellen sind völlig legal.
    </text>
    <text>
      Auf diese Weise entstehen Webseiten mit mehreren Menus und
      Seiteninhalten.
    </text>
    <text>
      Wie man das ganze etwas umsortiert und farblich ansprechender
      gestalten kann, betrachten wir im nächstens Unterkapitel und im
      übernächsten Kapitel (CSS).
    </text>
    </absatz>

    <absatz>
    <text>
      An dieser Stelle schauen wir uns eine noch kleine Tabelle an.
    </text>
    <text>
      Ein Bild, etwas Text, ein Absatz, eine kleine Tabelle um ein
      paar Daten besser anzuzeigen... nicht viel. Aber man sollte einen
      Eindruck gewinnen, was alles in einer Tabellenzelle möglich ist.
    </text>
    <code>
        <file src="3.5.html" text="BeispielCode" />
        <bild src="screenshot3.6.jpg" alt="" align="right" width="300"/>
    <codesrc>
&lt;html>&lt;head>&lt;title>Meine kleine Seite&lt;/title>&lt;/head>
&lt;body>

&lt;table border="1">
  &lt;tr>
    &lt;td colspan="2"> &lt;h1>Meine kleine Seite&lt;/h1> &lt;/td>
  &lt;/tr>
  &lt;tr>
    &lt;td> 
      &lt;img src="testbild.gif" alt="logo">
    &lt;/td>
    &lt;td>
      Ich darf mich vorstellen:
      &lt;table>
      &lt;tr>
        &lt;td>Mein Name:&lt;/td>
        &lt;td>Sabine Muster&lt;/td>
      &lt;/tr>

      &lt;tr>
        &lt;td>Mein Geburtstag:&lt;/td>
        &lt;td>31. Februar&lt;/td>
      &lt;/tr>

      &lt;tr>
        &lt;td>Meine Lieblingsfarbe:&lt;/td>
        &lt;td>lilagrünblaßblau&lt;/td>
      &lt;/tr>

    &lt;/td>
  &lt;/tr>
&lt;/table>

&lt;p>
  Was ich nicht aussetehen kann?&lt;br>
  Den Spruch: "Wenn man es nicht kann, soll man es sein lassen."&lt;br>
  Richtig sollte es heißen: "Wenn man es nicht kann, soll man es üben."
&lt;/p>

    &lt;div>&#38;copy;  MeinName, 2004&lt;/div>

&lt;/body>&lt;/html>
    </codesrc>
    </code>
    </absatz>

    <beispiel>
       <titel>Seitenlayout mit Tabelle</titel>
    <absatz>
    <code>
        <file src="3.6.html" text="BeispielCode" />
        <bild src="screenshot3.7.jpg" alt="" align="right" width="300"/>
    <codesrc>
&lt;html>&lt;head>&lt;title>Meine Seite&lt;/title>&lt;/head>
&lt;body>

&lt;table border="1" width="100%" height="100%">
  &lt;tr>
    &lt;td width="150"> &lt;img src="testbild.gif" 
                                alt="logo">
    &lt;/td>
    &lt;td> 
       Menue: 
          &lt;br>
          &lt;a href="news.html">Home&lt;/a>
	| &lt;a href="news.html">Kontakt&lt;/a>
	| &lt;a href="news.html">Neuigkeiten&lt;/a>
    &lt;/td>
  &lt;/tr>

  &lt;tr>
    &lt;td> Links:
	&lt;br>&lt;a href="http://www.whitehouse.gov/">Mein Haus&lt;/a>
	&lt;br>&lt;a href="http://www.bundespraesident.de/">Mein Job&lt;/a>
	&lt;br>&lt;a href="http://www.swm.de/">Mein Swimmingpool&lt;/a>
	&lt;br>&lt;a href="http://www.apple.de">Mein Computer&lt;/a>
	&lt;br>&lt;a href="">Meine Frau&lt;/a>
	&lt;br>&lt;a href="">Meine Kinder&lt;/a>
	&lt;br>&lt;a href="http://www.hawaii.com/">Unser letzter Urlaub&lt;/a>
    &lt;/td>
    &lt;td> 
	  &lt;h3>Steckbrief&lt;/h3>
	  &lt;table>

	  &lt;tr>
	    &lt;td>Vorname: &lt;/td>
	    &lt;td>Max&lt;/td>
	    &lt;td>Nachname: &lt;/td>
	    &lt;td>Muster&lt;/td>
	  &lt;/tr>

	  &lt;tr>
	    &lt;td>Adresse: &lt;/td>
	    &lt;td colspan="3">
	      Musterstrasse 8&lt;br>
	      12345 Musterdorf a.d. Muster
	    &lt;/td>
	  &lt;/tr>

	  &lt;tr>
	    &lt;td>Tel: &lt;/td>
	    &lt;td>+49 123 456 789 0&lt;/td>
	    &lt;td>Fax: &lt;/td>
	    &lt;td>+49 123 456 789 5&lt;/td>
	  &lt;/tr>

	  &lt;tr>
	    &lt;td>Handy: &lt;/td>
	    &lt;td>0177 123 456 23&lt;/td>
	    &lt;td>Email: &lt;/td>
	    &lt;td>max.muster@example.com&lt;/td>
	  &lt;/tr>


	  &lt;/table>

    &lt;/td>
  &lt;/tr>

  &lt;tr>
    &lt;td colspan="2">&lt;div>&#38;copy;  MeinName, 2004&lt;/div>&lt;/td>
  &lt;/tr>

&lt;/table>

&lt;/body>&lt;/html>
    </codesrc>
    </code>
    </absatz>

    <absatz>
      <text>
        Man sieht: innerhalb zweier &lt;td> &lt;/td> kann man HTML
	verwenden, als wäre man zwischen &lt;body> und &lt;/body>.
	Sogar Tabellen in Tabellen sind kein Problem (der Steckbrief ist
	eine eigenständige Tabelle).
      </text>
      <text>
        Einigen sind vielleicht kleine Erweiterungen aufgefallen. So hat
	die äußere Tabelle die Attribute width="100%" und height="100%"
	dazubekommen.
      </text>
      <text>
	Dies besagt, dass der Webbrowser die Tabelle über 100% der
	Browserfensters in die Breite (width) und 100% des
	Browserfensters in die Höhe (height) aufspannen soll.
      </text>
      <text>
        Auch im &lt;td> Tag kann man width und height angeben, man
	sollte aber immer mindestens eine Tabellenzelle zurückbehalten,
	deren Größe der Browser selbst wählen kann. Als Werte sind
	Prozentwerte zugelassen (dann muß man das %-Zeichen dahinter
	schreiben) oder Pixelwerte. Dann steht nur eine Zahl dort, wie
	in unserer ersten Tabellenzelle, die wir auf 150 Pixel in der
	Breite festlegen. 
      </text>
      <text>
	Damit legen wir automatisch die Breite der gesamten Spalte fest.
      </text>
    </absatz>

    </beispiel>

    <beispiel ausgabe_in="handout">
       <titel>Seitenlayout mit Tabelle und Stylesheet</titel>
       <absatz>
         <text>
	   Wir werden das Beispiel des letzten Unterkapitels jetzt etwas
	   aufpeppen. Dazu werden wir primär Stylesheets einsetzen.
         </text>
       </absatz>
       <absatz>
	  <text>
	  Als erstes streichen wir aus den Tabellen die Angabe
	  border="1" .
	  </text>
	  <text>
	  Jetzt sorgen wir dafür, dass der Text in allen Tabellenzellen
	  am oberen Ende der Tabellenzelle beginnt: 
	  </text>
	  <code><codesrc>td { vertical-align: top; }</codesrc></code>
       </absatz>
       <absatz>
          <!-- <bild src="screenshot3.8.jpg" alt="" align="left"
	  width="300"/> -->
          <bild src="screenshot3.7.jpg" alt="" align="left" width="300"/>
	  <text>
	  Als nächstes schenken wir der Tabellenzelle, in der wir unsere
	  Links aufgelistet haben, ein class="gelb" und der oberen
	  Tabellenzelle ein class="blau".
	  </text>
	  <text>
	  Jetzt ist die Tabelle in der Mitte dran. Eine einfache
	  Farbänderung kann man problemlos auch schon im Tag &lt;tr> mir
	  angeben, dann wird der Style auf jede Zelle der Reihe
	  angewendet. Wir können also die gleichen Angaben verwenden,
	  wie für die beiden Menues.
	  </text>
         <text>
	 Jetzt ist noch die Copyright-Zeile dran.
         </text>
         <text>
	 Wer die beiden Bilder vergleicht, stellt fest, dass unsere
	 Copyright-Zeile jetzt dezent in die rechte Ecke verbannt wurde,
	 mit einem kleinen Textfont und in Schrägschrift (italic).
         </text>
         <text>
	 Die dafür nötigen Styleangabe nennen wir copy.
         </text>
       </absatz>
      
       <absatz>
	  <text>
	  Zum Schluß greifen wir noch etwas in die Trickkiste:
	  </text>
	  <text>
	  Unsere oberste Zeile ist noch etwas groß (je nach Webbrowser
	  mehr oder weniger). Hier verwenden wir in den Style-Angaben
	  ein height und geben an, wie hoch unsere Zeile werden soll.
	  Dieser Styleangabe geben wir den Namen flach und verwenden Sie
	  als class="flach" im tr-Tag der ersten Tabellenzeile.
	  </text>
       </absatz>
      
       <absatz>
	  <text>
	  Damit unsere Links auch hübsch aufleuchten, wenn man mit der
	  Maus darüberstreicht, kann man Styleangaben für :hover machen.
	  (hier steht der Name bereits fest). In Kombination mit a:hover
	  betreffen diese Einstellungen nur die Verweise auf andere
	  Webseiten, also alles, was zwischen &lt;a> und &lt;/a> steht.
	  </text>
       </absatz>
      
       <absatz>
	 <text>
	   Und so sieht das HTML-Dokment jetzt aus (wie die Werte für
	   die Farben entstehen, läßt sich im Kapitel 'Mehr CSS - Farbe,
	   Layout' nachlesen):
	 </text>
         <code>
          <file src="3.7.html" text="BeispielCode" />
          <bild src="screenshot3.8.jpg" alt="" align="right" width="300"/>
         <codesrc>
&lt;html>
&lt;head>
  &lt;title>Meine Seite&lt;/title>
  &lt;style>
  td { vertical-align: top; }
  .gelb { background-color: #ffffaa; }
  .blau { background-color: #aaaaff; }
  .grau { background-color: #dddddd; }
  .flach { height: 40px;}
  .copy 
  { 
     text-align: right;
     font-size: 11px;
     font-style: italic;
  }
  a:hover { color: #dddddd; background-color: #005500; }
  &lt;/style>
&lt;/head>
&lt;body>

&lt;table width="100%" height="100%">
  &lt;tr class="flach">
    &lt;td width="150"> &lt;img src="testbild.gif" alt="logo"> &lt;/td>
    &lt;td class="blau"> 
         Menue: 
	      &lt;br>
	        &lt;a href="news.html">Home&lt;/a>
	      | &lt;a href="news.html">Kontakt&lt;/a>
	      | &lt;a href="news.html">Neuigkeiten&lt;/a>
    &lt;/td>
  &lt;/tr>

  &lt;tr>
    &lt;td class="gelb"> Links:
	    &lt;br>&lt;a href="http://www.whitehouse.gov/">Mein Haus&lt;/a>
	    &lt;br>&lt;a href="http://www.bundespraesident.de/">Mein Job&lt;/a>
	    &lt;br>&lt;a href="http://www.swm.de/">Mein Swimmingpool&lt;/a>
	    &lt;br>&lt;a href="http://www.apple.de">Mein Computer&lt;/a>
	    &lt;br>&lt;a href="">Meine Frau&lt;/a>
	    &lt;br>&lt;a href="">Meine Kinder&lt;/a>
	    &lt;br>&lt;a href="http://www.hawaii.com/">Unser letzter Urlaub&lt;/a>
    &lt;/td>
    &lt;td> 
	  &lt;h3>Steckbrief&lt;/h3>
	  &lt;table>

	  &lt;tr class="grau">
	    &lt;td>Vorname: &lt;/td>
	    &lt;td>Max&lt;/td>
	    &lt;td>Nachname: &lt;/td>
	    &lt;td>Muster&lt;/td>
	  &lt;/tr>

	  &lt;tr class="gelb">
	    &lt;td>Adresse: &lt;/td>
	    &lt;td colspan="3">
	      Musterstrasse 8&lt;br>
	      12345 Musterdorf a.d. Muster
	    &lt;/td>
	  &lt;/tr>

	  &lt;tr class="grau">
	    &lt;td>Tel: &lt;/td>
	    &lt;td>+49 123 456 789 0&lt;/td>
	    &lt;td>Fax: &lt;/td>
	    &lt;td>+49 123 456 789 5&lt;/td>
	  &lt;/tr>

	  &lt;tr class="gelb">
	    &lt;td>Handy: &lt;/td>
	    &lt;td>0177 123 456 23&lt;/td>
	    &lt;td>Email: &lt;/td>
	    &lt;td>max.muster@example.com&lt;/td>
	  &lt;/tr>


	  &lt;/table>

    &lt;/td>
  &lt;/tr>

  &lt;tr>
    &lt;td colspan="2">&lt;div class="copy">&#38;copy;  MeinName, 2004&lt;/div>&lt;/td>
  &lt;/tr>

&lt;/table>

&lt;/body>&lt;/html>
         </codesrc>
         </code>
       </absatz>

       <absatz>
       </absatz>
    </beispiel>

  </unterkapitel>

  <unterkapitel nummer="4">
    <titel>Breiten und Abstände in Tabellen</titel>

    <absatz>
    <text>
      Wer viel mit Farben arbeitet, wird bald feststellen, dass in den
      Tabellen selbst bei der Anzeige noch Abstände vorhanden sind.
    </text>
    </absatz>
    <absatz>
    <text>
      Hierbei handelt es sich um zwei Typen:
    </text>
    </absatz>

    <absatz>
    <bild src="screenshot3.9.jpg" alt="" />
    <text>
      1. Den Abstand der Tabellenzellen zueinander (cellspacing).
    </text>
    </absatz>
    <absatz>
    <bild src="screenshot3.10.jpg" alt=""  width="200"/>
    <text>
      2. Den Abstand vom Zellenrand zum Inhalt der Zelle (cellpadding).
    </text>
    </absatz>

    <absatz>
    <text>
      Im Folgenden variieren wir eine kleine Tabelle etwas um zu sehen,
      wie sich cellpadding und cellspacing auswirken.
    </text>
    </absatz>

    <absatz>
    <bild src="screenshot3.11.jpg" alt=""  width="200" align="left"/>
    <text>
      Zu Beginn erst einmal ohne weitere Angaben. Lediglich ein wenig
      Farbe (damit wir sehen wo sich etwas ändert) und border="1".
    </text>
    <code>
      <file src="3.8.html" text="BeispielCode" />
      <bild src="screenshot3.11.jpg" alt=""  width="200" align="right"/>

      <codesrc>
&lt;html>&lt;head>
  &lt;title>Abstände in Tabellen&lt;/title>
  &lt;style>
  .blau { background-color: blue; color: white; }
  .gelb { background-color: yellow; color: purple; }
  &lt;/style>

&lt;/head>&lt;body>

&lt;table border="1">

  &lt;tr class="blau">
    &lt;td> Zeile 1 Zelle 1&lt;/td>
    &lt;td> Zeile 1 Zelle 2&lt;/td>
  &lt;/tr>

  &lt;tr class="gelb">
    &lt;td>Zeile 2 Zelle 1&lt;/td>
    &lt;td>Zeile 2 Zelle 2&lt;/td>
  &lt;/tr>

&lt;/table>

&lt;/body>&lt;/html>
      </codesrc>
    </code>
    </absatz>

    <absatz>
    <bild src="screenshot3.12.jpg" alt=""  width="200" align="left"/>
    <text>
      Als nächstes ändern wir unser cellpadding und setzen es auf einen
      hübsch großen Wert (damit wir auch was davon haben). Die Zahl die
      wir im cellpadding angegeben haben (und auch die im cellspacing)
      teilt dem Webbrowser mit wie viele Pixel er Platz lassen soll.
    </text>
    <code>
      <file src="3.8.html" text="BeispielCode" />
      <bild src="screenshot3.12.jpg" alt=""  width="200" align="right"/>
      <codesrc>
&lt;table cellpadding="20" border="1">

  &lt;tr class="blau">
    &lt;td> Zeile 1 Zelle 1&lt;/td>
    &lt;td> Zeile 1 Zelle 2&lt;/td>
  &lt;/tr>

  &lt;tr class="gelb">
    &lt;td>Zeile 2 Zelle 1&lt;/td>
    &lt;td>Zeile 2 Zelle 2&lt;/td>
  &lt;/tr>

&lt;/table>
      </codesrc>
    </code>
    </absatz>

    <absatz>
    <bild src="screenshot3.13.jpg" alt=""  width="200" align="left"/>
    <text>
      Und jetzt auch mal den anderen Wert betrachten: cellspacing.
      Übrigens: man kann auch beide Attribute gleichzeitig verwenden und
      auf unterschiedliche Werte setzen.
    </text>
    <code>
      <file src="3.8.html" text="BeispielCode" />
      <bild src="screenshot3.13.jpg" alt=""  width="200" align="right"/>
      <codesrc>
&lt;table cellspacing="20" border="1">

  &lt;tr class="blau">
    &lt;td> Zeile 1 Zelle 1&lt;/td>
    &lt;td> Zeile 1 Zelle 2&lt;/td>
  &lt;/tr>

  &lt;tr class="gelb">
    &lt;td>Zeile 2 Zelle 1&lt;/td>
    &lt;td>Zeile 2 Zelle 2&lt;/td>
  &lt;/tr>

&lt;/table>
      </codesrc>
    </code>
    </absatz>

    <absatz ausgabe_in="handout">
    <bild src="screenshot3.14.jpg" alt=""  width="200" align="left"/>
    <text>
      Als letztes Beispiel setzen wir beide Attribute auf den Wert 0.
      Dies ist sehr beliebt, da damit die Tabellenzellen nahtlos
      aneinanderstoßen und Hintergrundfarben oder Bilder nicht weiter
      unterbrochen werden.
    </text>
    <code>
      <file src="3.8.html" text="BeispielCode" />
      <bild src="screenshot3.14.jpg" alt=""  width="200" align="right"/>
      <codesrc>
&lt;table cellpadding="0" cellspacing="0" border="1">

  &lt;tr class="blau">
    &lt;td> Zeile 1 Zelle 1&lt;/td>
    &lt;td> Zeile 1 Zelle 2&lt;/td>
  &lt;/tr>

  &lt;tr class="gelb">
    &lt;td>Zeile 2 Zelle 1&lt;/td>
    &lt;td>Zeile 2 Zelle 2&lt;/td>
  &lt;/tr>

&lt;/table>
      </codesrc>
    </code>
    </absatz>

  </unterkapitel>

  <literatur>
    <titel>W3C - Tabellen im HTML-Standard</titel>
    <kurzbeschreibung>
    Komplette Beschreibung aller Tags, die es für Tabellen gibt
    </kurzbeschreibung>
    <url src="http://www.w3.org/TR/html401/struct/tables.html#edef-TABLE" />
  </literatur>

  <literatur ausgabe_in="handout">
    <titel>Tabellen im HTML-Standard</titel>
    <kurzbeschreibung>
    Deutsche Übersetzung zum Standardtext des W3C
    </kurzbeschreibung>
    <url
    src="http://edition-w3.de/TR/1999/REC-html401-19991224/struct/tables.html#edef-TABLE" />
  </literatur>



  <uebung nummer="1">
  <titel>Viele bunte Klötzchen</titel>
  <aufgabe>
    <absatz>
      <bild src="screenshot3.15.jpg" alt="Klötzchen-Homepage"
      width="300" align=""/>
      <text>
        Mal eine andere Homepage. Versuchen Sie sich doch einmal an
	dieser Skizze!
      </text>
    </absatz>
  </aufgabe>
  <loesung>
  <absatz>
   <text>
     Hier eine Lösungshilfe: Wir verwenden eine Tabelle mit 6
     Zeilen und 6 Spalten.
   </text>
   <text>
     Die Farbe verteilen wir großzügig per Style-Angabe im Head-Bereich
     des Dokumentes.
   </text>
  </absatz>

  <absatz>
   <code>
      <file src="3.9.html" text="BeispielCode" />
      <codesrc>
   Um den Spass nicht zu verderben, gibt es den Lösungsvorschlag nur als
   separates File... auf den Webseiten.
      </codesrc>
   </code>
  </absatz>
  <absatz>
  <text>
   Bitte nicht zu vergessen: Dies ist nur ein
   Vorschlag, es gibt sicher noch mehr Wege eine Tabelle so
   hinzubekommen, dass sie aussieht, wie auf dem Bild.
  </text>
  </absatz>
  </loesung>
  </uebung>

  <uebung nummer="2" ausgabe_in="handout">
  <titel>Mosaikbild</titel>
  <aufgabe>
    <absatz>
      <bild src="screenshot3.16.jpg" alt="Mosaikbild" width="200" align="left" />
    <text>
      Gerade bei großen Bildern dauert das Laden oft sehr lange und ist
      für den Benutzer anstrengend. Dies kann man zwar nicht wirklich
      beschleunigen, aber spannender gestalten, indem man das große Bild
      in viele kleine Bilder zerlegt und per Tabelle wieder
      zusammensetzt. 
    </text>
    <text>
      Auch als Kopierschutz wird diese Technik gerne eingesetzt. Ziel
      hierbei ist es, die Erstellung einer Kopie des kompletten Bildes
      möglichst schwer zu machen (verhindern kann man das nicht).
    </text>
      
    <text>
      Vorsicht! Ältere Webbrowser laden erst die
      komplette Tabelle mit ihrem Inhalt und stellen sie danach komplett
      dar. Dies ist nicht im Sinne der Idee. Moderne Webbrowser halten
      es hier etwas anders, z.B. Firefox (Windows/Linux/MacOSX) oder
      Safari (MacOSX).
    </text>
    <text>
      Weiterhin kann man dem Webbrowser helfen, indem man in den Bildern
      die richtige Bildgröße per width und height angibt.
    </text>
    </absatz>

    <absatz>
      <bild src="screenshot3.17.jpg" alt="Mosaikbild" width="100" align="left" />
    <text>
      Auf Ihrer CD findet sich im Verzeichnis Kurs1_Uebungen eine Sammlung von
      Bildern.
    </text>
    <text>
      Kopieren Sie sich diese Bilder in Ihr Arbeitsvezeichnis.
    </text>
    <text>
      Setzen Sie die Bilder in Ihrer HTML-Seite zu einem Gesammtbild
      zusammen.
    </text>
    </absatz>
  </aufgabe>
  <loesung>
  <absatz>
    <text>
      Es gibt bei dieser Übung zwei Lösungsansätze. Einen ganz
      einfachen, der aber einige Tücken birgt und einen aufwändigeren,
      der dafür sicherer ist.
    </text>
  </absatz>
  <absatz>
    <text>
      Die schnelle und einfache Lösung verzichtet auf Tabellen und
      Schnickschnack.
    </text>
    <text>
      Die Bilder werden nebeneinander angeordnet und in der Mitte gibt
      es einen Zeilenumbruch.
    </text>
    <text>
      Genial einfach und ohne großen Aufwand. Der einzige Nachteil:
      Machen Sie Ihr Webbrowserfenster mal ganz schmal! Genauso. Jetzt
      werden plötzlich alle 4 Teilbilder untereinander angezeigt und
      alles ist dahin...
    </text>
    <code>
      <file src="3.10.html" text="BeispielCode" />
      <codesrc>
&lt;html>&lt;head>&lt;title>Mosaik&lt;/title>&lt;/head>
&lt;body>
&lt;img src="teil1.png">&lt;img src="teil2.png">&lt;br>
&lt;img src="teil3.png">&lt;img src="teil4.png">
&lt;/body>&lt;/html>
      </codesrc>
    </code>
  </absatz>
  <absatz>
    <text>
      Noch ein kleiner Trick: die einzelnen Bilder schließen nur dann
      nahtlos aneinander, wenn die img-Tags, die dem Browser
      sagen, dass er jetzt an dieser Stelle ein Bild anzeigen soll, auch
      genau aneinander schließen. Zeilenumbrüche und Leerzeichen
      zerstören den randlosen Bildaufbau an dieser Stelle.
    </text>
  </absatz>

  <absatz>
    <text>
      Die zweite Möglichkeit baut eine Tabelle auf, bei der alle Ränder
      und Abstände auf 0 Pixel Breite gesetzt werden.
    </text>
    <code>
      <file src="3.11.html" text="BeispielCode" />
      <codesrc>
&lt;html>&lt;head>&lt;title>Mosaik&lt;/title>&lt;/head>
&lt;body>

&lt;table border="0" cellpadding="0" cellspacing="0">
&lt;tr>&lt;td>&lt;img src="teil1.png">&lt;/td>
    &lt;td>&lt;img src="teil2.png">&lt;/td>
&lt;/tr>

&lt;tr>&lt;td>&lt;img src="teil3.png">&lt;/td>
    &lt;td>&lt;img src="teil4.png">&lt;/td>
&lt;/tr>

&lt;/table>
&lt;/body>&lt;/html>
      </codesrc>
    </code>
  </absatz>
  <absatz>
    <text>
      Der Vorteil dieser Variante ist, dass das Bild erhalten bleibt,
      egal wie schmal der Benutzer sein Browserfenster macht. Im Notfall
      bekommt er einen Scrollbalken.
    </text>
  </absatz>
  </loesung>
  </uebung>

</kapitel>
</kurs>
