File: layouts.htm

package info (click to toggle)
selfhtml 8.0-5
  • links: PTS
  • area: non-free
  • in suites: sarge
  • size: 32,684 kB
  • ctags: 3,788
  • sloc: xml: 605; java: 376; makefile: 57
file content (147 lines) | stat: -rw-r--r-- 14,568 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>SELFHTML: HTML/XHTML / Frames / Frames als Mittel f&uuml;r Seitenlayouts</title>
<link rel="stylesheet" type="text/css" href="../../src/selfhtml.css">
<meta name="description"    content="Was Sie wissen sollten, wenn Sie Frames f&uuml;r Ihr Web-Projekt verwenden wollen.">
<meta name="keywords"       content="SELFHTML, HTML, XHTML, Frames, Framesets, Schaufenstereffekte">
<meta name="author"         content="Stefan M&uuml;nz, selfhtml@teamone.de">
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
<meta name="DC.Publisher"   content="selfhtml@teamone.de">
<meta name="DC.Date"        content="2001-10-27T08:00+01:00">
<meta name="DC.Identifier"  content="http://selfhtml.teamone.de/html/frames/layouts.htm">
<meta name="DC.Language"    content="de">
<meta name="DC.Rights"      content="../../editorial/copyright.htm">
<meta name="DC.Date.Create" content="2001-10-27T08:00+01:00">
<meta name="SELF.Version"   content="1">
<meta name="SELF.Pagetype"  content="Information">
<meta name="SELF.Path"      content="SELFHTML == ../../index.htm // HTML == ../index.htm // Frames == index.htm">
<link rel="stylesheet" type="text/css" href="../../src/selfhtml.css">
</head>

<body bgcolor="#FFFFFF" text="#000000" link="#AA5522" vlink="#772200" alink="#000000">

<table cellpadding="4" cellspacing="0" border="0" width="100%">
<tr><td bgcolor="#FFEEDD" class="nav"><a class="an" name="top"><img src="../../src/refkap.gif" width="16" height="13" border="0" alt="Teil von"></a> <a href="../../index.htm"><b>SELFHTML</b></a>/<a href="../../navigation/index.htm" target="_parent">Navigationshilfen</a> <img src="../../src/refkap.gif" width="16" height="13" border="0" alt="Teil von"> <a href="../index.htm"><b>HTML/XHML</b></a> <img src="../../src/refkap.gif" width="16" height="13" border="0" alt="Teil von"> <a href="index.htm"><b>Frames</b></a></td>
</tr></table>

<table cellpadding="4" cellspacing="0" border="0" width="100%">

<tr>
<td bgcolor="#EEEEEE" class="doc" width="110"><img src="../../src/logo.gif" width="106" height="109" border="0" alt="SELFHTML"></td>
<td bgcolor="#EEEEEE" class="doc" valign="bottom" width="100%"><h2>Frames als Mittel f&uuml;r Seitenlayouts</h2></td>
</tr>

<tr>
<td bgcolor="#EEEEEE" class="doc" valign="top" align="center">
<img src="../../src/dokx.gif" width="30" height="20" vspace="6" border="0" alt="Informationsseite">
</td>

<td bgcolor="#FFFFFF" valign="top" nowrap>
<p>
<img src="../../src/down.gif" width="14" height="10" border="0" alt="nach unten">&nbsp;<a href="#einsatzmoeglichkeiten"><b>Sinnvolle Einsatzm&ouml;glichkeiten f&uuml;r Frames</b></a><br>
<img src="../../src/down.gif" width="14" height="10" border="0" alt="nach unten">&nbsp;<a href="#schaufenster"><b>Unfaire Schaufenster-Effekte</b></a><br>
</p>
</td>
</tr>

<tr><td colspan="2" bgcolor="#EEEEEE" class="doc">&#160;<a href="#bottom"><img src="../../src/down.gif" width="14" height="10" border="0" alt="nach unten"></a>&nbsp;</td></tr>
</table>




<h2 class="Sh2"><a class="an" name="einsatzmoeglichkeiten">Sinnvolle Einsatzm&ouml;glichkeiten f&uuml;r Frames</a></h2>


<p>Frames - Informationsverteilung auf mehrere, voneinander unabh&auml;ngige Fenster - sind ein faszinierendes Werkzeug, aber auch ein Werkzeug, mit dem man viel verkehrt machen kann. Generell gilt: jeder Einsatz von Frames muss gerechtfertigt sein. Das bedeutet: die Verwendung der Frame-Technik muss dem Anwender als sinnvoll und vorteilhaft erscheinen. Wer Frames aus purem Selbstzweck einsetzt, muss damit rechnen, als technikverliebter HTML-Novize statt als souver&auml;ner Web-Designer betrachtet zu werden.</p>

<p>Der Grund daf&uuml;r ist, dass Frames nicht wegzudiskutierende Nachteile haben:</p>
<ul>
<li><b>Probleme bei nicht Frame-f&auml;higen Web-Browsern:</b><br>
Frames werden nicht von allen Web-Browsern angezeigt. Da die gesamte Struktur eines auf Frames basierenden Projekts von der Struktur herk&ouml;mmlicher Projekte entscheidend abweicht, kann ein Anbieter von Frames solchen Anwendern, die keine Frames anzeigen k&ouml;nnen, entweder gar keine Alternative anbieten, oder eine &quot;zweigleisige&quot; Alternative, die sehr aufwendig zu realisieren und zu pflegen ist.</li>
<li><b>Frames und Bildschirmaufl&ouml;sung</b><br>
Bei kleineren Bildschirmen, z.B. bei Notebooks oder Handheld-Computern, sind mehr als zwei Framefenster bereits eine Zumutung f&uuml;rs Auge und die &Uuml;bersicht.</li>
<li><b>Ladezeiten</b><br>
Frames verlangen mehr HTTP-Kommunikation zwischen Browser und Server, da insgesamt mehr Dateien geladen werden m&uuml;ssen. Im Web kann es unter ung&uuml;nstigen Verh&auml;ltnissen leichter zu l&auml;ngeren Ladezeiten kommen.</li>
<li><b>Problematisches Direktansteuern von untergeordneten Seiten</b><br>
Es ist zwar theoretisch m&ouml;glich, aber meistens nicht im Sinne des Anbieters, wenn andere Anwender ein Lesezeichen oder einen Verweis auf eine HTML-Datei setzen, die Teil eines Framesets ist. Das ist in vielen F&auml;llen &auml;rgerlich. So wird beispielsweise anderen Informationsanbietern die M&ouml;glichkeit genommen, in einem bestimmten Informationszusammenhang auf eine bestimmte Seite in einem fremden Projekt zu verweisen.</li>
</ul>

<p>In folgenden F&auml;llen ist der Einsatz von Frames f&uuml;r den Anwender am ehesten nachvollziehbar:</p>
<ul>
<li><b>zum schnellen Wechseln zwischen Informationseinheiten</b><br>
In diesem Fall enth&auml;lt ein Framefenster ein umfangreiches Verzeichnis mit anklickbaren Verweisen auf einzelne Informationsseiten, die in einem anderen, festen Framefenster angezeigt werden. Das &quot;Inhaltsverzeichnis&quot; bleibt also jederzeit eingeblendet, und der Anwender kann zu jedem Zeitpunkt einen neuen Verweis daraus ausw&auml;hlen. Das erspart dem Anwender den wiederholten R&uuml;cksprung von den einzelnen Informationsseiten auf das &uuml;bergeordnete Verzeichnis.<br>
<i>Beispiel:</i> ein Anbieter von Ferienappartements kann alle zur Verf&uuml;gung stehenden Objekte in einem Verweis-Verzeichnis auflisten und das jeweils ausgew&auml;hlte Objekt in einem festen anderen Framefenster anzeigen.</li>
<li><b>zum st&auml;ndigen Einblenden projektglobaler Steuerverweise</b><br>
Bei umfangreichen Projekten, in denen dem Anwender das Gef&uuml;hl des &quot;lost in hyperspace&quot; droht, ist es sinnvoll, in einem separaten Framefenster immer g&uuml;ltige Steuerverweise anzubieten, z.B. zur Homepage, zur n&auml;chsth&ouml;heren logischen Ebene, zum Stichwortverzeichnis oder zur Suchdatenbank. Bei kleinen Projekten, die nur aus einer Handvoll Seiten bestehen, wirkt diese Technik dagegen &uuml;bertrieben und vermittelt dem Anwender eine falsche Vorstellung von der Gr&ouml;&szlig;e des Projekts. Wenn der Anwender in einem solchen Fall nach wenigen Mausklicks feststellt, dass er bereits alles gesehen hat, wird er um so entt&auml;uschter sein.<br>
<i>Beispiel:</i> Eine Zeitung, die im Web ein gro&szlig;es Archiv mit &auml;lteren Artikeln anbietet, k&ouml;nnte mit Hilfe der Frame-Technik st&auml;ndige Verweise zu einem thematisch sortierten Zugangsverzeichnis, zu einem Stichwortverzeichnis und einer Volltext-Suchdatenbank f&uuml;r die einzelnen Artikel anbieten.</li>
<li><b>zum gleichzeitigen Anzeigen von zu vergleichenden Informationen</b><br>
Hypertext bedeutet nicht nur, dem Anwender per Mausklick weitere Informationen zur Verf&uuml;gung zu stellen, sondern auch, dem Anwender die M&ouml;glichkeit zu bieten, sich selbst Informationen so zusammenzustellen, dass er sie optimal miteinander vergleichen und daraus Schl&uuml;sse oder Entscheidungen ableiten kann. Zu diesem Zweck eignet sich die Frame-Technik hervorragend, da sie es erlaubt, verschiedene, getrennt voneinander gespeicherte Informationen auf Anwenderwunsch gleichzeitig anzuzeigen.<br>
<i>Beispiel:</i> Eine Verbraucherberatung k&ouml;nnte in einem viergeteilten Frameset in zwei Frames zwei gleichartig aufgebaute Verweis-Verzeichnisse zu Produkttests anbieten. Im dritten Framefenster wird der Produkttest angezeigt, den der Anwender im ersten Framefenster mit Verweisen ausw&auml;hlt; im vierten Framefenster kann der Anwender einen Produkttest anzeigen, den er im zweiten Framefenster mit Verweisen ausw&auml;hlt. Auf diese Weise kann der Anwender beliebige getestete Produkte direkt miteinander vergleichen. Voraussetzung hierzu ist nat&uuml;rlich, dass alle Produkttests einen einheitlichen Aufbau und ein einheitliches Bewertungsschema haben, um direkte Vergleiche zu erlauben.</li>
<li><b>bei besonders kunstvoller Seitengestaltung</b><br>
In diesem Fall muss der Anwender auf den ersten Blick erkennen k&ouml;nnen, dass die Frame-Technik eine bestimmte k&uuml;nstlerische Aussage unterst&uuml;tzen soll.</li>
</ul>

<p>Bei Verwendung von Frames besteht auch noch eher als bei &quot;einfachen&quot; Seiten die Gefahr eines gestalterischen Overkills. Achten Sie bei Frames unbedingt darauf, dass die Farben der Inhalte in den verschiedenen Framefenstern insgesamt miteinander harmonieren. Das Gleiche gilt auch f&uuml;r andere optische Eigenschaften wie Schriftarten, Schriftgr&ouml;&szlig;en usw. Ein Navigationsfenster muss nicht krampfhaft &quot;anders&quot; aussehen als ein inhaltstragendes Fenster, damit auch ja jeder Besucher sieht, dass es sich um Frames handelt. Kontraste zwischen Framefenstern d&uuml;rfen nicht die Regeln einer homogenen Gesamtgestaltung verletzten.</p>




<table bgcolor="#EEEEEE" class="doc" width="100%"><tr><td>
&#160;<a href="#top"><img src="../../src/up.gif" width="14" height="10" border="0" alt="nach oben"></a><a href="#bottom"><img src="../../src/down.gif" width="14" height="10" border="0" alt="nach unten"></a>&nbsp;
</td></tr></table>
<h2 class="Sh2"><a class="an" name="schaufenster">Unfaire Schaufenster-Effekte</a></h2>

<p>Mit Hilfe von Frames ist es auch m&ouml;glich, fremde Web-Seiten innerhalb eines Framefensters im eigenen Web-Projekt darzustellen. Dies ist jedoch sehr problematisch und in den meisten F&auml;llen unfair. Denn auf diese Weise verkommen fremde Web-Seiten zu &quot;Schaufenstern&quot; innerhalb des eigenen Web-Projekts. Das ist eine unfeine Geste gegen&uuml;ber den Fremdanbietern, weil es das eigene Web-Projekt in den Augen des Anwenders als &quot;Mega-Projekt&quot; erscheinen l&auml;sst. Es ist auch juristisch bedenklich, da Sie sich leicht eine Klage wegen Urheberrechtsverletzung einhandeln k&ouml;nnen, wenn Sie Fremdinhalte &quot;vereinnahmen&quot;.</p>

<p>Ferner kann es auch passieren, dass in einem Framefenster eine Fremdanbieter-Seite angezeigt wird, die ihrerseits Frames einsetzt. So kommt es zu einem &auml;rgerlichen &quot;Fraktal-Effekt&quot; von Framefenstern auf dem Bildschirm des Anwenders.</p>

<p>Wenn Sie innerhalb eines Frame-Projekts auf fremde Seiten verweisen, sollten Sie eine der folgenden M&ouml;glichkeiten w&auml;hlen:</p>
<ul>
<li><b>Urspr&uuml;nglichen Fensterzustand wiederherstellen</b><br>
Setzen Sie den Verweis so, dass der Anwender Ihr definiertes Frameset verl&auml;sst und wieder den Fensterzustand erh&auml;lt, den er vor Aufruf Ihres Projekts hatte. Dies erreichen Sie durch Verweise von der Art<br>
<code>&lt;a href=&quot;http://...&quot; target=&quot;_parent&quot;&gt;Verweistext&lt;/a&gt;</code></li>
<li><b>Doppelverweis anbieten</b><br>
Dadurch &uuml;berlassen Sie dem Anwender die Entscheidung, wie er die fremde Seite angezeigt bekommen will. Notieren Sie zwei Verweise direkt unter- oder nebeneinander, die das gleiche Ziel haben, etwa in der Weise<br>
<code>&lt;a href=&quot;http://...&quot; target=&quot;RechtsUnten&quot;&gt;Fremde Seite im Frame rechts unten anzeigen&lt;/a&gt;&lt;br&gt;</code><br>
<code>&lt;a href=&quot;http://...&quot; target=&quot;_parent&quot;&gt;Fremde Seite voll anzeigen&lt;/a&gt;</code></li>
<li><b>Anwender auf M&ouml;glichkeit zum Ver&auml;ndern der Frames hinweisen</b><br>
Wenn Sie keine der beiden anderen M&ouml;glichkeiten anbieten wollen, sollten Sie wenigstens das Ver&auml;ndern der Framefenstergr&ouml;&szlig;en durch den Anwender erlauben und den Anwender auf diese M&ouml;glichkeit explizit hinweisen. Um das Ver&auml;ndern der Framefenster durch den Anwender zu erlauben, verzichten Sie einfach auf das Attribut <code>&quot;noresize&quot;</code> im <code>&lt;frame&gt;</code>-Tag.
</ul>

<p>Mit Hilfe von JavaScript ist es m&ouml;glich, die <img src="../../src/dok.gif" width="15" height="10" border="0" alt="Seite">&nbsp;<a href="../../javascript/beispiele/seitenanzeige.htm"><b>Seitenanzeige in Frames verhindern</b></a>.</p>








<table cellpadding="4" cellspacing="0" border="0" width="100%">
<tr><td colspan="2" bgcolor="#EEEEEE" class="doc">
&#160;<a href="#top"><img src="../../src/up.gif" width="14" height="10" border="0" alt="nach oben"></a>
</td></tr>

<tr><td bgcolor="#EEEEEE" class="doc" align="right"><a href="../multimedia/objekte.htm"><img src="../../src/next.gif" width="10" height="10" border="0" hspace="10" alt="weiter"></a></td>
<td bgcolor="#FFFFFF"><img src="../../src/dok.gif" width="15" height="10" border="0" alt="Seite"> <a href="../multimedia/objekte.htm"><b>Daten und Programme als Objekt einbinden</b></a>
</td></tr>

<tr>
<td bgcolor="#EEEEEE" class="doc" align="right"><a href="eingebettete.htm"><img src="../../src/prev.gif" width="10" height="10" border="0" hspace="10" alt="zur&uuml;ck"></a></td>
<td bgcolor="#FFFFFF" width="100%"><img src="../../src/dok.gif" width="15" height="10" border="0" alt="Seite"> <a href="eingebettete.htm"><b>Eingebettete Frames</b></a>
</td>

</tr>
<tr><td colspan="2" bgcolor="#EEEEEE" class="doc">&nbsp;</td></tr>
</table>

<table cellpadding="4" cellspacing="0" border="0" width="100%">
<tr><td bgcolor="#FFEEDD" class="nav"><a class="an" name="bottom"><img src="../../src/refkap.gif" width="16" height="13" border="0" alt="Teil von"></a> <a href="../../index.htm"><b>SELFHTML</b></a>/<a href="../../navigation/index.htm" target="_parent">Navigationshilfen</a> <img src="../../src/refkap.gif" width="16" height="13" border="0" alt="Teil von"> <a href="../index.htm"><b>HTML/XHML</b></a> <img src="../../src/refkap.gif" width="16" height="13" border="0" alt="Teil von"> <a href="index.htm"><b>Frames</b></a></td>
</tr></table>

<p>&copy; 2001 <img src="../../src/mail.gif" width="15" height="10" border="0" alt="E-Mail">&nbsp;<a href="mailto:selfhtml@teamone.de">selfhtml@teamone.de</a></p>

</body>
</html>