heim - Einrichten des Routers
Einen Rahmen einfügen. Rahmen erstellen

Anwendungsbereiche von Rahmen

Entwicklern von HTML-Dokumenten steht eine ziemlich große Auswahl an Formen zur Anzeige von Informationen auf Seiten zur Verfügung. Text- und Grafikinformationen können mithilfe von Listen, Tabellen oder einfach mithilfe von Ausrichtungsparametern, dem Setzen horizontaler Linien und der Unterteilung in Absätze geordnet und organisiert werden. Manchmal reichen diese Funktionen nicht aus und dann müssen Sie das Browserfenster in separate Bereiche oder Frames aufteilen. In einer Reihe russischsprachiger Beschreibungen der HTML-Sprache wird anstelle des Begriffs Frames der Begriff Frames verwendet. Die Häufigkeit der Verwendung beider Begriffe ist ungefähr gleich.

Die Wahl einer Rahmenstruktur zur Darstellung von Informationen im WWW ist in folgenden Fällen gerechtfertigt:

  • Verwalten Sie bei Bedarf das Laden von Dokumenten in einen der Unterbereiche des Browser-Anzeigefensters, während Sie in einem anderen Unterbereich arbeiten.
  • Informationen an einer bestimmten Stelle im Anzeigefenster zu lokalisieren, die immer auf dem Bildschirm angezeigt werden müssen, unabhängig vom Inhalt anderer Teilbereiche des Bildschirms;
  • um Informationen übersichtlich in mehreren angrenzenden Unterbereichen des Fensters darzustellen, die jeweils unabhängig voneinander angezeigt werden können.

Die angegebene Liste erschöpft nicht alle möglichen Anwendungsfälle von Frames, sondern hat empfehlenden Charakter.

Betrachten wir zunächst die typische Verwendung von Frames anhand von Beispielen realer HTML-Dokumente und wenden uns dann den Regeln für die Entwicklung von Dokumenten zu, die Frames enthalten.

In Abb. Abbildung 5.1 zeigt eine der HTML-Seiten der Agentur Finmarket, die sich auf die Bereitstellung von Informationen über die Finanz- und Aktienmärkte Russlands spezialisiert hat.

Reis. 5.1. Ein typisches Webdokument mit Rahmenstruktur

Diese Seite teilt das Browserfenster in drei Frames. Der untere Teil des Fensters nimmt 20 % der Höhe des gesamten Fensters ein und enthält permanente Informationen, in diesem Fall ein grafisches Menü, über das Sie jederzeit auf die wichtigsten Abschnitte zugreifen können. Dieser Rahmen kann seine Größe nicht anhand von Benutzerbefehlen ändern und verfügt über keine Bildlaufleisten. Der obere Teil des Fensters (der 80 % der Höhe ausmacht) ist horizontal in zwei Rahmen unterteilt. Der linke Rahmen enthält das Inhaltsverzeichnis der Dokumente, die vom Benutzer angezeigt werden können. Der rechte Rahmen, der den größten Teil des Sichtfensters einnimmt, dient der Darstellung der Dokumente selbst. Beim ersten Laden teilen diese beiden Frames das Browserfenster horizontal in einem Verhältnis von 15 % zu 85 %. Dieses Verhältnis kann vom Benutzer während der Anzeige geändert werden, sodass Sie die optimale Bildgröße unter Berücksichtigung des Inhalts der geladenen Dokumente auswählen können. Jeder dieser Rahmen verfügt über eine eigene Bildlaufleiste, sodass Sie den gesamten Inhalt des Rahmens anzeigen können, unabhängig von der Größe des Rahmens selbst, des gesamten Browserfensters oder der verwendeten Schriftarten. Wenn Sie im linken Frame einen Link auswählen, wird das entsprechende Dokument im rechten Frame geladen. Diese Struktur ermöglicht es Ihnen, gleichzeitig das Inhaltsverzeichnis von Dokumenten und den Inhalt des ausgewählten Dokuments auf dem Bildschirm anzuzeigen.

Hier ist ohne Erklärung ein Fragment des HTML-Codes, der zum Erstellen eines Dokuments mit dieser Struktur verwendet wurde:

Dieses Beispiel zeigt die typischste Verwendung von Rahmenstrukturen, wobei ein Rahmen als Inhaltsverzeichnis für Dokumente dient und ein anderer zum Laden der Inhalte verwendet wird. Die Lösung eines solchen Problems ohne Verwendung von Frames erfolgt normalerweise wie folgt. Auf einer der Seiten befindet sich ein Inhaltsverzeichnis, bestehend aus Links zu anderen Dokumenten oder deren einzelnen Fragmenten. Wenn Sie auf einen solchen Link klicken, verschwindet das Inhaltsverzeichnis und an seiner Stelle wird das gewünschte Dokument geladen, nach dessen Lektüre Sie normalerweise zum Inhaltsverzeichnis zurückkehren müssen. Bei der Verwendung von Frames entfällt dieser Rücksprung, da sich das Inhaltsverzeichnis immer auf einem Teil des Bildschirms befindet.

Sie können es im Internet finden Website der elektronischen Ausgabe des beliebten Adress- und Telefonverzeichnisses „All Petersburg“ in St. Petersburg.

Die elektronische Version des Verzeichnisses finden Sie unter http://www.allpetersburg.ru und ermöglicht es Ihnen, die erforderlichen Informationen basierend auf Benutzeranfragen zu finden. Diese Dokumentseite hat ebenfalls eine Rahmenstruktur und besteht aus zwei Rahmen, von denen der erste 100 Pixel breit ist und der zweite die gesamte verbleibende Breite des Ansichtsfensters einnimmt. Der auf der linken Seite befindliche Rahmen dient einem ständig auf dem Bildschirm angezeigten grafischen Menü und enthält außerdem das Firmenlogo von Nevalink. Der zweite Rahmen enthält das Dokument, in diesem Fall ein Benutzeranfrageformular. Der Aufbau dieser Seite wird durch den folgenden HTML-Code definiert:

Frames sind Tabellen sehr ähnlich – beide unterteilen das Browserfenster in rechteckige Bereiche, in denen sich einige Informationen befinden. Mit Hilfe von Frames können Sie jedoch nicht nur das Problem der Formatierung von Dokumentseiten lösen, sondern auch die Interaktion zwischen ihnen organisieren. Der grundlegende Unterschied zwischen Frames und Tabellen besteht darin, dass jeder Frame über ein eigenes separates HTML-Dokument verfügen muss, der Inhalt aller Tabellenzellen jedoch immer Teil desselben Dokuments ist. Darüber hinaus kann die im Frame angezeigte Seite unabhängig von den anderen angezeigt werden. Jeder Frame ist im Wesentlichen ein separater „Mini-Browser“. Im Gegensatz zu Rahmen, deren gesamte Struktur immer auf dem Bildschirm dargestellt wird, passen Tabellen möglicherweise nicht vollständig in das Fenster und können nur in Teilen angezeigt werden. Daraus folgt, dass, wenn in HTML-Tabellen die Gesamtzahl der Zellen praktisch unbegrenzt ist und mehrere Hundert erreichen kann, die Anzahl der Frames in einem Dokument normalerweise mehrere Einheiten nicht überschreitet.

Beratung

Wenn Sie ein Dokument nur formatieren müssen, reicht es aus, sich auf die Verwendung von Tabellen zu beschränken. Wenn Sie komplexere Probleme lösen müssen, beispielsweise die Interaktion zwischen Fensterteilbereichen organisieren oder Teilbereiche erstellen möchten, die dauerhaft auf dem Bildschirm angezeigt werden, ist die Verwendung von Rahmen sinnvoll.

Letztendlich hängt die Wahl der Dokumentenstruktur – tabellarisch oder rahmenförmig – von vielen Faktoren ab und kann nicht eindeutig vorherbestimmt werden.

es gibt auchSeiten, die ähnlich aufgebaut zu sein scheinen wie die vorherigen. Zum Beispiel können Sie nehmen Seite einer sehr beliebten weltweiten Sammlung von Softwareprodukten, die hauptsächlich für die Arbeit mit dem Internet entwickelt wurden. Serveradresse http://www.tucows.com. Beachten Sie, dass der Name des Servers durch eine Abkürzung bestimmt wurde, die von der Abkürzung des vollständigen Namens der Sammlung abgeleitet ist – The Ultimate Collection of Winsock Software. Da sich herausstellte, dass die Abkürzung tucows mit der Phrase zwei Kühe (zwei Kühe) übereinstimmt, enthalten die Serverseiten häufig Bilder von Kühen, und die Bewertung von Softwareprodukten wird anhand der Anzahl der Muhgeräusche („Muh“) geschätzt und grafisch dargestellt als Reihe der entsprechenden Anzahl Kühe. Die meisten Serverseiten sind auf die gleiche Weise aufgebaut – auf der linken Seite des Fensters befindet sich eine Liste der verfügbaren Abschnitte und auf der rechten Seite eine Liste der Softwareprodukte für den ausgewählten Abschnitt. Auf den ersten Blick sollte der Aufbau des Dokuments ungefähr so ​​aussehen wie in den vorherigen Beispielen. Dieses Dokument verwendet jedoch keine Frames! Diese Seite wird mithilfe einer Tabelle erstellt, die nur aus einer Zeile mit zwei Zellen besteht. Die Tabelle hat keinen Rahmen und dient lediglich der Formatierung der Seite. Der Eindruck einer vertikalen Zweiteilung des Bildschirms entsteht durch die Verwendung einer Hintergrundgrafik mit einer vertikalen Linie anstelle eines Tabellenrasters. Sie können dies überprüfen, indem Sie die Seite anzeigen, ohne Bilder zu laden. Die Verwendung einer Tabelle ist hier offenbar auf Überlegungen zur besseren Zugänglichkeit von Dokumenten zurückzuführen, da Frames nicht die Anzeige in allen Browsern ermöglichen.

Der Nachteil dieses Ansatzes besteht in diesem Fall darin, dass die gesamte Liste der Abschnitte (linke Seite der Seite) in jedem Dokument wiederholt werden muss, was die Dateigröße leicht erhöht.

Ein Vergleich der obigen Beispiele zeigt, dass die Verwendung von Tabellen und Rahmen manchmal austauschbar sein kann und von den Wünschen der Entwickler bestimmt wird. Beachten Sie, dass es beim Betrachten einer Seite, auf der ein Dokument angezeigt wird, oft unmöglich ist, festzustellen, wie es aufgebaut ist. Der Endbenutzer muss die interne Struktur des Dokuments nicht kennen, aber wenn er seine eigenen Webseiten entwickelt, wäre es äußerst nützlich, sich mit dem Quellcode vorhandener Dokumente vertraut zu machen. Im ersten Beispiel (siehe Abb. 5.1) ist die Rahmenstruktur des Dokuments sofort sichtbar – das Vorhandensein zweier vertikaler Bildlaufleisten weist bereits auf das Vorhandensein einzelner Rahmen hin. Die folgenden beiden Beispiele sehen sehr ähnlich aus und es lässt sich nicht feststellen, dass das erste mithilfe von Frames und das zweite anhand von Tabellen erstellt wurde. Unterschiede treten nur dann auf, wenn mit ihnen gearbeitet wird. Im Beispiel eines Telefonbuchs bleibt beim Scrollen eines Dokuments der linke Teil des Fensters an Ort und Stelle, was nur möglich ist, wenn eine Rahmenstruktur vorhanden ist. Im folgenden Beispiel (eine Sammlung von Softwareprodukten) wird durch Scrollen der gesamte Inhalt des Fensters verschoben.

Sie können die Dokumentstruktur anzeigen, wenn Sie mit dem Netscape-Browser arbeiten, indem Sie den Eintrag „Seiteninfo“ (in den Versionen 3.x des Netscape-Browsers hieß dieser Menüpunkt „Dokumentinfo“) des Menüs „Ansicht“ (Abb. 5.2) verwenden.

Reis. 5. 2 . Ansichtsmenü des Netscape-Browsers

Darüber hinaus können Sie jederzeit den HTML-Quellcode des gesamten Dokuments anzeigen, indem Sie das Element „Seitenquelle“ im Menü „Ansicht“ verwenden (oder das Element „Frame-Quelle anzeigen“ im Kontextmenü mit der rechten Maustaste, um den HTML-Code des geladenen Dokuments anzuzeigen ausgewählten Rahmen).

Beratung

Sie sollten die Verwendung von Frames nicht unnötig missbrauchen und ihre Anzahl sollte drei oder vier nicht überschreiten.

Auf echten Seiten im Internet sieht man oft folgende Fälle der Verwendung von Frames:Zwei benachbarte Rahmen werden zum Laden von Dokumenten verwendet, die bequem gleichzeitig angezeigt und miteinander verglichen werden können. Jedes der beiden in Frames geladenen Dokumente verwendet eine tabellarische Form zur Darstellung von Informationen. Aufgrund dieser Datenorganisation kann jede der beiden Tabellen separat angezeigt (oder gedruckt) oder im Vergleich zueinander untersucht werden.

Alle in diesem Abschnitt aufgeführten Beispiele stammen von den Seiten beliebter WWW-Server und können möglicherweise als Beispiele für die Verwendung von Frames in HTML-Dokumenten dienen.

In den folgenden Abschnitten dieses Kapitels werden Regeln zum Schreiben von Dokumenten behandelt, die Frames enthalten.

Regeln zur Beschreibung von Frames

Betrachten wir nun die Regeln zum Schreiben von Tags, die für Dokumente mit Rahmenstrukturen verwendet werden.

Schauen wir uns zunächst den vollständigen HTML-Code an, der ein Dokument mit Frames mittlerer Komplexität erstellt:

</p> <p>

In diesem Beispiel wird die in Abbildung gezeigte gerahmte Seite erstellt. 5.3. Wie Sie sehen, definiert dieser HTML-Code vier Frames. Der obere Rahmen erstreckt sich über die gesamte Seitenbreite und enthält die Überschrift. Als nächstes folgen zwei zentrale Rahmen, von denen einer auf der linken Seite liegt und 25 Prozent der Bildschirmbreite einnimmt und der zweite den restlichen Platz einnimmt. Das letzte, vierte Bild nimmt das untere Viertel des Bildschirms ein. In jeden Frame wird ein separates HTML-Dokument geladen, dessen Name durch den SRC-Parameter bestimmt wird.

Wie aus dem Beispiel hervorgeht, werden Tags verwendet, um die Struktur von Frames zu beschreiben , Und . Schauen wir uns den Zweck dieser Tags an.</p> <span> <br><img src='https://i1.wp.com/webnav.ru/books/html4/frames/07.gif' width="100%" loading=lazy loading=lazy></span> <p><i><b>Reis. 5. <span>3 . </b> Das Ergebnis der Anzeige des HTML-Dokuments mit den im Beispiel gezeigten Frames durch den Netscape-Browser</span> </i></p> <p><b>Etikett <FRAMESET> </b></p> <p>Frames werden in einer Struktur namens FRAMESET definiert, die für Seiten mit Frames anstelle des BODY-Abschnitts eines normalen Dokuments verwendet wird. Webseiten, die aus Frames bestehen, dürfen keinen BODY-Abschnitt in ihrem HTML-Code enthalten. Seiten mit einem BODY-Abschnitt wiederum können keine Frames verwenden.</p> <p><i><b>Beratung</b> </i></p> <p><i> <span>Da gerahmte Seiten keinen BODY-Abschnitt haben, gibt es keine Möglichkeit, ein Hintergrundbild und eine Hintergrundfarbe für die gesamte Seite festzulegen. Denken Sie daran, dass diese Einstellungen durch die im BODY-Tag geschriebenen Parameter BACKGROUND und BGCOLOR bestimmt werden. Dies hindert Sie jedoch nicht daran, Dokumente mit eigenen Hintergrundeinstellungen in jeden Frame zu laden.</span> </i></p> <p>Container mit Tags <FRAMESET>Und</FRAMESET> rahmt jeden Rahmendefinitionsblock ein. Im Behälter <FRAMESET>kann nur Tags enthalten <FRAME>und verschachtelte Tags <FRAMESET>. </p> <p>Etikett <FRAMESET>hat zwei Parameter: ROWS (Zeilen) und COLS (Spalten) und wird wie folgt geschrieben:</p> <p><FRAMESET ROWS="список_ значений" COLS="список_ значений">. </p> <p><i><b>Notiz</b> </i></p> <p><i> <span>Einige Browser erlauben zusätzliche Tag-Parameter <FRAMESET></span> </i></p> <p>Sie können Werte für ROWS oder COLS oder beides definieren. Für mindestens einen dieser Parameter müssen mindestens zwei Werte definiert werden. Wird ein weiterer Parameter weggelassen, wird dessen Wert mit 100 % angenommen.</p> <p><i><b>Beratung</b> </i></p> <p><i> <span>Wenn in einem Tag <FRAMESET>Wenn für ROWS und COLS nur ein Wert definiert ist, wird dieses Tag als ungültig betrachtet und vom Browser ignoriert. Mit anderen Worten, es ist unmöglich zu bestimmen <FRAMESET>, bestehend aus nur einem Rahmen.</span> </i></p> <p>Liste der Tag-ROWS- und COLS-Parameterwerte <FRAMESET>ist eine durch Kommas getrennte Liste von Werten, die in Pixeln, Prozentsätzen oder relativen Einheiten angegeben werden können. Die Anzahl der Zeilen bzw. Spalten wird durch die Anzahl der Werte in der entsprechenden Liste bestimmt. Zum Beispiel aufzeichnen</p> <p><FRAMESET ROWS="100,240,140"> </p> <p>definiert einen Satz von drei Frames. Bei diesen Werten handelt es sich um absolute Pixelwerte. Mit anderen Worten: Der erste Frame (erste Zeile) ist 100 Pixel hoch, der zweite 240 Pixel und der letzte 140 Pixel hoch.</p> <p>Das Festlegen von Bildgrößenwerten in Pixeln ist nicht sehr praktisch. Dabei wird nicht berücksichtigt, dass Browser auf unterschiedlichen Betriebssystemen und mit unterschiedlichen Bildschirmauflösungen laufen. Gleichzeitig ist es für einige Fälle möglich, absolute Größenwerte zu definieren, um beispielsweise ein kleines Bild mit bekannten Abmessungen anzuzeigen. Am besten stellen Sie die Werte in Prozent oder relativen Einheiten ein, zum Beispiel:</p> <p><FRAMESET ROWS="25%,50%,25%">. </p> <p>In diesem Beispiel werden drei Frames erstellt, die als Reihen über die gesamte Bildschirmbreite positioniert werden. Die obere Reihe nimmt 25 Prozent der verfügbaren Bildschirmhöhe ein, die mittlere Reihe 50 Prozent und die untere Reihe 25 Prozent. Wenn die Summe der angegebenen Prozentsätze nicht 100 % ergibt, werden die Werte proportional skaliert, sodass das Ergebnis genau 100 % beträgt.</p> <p>Die Werte in relativen Einheiten lauten wie folgt:</p> <p><FRAMESET COLS="*,2*,3*">. </p> <p>Ein Sternchen (*) wird verwendet, um den Raum proportional aufzuteilen. Jeder Stern repräsentiert einen Teil des Ganzen. Durch Addition aller Werte der Zahlen neben den Sternchen (wird eine Zahl weggelassen, wird von eins ausgegangen) erhalten wir den Nenner des Bruchs. In diesem Beispiel nimmt die erste Spalte 1/6 der Gesamtbreite des Fensters ein, die zweite Spalte nimmt 2/6 (oder 1/3) ein und die letzte Spalte nimmt 3/6 (oder 1/3) ein. 2).</p> <p>Denken Sie daran, dass ein numerischer Wert ohne Zeichen die absolute Anzahl von Pixeln für eine Zeile oder Spalte angibt. Ein Wert mit einem Prozentzeichen (%) gibt den Anteil der Gesamtbreite (für COLS) oder Höhe (für ROWS) des Ansichtsfensters an, und ein Wert mit einem Sternchen (*) gibt die proportionale Verteilung des verbleibenden Raums an.</p> <p>Hier ist ein Beispiel, das alle drei Optionen zum Festlegen von Werten verwendet:</p> <p><FRAMESET COLS="100,25%,*,2*">. </p> <p>In diesem Beispiel ist die erste Spalte 100 Pixel breit. Die zweite Spalte nimmt 25 Prozent der gesamten Breite des Ansichtsfensters ein, die dritte Spalte nimmt 1/3 des verbleibenden Platzes ein und schließlich nimmt die letzte Spalte 2/3 ein. Es empfiehlt sich, zunächst absolute Werte in der Reihenfolge von links nach rechts zuzuweisen. Darauf folgen Prozentsätze der Gesamtraumgröße. Abschließend werden Werte erfasst, die die proportionale Aufteilung des verbleibenden Raumes bestimmen.</p> <p><i><b>Beratung</b> </i></p> <p><i> <span>Wenn Sie absolute COLS- oder ROWS-Werte verwenden, halten Sie diese klein, damit sie in jedes Browserfenster passen, und füllen Sie sie mit mindestens einem Prozent- oder Relativwert auf, um den verbleibenden Platz auszufüllen.</span> </i></p> <p>Wenn das Tag verwendet wird <FRAMESET>, in dem sowohl COLS- als auch ROWS-Werte angegeben werden, wird ein Raster aus Frames erstellt. Zum Beispiel:</p> <p><FRAMESET ROWS="*,2*,*" COLS="2*,*"> </p> <p>Diese Zeile HTML-Code erstellt ein Rahmenraster mit drei Zeilen und zwei Spalten. Die erste und letzte Zeile nehmen jeweils 1/4 der Höhe ein, die mittlere Zeile nimmt die Hälfte ein. Die erste Spalte nimmt 2/3 der Breite ein, die zweite 1/3.</p> <p>Container <FRAMESET> </FRAMESET> kann in einem anderen ähnlichen Container verschachtelt werden, wie im ersten Beispiel gezeigt wurde. Betrachten wir die Verwendung des Tags weiter <FRAME>. </p> <p><i><b>Notiz</b> </i></p> <p><i> <span>Einige Quellen zur HTML-Sprache weisen darauf hin, dass die COLS- und ROWS-Parameter des Tags <FRAMESET>schließen sich gegenseitig aus. Allerdings ermöglichen sowohl Netscape als auch Microsoft Internet Explorer die gemeinsame Verwendung.</span> </i></p> <p><b>Etikett <FRAME> </b></p> <p>Etikett <FRAME>definiert einen einzelnen Frame. Es muss sich innerhalb eines Tagspaares befinden <FRAMESET>Und</FRAMESET>. Zum Beispiel:</p> <p><FRAMESET ROWS="*,2*"> </p> <p><FRAME> </p> <p><FRAME> </p> <p></FRAMESET> </p> <p>Bitte beachten Sie, dass das Tag <FRAME>ist kein Container und anders <FRAMESET>hat kein End-Tag. Die gesamte Definition eines einzelnen Frames erfolgt mit einer Zeile HTML-Code.</p> <p>Es müssen so viele Tags aufgezeichnet werden <FRAME>wie viele einzelne Frames bei der Angabe des Tags definiert werden <FRAMESET>. Im vorherigen Beispiel das Tag <FRAMESET>Da zwei Zeichenfolgen angegeben wurden, mussten zwei Tags geschrieben werden <FRAME>. Dieses Beispiel ist jedoch im Wesentlichen nutzlos, da keiner der Frames einen Inhalt hat!</p> <p>Etikett <FRAME>hat sechs Parameter: SRC, NAME, MARGINWIDTH, MARGINHEIGHT, SCROLLING und NORESIZE.</p> <p><i><b>Notiz</b> </i></p> <p><i> <span>In einigen Browsern können Sie eine Reihe zusätzlicher Tag-Parameter verwenden <FRAME>. Am Ende des Kapitels wird ein Überblick über die Fähigkeiten der Browser Netscape und Microsoft Internet Explorer gegeben.</span> </i></p> <p>Hier ist der Tag-Eintrag: <FRAME>mit allen Parametern:</p> <p><FRAME SRC="url" NAME="window_name" SCROLLING=YES|NO|AUTO </p> <p>MARGINWIDTH="value" MARGINHEIGHT="value" NORESIZE></p> <p>In der Praxis im Tag <FRAME>Selten werden alle Parameter gleichzeitig verwendet.</p> <p>Der wichtigste Parameter ist SRC (kurz für Quelle). Ziemlich oft im Tag <FRAME>Es wird ein einzelner SRC-Parameter angegeben. Zum Beispiel:</p> <p><FRAME SRC="url">. </p> <p>Der Wert des SRC-Parameters bestimmt die URL des Dokuments, das zunächst in diesen Frame geladen wird. Normalerweise ist diese Adresse der Name einer HTML-Datei, die sich im selben Verzeichnis wie das Hauptdokument befindet. Dann sieht die Frame-Definitionszeile beispielsweise so aus:</p> <p><FRAME SRC="sample.htm">. </p> <p>Beachten Sie, dass jede in der Frame-Definition angegebene HTML-Datei ein vollständiges HTML-Dokument und kein Fragment sein muss. Das bedeutet, dass das Dokument über HTML-, HEAD-, BODY- usw. Tags verfügen muss.</p> <p>Natürlich kann der SRC-Wert jede gültige URL sein. Wenn der Frame beispielsweise zur Anzeige eines GIF-Bildes verwendet wird, das sich auf dem Server des Herausgebers dieses Buches befindet, dann sollten Sie schreiben:</p> <p><FRAME SRC="http://www.bhv.ru/example.gif">. </p> <p><i><b>Beratung</b> </i></p> <p><i> <span>Fügen Sie in das Dokument keine Inhalte ein, die die Rahmenstruktur beschreiben.</span> </i></p> <p>Reiner Text, Überschriften, Grafiken und andere Elemente können nicht direkt in einem Dokument verwendet werden, das eine Rahmenstruktur beschreibt. Alle Inhalte von Frames müssen in separaten HTML-Dateien definiert werden, deren Namen durch den SRC-Parameter des Tags angegeben werden <FRAME>. </p> <p>Der Parameter NAME gibt einen Frame-Namen an, mit dem auf diesen Frame verwiesen werden kann. Normalerweise wird der Link von einem anderen Frame aus gesetzt, der sich auf derselben Seite befindet. Zum Beispiel:</p> <p><FRAME SRC="sample.htm" NAME="Frame_1">. </p> <p>Dieser Eintrag erstellt einen Frame mit dem Namen „Frame_1“, auf den verwiesen werden kann. Zum Beispiel:</p> <p>Klicke hier zum herunterladen</p> <p>document other.htm in einen Frame namens Frame_1.</p> <p>Beachten Sie den TARGET-Parameter, der sich auf den Frame-Namen bezieht. Wenn einem Frame kein Name gegeben wird, wird ein unbenannter Frame erstellt und es ist nicht möglich, von einem anderen Frame darauf zu verweisen. Rahmennamen müssen mit einem alphanumerischen Zeichen beginnen.</p> <p>Mit den Parametern MARGINWIDTH und MARGINHEIGHT können Sie die Breite der Rahmenränder festlegen. Dies ist wie folgt geschrieben:</p> <p>MARGINWIDTH="Wert",</p> <p>Dabei ist „Wert“ der absolute Wert in Pixel. Zum Beispiel:</p> <p>Dieser Rahmen hat oben und unten Ränder von 5 Pixeln und links und rechts jeweils 7 Pixel. Denken Sie daran, dass es sich hier um Ränder und nicht um Frames handelt. Die Parameter MARGINWIDTH und MARGINHEIGHT definieren den Raum innerhalb des Rahmens, in dem sich keine Informationen befinden. Der minimal akzeptable Wert für diese Parameter ist eins.</p> <p>Frames erstellen und zeigen automatisch Bildlaufleisten an, wenn der Inhalt des Frames nicht vollständig in den zugewiesenen Platz passt. Manchmal stört dies das Design der Seite, daher wäre es praktisch, die Anzeige von Bildlaufleisten steuern zu können. Für diese Zwecke wird der SCROLLING-Parameter verwendet. Aufnahmeformat:</p> <p><FRAME SCROLLING="YES|NO|AUTO">. </p> <p>Der SCROLLING-Parameter kann drei Werte annehmen: YES, NO oder AUTO. Der AUTO-Wert hat die gleiche Wirkung, als ob es keinen SCROLLING-Parameter gäbe. Der Wert YES bewirkt, dass Bildlaufleisten angezeigt werden, unabhängig davon, ob sie benötigt werden, und NO verhindert, dass sie angezeigt werden. Zum Beispiel:</p> <p><FRAME SCROLLING=YES>. </p> <p>Normalerweise kann der Benutzer die Größe von Frames ändern, während er die Seite betrachtet. Wenn Sie den Mauszeiger auf dem Rahmen platzieren, nimmt der Cursor eine Form an, die die Möglichkeit zur Größenänderung anzeigt und es Ihnen ermöglicht, den Rahmen an die gewünschte Position zu verschieben. Dies bricht manchmal die Struktur schön gestalteter Rahmen. Um zu verhindern, dass der Benutzer die Größe von Frames ändert, verwenden Sie den Parameter NORESIZE:</p> <p><FRAME NORESIZE>. </p> <p>Für diesen Parameter sind keine Werte erforderlich. Wenn der NORESIZE-Parameter für einen der Frames festgelegt ist, kann natürlich auch die Größe der benachbarten Frames nicht geändert werden. Abhängig vom Layout der Frames reicht manchmal die Verwendung des NORESIZE-Parameters für einen der Frames aus, um zu verhindern, dass die Größe eines Frames auf dem Bildschirm geändert wird.</p> <p><b>Etikett <NOFRAMES> </b></p> <p>Die Möglichkeit, mit Frames zu arbeiten, war weder im HTML 3.0- noch im HTML 3.2-Standard vorgesehen. Hier kam es bis vor Kurzem recht häufig vor, dass auf vielen WWW-Seiten tatsächlich genutzte Features zwar aktiv genutzt werden, aber nicht zum Standard gehören. Dies bedeutete, dass Browser Frames legitimerweise ignorieren konnten. Mit der Einführung des HTML 4.0-Standards hat sich die Situation geändert – nun ist die Unterstützung von Frame-Strukturen im Standard verankert. Beachten Sie, dass die meisten modernen Browser Frames bereits vor der Einführung von HTML 4.O erkannten. Es ist jedoch erforderlich, Informationen für Benutzer bereitzustellen, die Browser verwenden, die keine Frames unterstützen. Für solche Browser ist es möglich, alternative Informationen bereitzustellen, die zwischen ein Tag-Paar geschrieben werden <NOFRAMES>Und. Es sieht aus wie das:

</p> <p>gesamtes HTML-Dokument</p> <p>

Alles zwischen Tags platziert Und, wird von Browsern angezeigt, die keine Frame-Unterstützung bieten. Frame-fähige Browser ignorieren alle Informationen zwischen diesen Tags.

Beachten Sie, dass HTML-Seitenentwickler im wirklichen Leben die Funktionen des Tags häufig nicht nutzen Sie können Seiten ohne Frame-Strukturen erstellen, sondern einfach zwei Versionen ihrer HTML-Dokumente erstellen. Bei dieser Option bietet die Startseite meist die Möglichkeit, ein Dokument mit oder ohne Rahmenstruktur zu laden. Dann wird je nach Wahl des Benutzers nur eine Version des Dokuments geladen.</p> <p><b><span>Merkmale der Beschreibung von Rahmenstrukturen</span> </b></p> <p>Eines der wichtigsten Tags zur Beschreibung von Rahmenstrukturen ist das Tag <FRAME>. Ein Tag verfügt über eine Reihe von Parametern, von denen keiner erforderlich ist oder von den anderen abhängt. Beim Schreiben dieser Tags sind jedoch einige Dinge zu beachten.</p> <p>Es stellt sich heraus, dass Sie das Tag verwenden sollten, wenn Sie einen Frame erstellen müssen, in den ein Dokument später beispielsweise per Befehl aus einem anderen Frame geladen werden kann <FRAME>Schreiben Sie den SRC-Parameter. Wenn dies</p> <p>Wenn der Parameter weggelassen wird, wird der Rahmen nicht erstellt, es bleibt jedoch Platz dafür. Zum Beispiel eine Platte wie <FRAME NAME="B">ist durchaus logisch und könnte einen Rahmen namens „B“ definieren, in den zunächst kein Dokument geladen wird. Aufgrund des Fehlens des SRC-Parameters existiert jedoch kein Frame mit diesem Namen, sodass weitere Versuche, ein Dokument hineinzuladen, erfolglos bleiben und der für diesen Frame zugewiesene Platz im Fenster leer ist. Darüber hinaus zeigen einige Browser (z. B. Microsoft Internet Explorer Version 3 für Windows Z.xx) eine Fehlermeldung an und beenden den Vorgang, wenn sie versuchen, ein Dokument in einen solchen Frame zu laden.</p> <p>Die Notwendigkeit der Einstellung des SRC-Parameters lässt sich nicht logisch erklären, daher ist es am besten, diesen Umstand einfach zur Kenntnis zu nehmen. Auch wenn dann von Anfang an kein Dokument in diesen Frame geladen werden muss, sollten Sie im SRC-Parameter den Namen einer Datei angeben. Eine solche Datei kann beispielsweise empty.htm (leer) heißen und deren Inhalt das minimal mögliche korrekte HTML-Dokument sein, nämlich:</p> <p><HTML> </p> <p><HEAD> </p> <p></HEAD> </p> <p><BODY> </p> <p></BODY> </p> <p></HTML> </p> <p>Sie können dieses Dokument auf zwei Tags reduzieren: <HTMLX/HTML>, das auch ein gültiges HTML-Dokument sein wird. Wenn Sie dem Weg folgen, die Größe eines „leeren“ Dokuments maximal zu reduzieren, können Sie sich auf eine Datei beschränken, deren Größe einem Byte entspricht und in der das Leerzeichen (oder ein anderes nicht anzeigbares Zeichen) gespeichert ist. Diese Datei ist kein gültiges HTML-Dokument, verursacht jedoch bei den meisten Browsern keine Probleme. Eine weitere Reduzierung der Größe einer solchen Datei auf Null ist nicht gerechtfertigt, da beim Laden durch den Netscape-Browser eine Warnmeldung angezeigt wird (Abb. 5.4), dass das Dokument keine Daten enthält.</p> <span> <img src='https://i0.wp.com/webnav.ru/books/html4/frames/08.gif' height="119" width="332" loading=lazy loading=lazy></span> <p><i><b>Reis. 5. <span>4 . </b> Warnmeldung beim Hochladen einer Datei mit der Länge Null</span> </i></p> <p>In diesem Fall müssen Sie auf diese Nachricht mit der Taste antworten <Enter>oder Maustaste. Jedes Mal, wenn das Dokument neu geladen oder die Größe des Browserfensters geändert wird, wird die Meldung erneut angezeigt.</p> <p>Sie können auch den Namen einer nicht vorhandenen Datei angeben. In diesem Fall zeigt der Netscape-Browser jedoch eine Warnmeldung an (Abb. 5.5), die die weitere Arbeit nicht verhindert, aber zu ähnlichen Unannehmlichkeiten führt.</p> <span> <img src='https://i2.wp.com/webnav.ru/books/html4/frames/09.gif' height="139" width="314" loading=lazy loading=lazy></span> <p><i><b>Reis. 5. <span>5 . </b> Warnmeldung beim Versuch, eine nicht vorhandene Datei herunterzuladen</span> </i></p> <p><i><b>Beratung</b> </i></p> <p><i> <span>Erstellen Sie eine Datei mit dem Namen empty.htm, die ein Byte groß ist und ein Leerzeichen enthält. Machen Sie es sich beim Schreiben eines Tags zur Regel <FRAME>Geben Sie immer SRC=empty.htm an, wenn es nicht möglich ist, den Namen einer bestimmten Datei sofort anzugeben.</span> </i></p> <p>Beispiele für Rahmen</p> <p>In diesem Abschnitt finden Sie einige typische Beispiele für Frame-Definitionen.</p> <p>Kehren wir zum Beispiel am Anfang dieses Abschnitts zurück (Abb. 5.3). In diesem Beispiel wird eine verschachtelte Struktur verwendet <FRAMESET>. Externes Tag <FRAMESET>Erstellt drei Höhenreihen, jeweils 25, 50 und 25 Prozent der Gesamthöhe des Ansichtsfensters:</p> <p><FRAMESET ROWS="25%,50%,25%">. </p> <p>Innerhalb dieses Definitionsbereichs sind die erste und letzte Zeile einfache Rahmen:</p> <p><FRAME SRC="header.htm"> <FRAME SRC="footer.htm"> </p> <p>Jede dieser Zeilen füllt die gesamte Breite des Bildschirms aus. Die erste Zeile oben auf dem Bildschirm nimmt 25 Prozent der Höhe ein, und die dritte Zeile unten nimmt ebenfalls 25 Prozent der Höhe ein. Dazwischen gibt es jedoch ein verschachteltes Tag <FRAMESET>: </p> <p><FRAMESET COLS="25%,75%"> </p> <p><FRAME SRC="list.htm"> </p> <p><FRAME SRC="info.htm"> </p> <p></FRAMESET> </p> <p>Dieses Tag definiert zwei Spalten, in die die mittlere Zeile des Bildschirms unterteilt ist. Die Zeile mit diesen beiden Spalten nimmt 50 Prozent der Bildschirmhöhe ein, wie im äußeren Tag definiert <FRAMESET>. Die linke Spalte nimmt 25 Prozent der Bildschirmbreite ein, während die rechte Spalte die restlichen 75 Prozent der Breite einnimmt.</p> <p>Die Rahmen für diese Spalten werden innerhalb eines verschachtelten Tag-Paares definiert <FRAMESET>Und</FRAMESET>, während die Definition der Frames für die erste und letzte Zeile außerhalb dieses Paares, aber innerhalb der äußeren geschrieben wird <FRAMESET>in der entsprechenden Reihenfolge.</p> <p>Die Datensatzstruktur ist leicht zu verstehen, wenn man sie als verschachtelten Block betrachtet <FRAMESET>als separates Element <FRAME>. In unserem Beispiel das äußere Tag <FRAMESET>definiert drei Zeilen. Jeder von ihnen muss abgeschlossen werden. In diesem Fall werden sie zunächst mit einem separaten Element gefüllt <FRAME>, dann - als verschachtelter Block <FRAMESET>zwei Spalten breit und dann ein weiteres Element <FRAME>. </p> <p>Nun stellt sich möglicherweise die Frage, ob der Wert des SRC-Tag-Parameters sein kann <FRAME>Legen Sie den Namen der Datei fest, die wiederum eine Beschreibung der Rahmenstruktur enthält. Ja, das ist akzeptabel. In diesem Fall das Tag <FRAME>wird verwendet, um auf ein HTML-Dokument zu verweisen, das eine Frame-Struktur darstellt und als separater Frame verwendet wird.</p> <p>Kehren wir zum Beispiel zurück und ersetzen das Verschachtelte <FRAMESET>zu einem separaten <FRAME>. Natürlich benötigen Sie zwei HTML-Dateien statt einer, da diese verschachtelt sind <FRAMESET>befindet sich nun in einem separaten Dokument. Hier ist der Inhalt der ersten (externen) Datei:</p> <p><HTML> </p> <p><HEAD> </p> <p></HEAD> </p> <p><FRAMESET ROWS="25%,50%,25%"> </p> <p><FRAME SRC="header.htm"> </p> <p><FRAME SRC="frameset.htm"> </p> <p><FRAME SRC="footer.htm"> </p> <p></FRAMESET> </p> <p><NOFRAMES> </p> <p>Ihr Browser kann keine Frames anzeigen</p> <p>

Die zweite Datei mit dem Namen „frameset.htm“ enthält den folgenden Code:

In diesem Fall verhalten sich die obere und untere Zeile gleich. Aber die zweite Zeile ist jetzt ein einfacher Rahmen wie die anderen. Allerdings definiert die Datei „frameset.htm“, auf die der SRC-Parameter verweist, ihre eigene Frame-Struktur. Dadurch wird der Bildschirm genauso angezeigt wie im Originalbeispiel.

Notiz

Grundsätzlich ist es möglich, verschachtelte Strukturen zu erstellen , mithilfe von Tags , die auf dieselbe Datei verweisen, die die Rahmenstruktur beschreibt, dies sollte jedoch nicht erfolgen. Diese Situation führt zu einer endlosen Rekursion und lässt keine weitere Arbeit zu. Einige Browser kontrollieren diese Situation und verhindern die Möglichkeit eines Fehlers. Wenn die in SRC geschriebene Adresse mit einer der vorherigen Adressen in der Frame-Hierarchie übereinstimmt, wird sie ignoriert, als ob der SRC-Parameter überhaupt nicht vorhanden wäre.

Beratung

Verwendung verschachtelter Strukturen In verschiedenen Kombinationen ist es möglich, nahezu jedes erdenkliche Rahmenraster zu erstellen. Denken Sie jedoch daran, eine benutzerfreundliche Oberfläche zu schaffen und nicht nur Ihre Fähigkeiten im Umgang mit Frames unter Beweis zu stellen.

Hier ist ein Beispiel für die Erstellung eines regelmäßigen rechteckigen Rasters aus Rahmen:

In diesem Beispiel wird ein Rahmenraster mit zwei Zeilen und drei Spalten erstellt (Abbildung 5.6). Da ein Satz von sechs Frames definiert ist, müssen auch sechs einzelne Frames definiert werden . Bitte beachten Sie, dass Rahmendefinitionen zeilenweise angegeben werden. Das heißt, das erste Tag definiert den Inhalt der ersten Spalte in der ersten Zeile, der zweite definiert den Inhalt der zweiten Spalte und der dritte beendet die Definition der Daten für die letzte Spalte der ersten Zeile. Die letzten drei Frames füllen dann die Spalten der zweiten Zeile.


Reis. 5. 6 . 2 x 3 Rahmenraster

Beachten Sie auch, dass die Summe der Prozentwerte im COLS-Parameter nicht 100, sondern nur 90 Prozent beträgt. Daran ist nichts auszusetzen, da der Browser die Breite der Spalten automatisch proportional ändert, um diesen Widerspruch zu beseitigen.

Navigationsfunktionen bei Verwendung von Frames

Das Arbeiten mit Dokumenten mit Rahmenstruktur weist einige Funktionen auf, die Sie kennen müssen. Diese Funktionen von JB zeigen sich hauptsächlich in der Navigation beim Laden von Dokumenten. Erhebliche Unterschiede in der Navigation sind nicht nur für verschiedene Browser charakteristisch, sondern auch für verschiedene Versionen desselben Browsers.

Wenn Sie in den Netscape-Browserversionen 3.x und 4.x auf die Schaltfläche „Zurück“ klicken, kehrt das Dokument zu dem Frame zurück, auf den zuletzt reagiert wurde. Die gleichen Aktionen werden ausgeführt, wenn beim Aufrufen des Kontextmenüs in einem der Frames das Element „Zurück“ ausgewählt wird. Wir möchten Sie daran erinnern, dass das Kontextmenü durch Klicken mit der rechten Maustaste aufgerufen wird. Unabhängig davon, in welchem ​​Frame das Kontextmenü aufgerufen wurde, wird durch Drücken der Zurück-Taste der letzte Vorgang abgebrochen, auch wenn er in einem anderen Frame ausgeführt wurde.

Der Netscape 2.x-Browser funktionierte völlig anders. Das Kontextmenü enthält den Befehl „Zurück in Frame“, der das Dokument zum aktuellen Frame zurückbringt, anstatt den letzten Vorgang rückgängig zu machen.

In jeder Netscape-Version können Sie ein in einem ausgewählten Frame enthaltenes Dokument mit einem Lesezeichen versehen. Dazu müssen Sie im oben genannten Kontextmenü den Modus „Lesezeichen hinzufügen“ auswählen. Wenn Sie im Hauptmenü des Browsers einfach den Modus „Lesezeichen hinzufügen“ auswählen, wird im Dokument ein Lesezeichen mit einer Beschreibung der Rahmenstruktur erstellt , was nicht genau auf einen bestimmten Frame verweist. Die Möglichkeit, ein Lesezeichen für ein Dokument eines separaten Rahmens zu erstellen, bedeutet nicht, dass die gleiche Rahmenstruktur entsteht, wenn Sie dieses Lesezeichen weiterhin verwenden. Das Dokument, auf das das Lesezeichen verweist, wird in ein vollständiges Fenster außerhalb der Rahmenstruktur geladen.

Interaktion zwischen Frames

Die einfachste Form der Informationsbetrachtung im WWW besteht im Lesen von Seiten und dem Folgen von Links, wobei das aktuelle Dokument im Browserfenster durch ein anderes Dokument ersetzt wird. Wenn Sie mit Rahmen arbeiten, können Sie ein benutzerfreundlicheres Schema zum Laden von Dokumenten organisieren.

Interaktion zwischen Frames ist die Möglichkeit, Dokumente mithilfe von Befehlen aus einem anderen Frame in den ausgewählten Frame zu laden. Zu diesem Zweck wird der Tag-Parameter TARGET verwendet<А>. Dieser Parameter gibt den Namen des Frames oder Browserfensters an, in den das Dokument geladen wird, auf das dieser Link verweist. Wenn kein TARGET-Parameter vorhanden ist, wird das Dokument standardmäßig in den aktuellen Frame (oder das aktuelle Fenster) geladen. Diese Standardeinstellung kann durch die Angabe eines Tags überschrieben werden mit dem gewünschten Wert des TARGET-Parameters. Die Angabe des Namens des Standardrahmens, in den geladen werden soll, ist sehr nützlich, wenn eine große Anzahl von Links Dokumente zu einem bestimmten Rahmen weiterleiten muss. Eine typische Situation mit einem Inhaltsverzeichnis in einem Frame und Links, von denen aus entsprechende Dokumente in einen angrenzenden Frame geladen werden, wurde am Anfang dieses Kapitels gezeigt (Abbildung 5.1). Für dieses Beispiel im Abschnitt Um eine Datei mit dem Namen LIST.htm zu erstellen, empfiehlt es sich, die folgende Zeile zu schreiben: . Andernfalls müssten Sie für jeden Link einen TARGET-Parameter angeben.

Rahmennamen müssen mit einem lateinischen Buchstaben oder einer lateinischen Zahl beginnen. Der Name kann der Name eines bestehenden Fensters oder Rahmens sein, oder es kann ein neuer Name angegeben werden, unter dem ein neues Fenster geöffnet wird. Es gibt vier reservierte Namen, die bei Angabe besondere Aktionen ausführen. Diese Namen beginnen mit einem Unterstrich (_): „_blank“, „_self“, „_parent“ und „_top“. Alle anderen Namen, die mit einem Unterstrich beginnen, sind ungültig.

TARGET="_blank" - sorgt dafür, dass das Dokument in ein neues Fenster geladen wird. Dieses Fenster hat keinen Namen und daher ist es nicht möglich, ein anderes Dokument darin zu laden.

TARGET="_self" - Das Dokument wird in den aktuellen Frame (oder das aktuelle Fenster) geladen. Dieser Eintrag sollte verwendet werden, um die durch das Tag angegebene Standardeinstellung zu umgehen .

TARGET="_top" – bewirkt, dass das Dokument im gesamten Fenster geladen wird. Befindet sich das Dokument bereits in einem vollständigen Fenster, hat dieser Wert die gleiche Wirkung wie"_selbst".

TARGET="_parent" – bewirkt, dass das Dokument in den Bereich geladen wird, der vom übergeordneten Frame des aktuellen Frames eingenommen wird. Wenn kein übergeordneter Frame vorhanden ist, hat dieser Parameterwert die gleiche Wirkung wie"_Spitze" .

Notiz

Einige HTML-Quellen geben fälschlicherweise an, dass der Wert „_parent“ dem Wert „_self“ entspricht, wenn ein Frame kein übergeordnetes Element hat. Diese Aussage ist nicht immer richtig.

Warnung

Die reservierten Frame-Namen „_blank“, „_self“, „_parent“ und „_top“ müssen in lateinischen Kleinbuchstaben geschrieben werden. Beachten Sie, dass diese Genauigkeit einzigartig für Netscape ist. Der Microsoft Internet Explorer erkennt in jedem Fall geschriebene reservierte Namen korrekt.

Hier finden Sie Beispiele für die Interaktion zwischen Frames und einzelnen Browserfenstern. Betrachten Sie den folgenden HTML-Code:

Verwenden von Frames

Dieses HTML-Dokument beschreibt eine Struktur, die aus drei Frames mit den Namen „A“, „B“ und „C“ besteht. Frame-Namen werden später benötigt, um Verbindungen zwischen Frames zu organisieren. Beachten Sie, dass es in diesem Beispiel keine Links zum Frame mit dem Namen „A“ gibt, sodass er auch ohne Namen hätte belassen werden können. Wenn Sie das obige Dokument in einen Browser laden, zeigen die Frames die Informationen an, die in den durch den SRC-Parameter identifizierten Dateien enthalten sind. Frame „A“ erhält den Inhalt der Datei „frame_a.htm“ und die verbleibenden zwei Frames erhalten Daten aus der Datei „empty.htm“, die keine anzuzeigenden Daten enthält. Wir möchten Sie noch einmal daran erinnern, dass das HTML-Dokument, das die Struktur von Frames beschreibt, keinen Abschnitt hat .

Hier ist der Text der Datei mit dem Namen „frame_a.htm“:

Dokument für Frame A

D

4. Laden eines Dokuments in einem neuen Fenster

5. Laden eines Dokuments im Vollbildmodus

6. Laden eines Dokuments in den aktuellen Frame

Bei diesem Dokument handelt es sich um ein vollständiges HTML-Dokument mit Abschnitten Und und enthält wiederum Links zu einer Datei namens test.htm, die sich im selben Verzeichnis wie die Datei „frame_a.htm“ befindet.

Der Text der test.htm-Datei ist äußerst einfach:

Testdokument

Testdokumenttext

Die Datei frame_a.htm, deren Inhalt in Frame „A“ geladen wurde, enthält sechs Links zur gleichen Datei test.htm mit unterschiedlichen Werten für den TARGET-Parameter.

Betrachten wir die Aktionen, die bei der Implementierung dieser Links auftreten. Der erste Link mit dem Wert TARGET="B" lädt die Datei test.htm in einen Frame mit dem Namen „in“. Beachten Sie, dass der Netscape-Browser nach der Implementierung eines der sechs Links automatisch alle sechs Links in einer anderen Farbe einfärbt, da sie auf dieselbe Datei verweisen. Der Microsoft Internet Explorer markiert nur Links, die tatsächlich implementiert sind.

Der zweite Link bewirkt dasselbe für Rahmen „C“. In den Frames „B“ und „C“ ist zunächst nichts (genauer gesagt wird der Inhalt der leeren Datei empty.htm geladen). Die Implementierung des ersten und zweiten Links füllt diese Frames.

Der dritte Link mit dem Wert „TARGET=MD“ führt zur Bildung eines neuen Browserfensters mit dem Namen „D“ und zum Laden der Datei test.htm. Beachten Sie, dass sich die Schreibweise dieses Links nicht von der ersten unterscheidet 2. Der Unterschied besteht darin, dass im ersten Fall in zwei Fällen auf vorhandene Frames verwiesen wurde, deren Namen in der Datei mit der Frame-Struktur definiert wurden, und in diesem Fall auf ein nicht vorhandenes Objekt verwiesen wurde. Wenn Wird dieser Verweis mindestens einmal vorgenommen, dann wird ein Fenster mit dem Namen „D“ erstellt und durch wiederholtes Klicken auf den Link werden die Daten lediglich in das nun bestehende Fenster „D“ neu geladen. Selbstverständlich kann der Benutzer es jederzeit schließen Zeit und erstellen Sie es neu, indem Sie diesen Link auswählen. Abbildung 5.7 zeigt die Situation, nachdem die ersten drei Links implementiert wurden. Denken Sie daran, dass die Position und die Größe der Fenster auf dem Bildschirm vom Benutzer bestimmt werden.

Reis. 5. 7 . Die Situation ergibt sich nach der sequentiellen Implementierung der ersten drei im linken Rahmen verfügbaren Links

Der fünfte Link mit dem Wert TARGET="_top" lädt das Dokument im gesamten Fenster statt in der gesamten Rahmenstruktur. Bei diesem Wert des TARGET-Parameters wird kein neues Fenster erstellt. Die Rückkehr zur Rahmenstruktur ist durch Klicken auf die Schaltfläche „Zurück“ möglich.

Notiz

Die Namen von Frames oder Browserfenstern sollten nicht mit den Namen heruntergeladener Dokumente verwechselt werden. Die Namen der Frames sind beim Betrachten nirgendwo sichtbar, sie werden nur zur Organisation der Interaktion benötigt und sind daher für den Benutzer verborgen. Sie können sie nur sehen, wenn Sie den Quelltext von HTML-Dateien anzeigen.

Beratung

Wir möchten Sie daran erinnern, dass die Namen der heruntergeladenen Dokumente durch das Tag angegeben werden . Wenn ein Dokument in einem vollständigen Fenster geladen wird, wird sein Name ganz oben im Browserfenster angezeigt. Wenn ein Dokument in einen Rahmen geladen wird, wird sein Name nirgendwo angezeigt und der Titel des Dokuments mit einer Beschreibung der Rahmenstruktur des Dokuments befindet sich weiterhin im oberen Teil des Fensters. Daher sind die Namen von Dokumenten, die in Frames angezeigt werden sollen, nicht sehr wichtig. Zum Beispiel in Abb. 5.7 Das gleiche Dokument wird in die Frames „B“ und „C“ sowie in ein separates Fenster mit dem Namen „D“ geladen, während der Name des Dokuments nur im Fenster „D“ sichtbar ist. Es wird jedoch kaum empfohlen, die Namen der in Frames geladenen Dokumente wegzulassen, da diese beispielsweise in der Lesezeichenliste erscheinen können, wenn Sie ein Lesezeichen für ein Dokument erstellen, das sich in einem Frame oder einer Liste angezeigter Dokumente befindet.</span> </i></p> <p>Schauen wir uns ein weiteres interessantes Beispiel für die Organisation der Interaktion zwischen Frames und Browserfenstern an. Es sei der Text des geladenen Haupt-HTML-Dokuments:</p> <p><HTML> </p> <p><HEAD> </p> <p><TITLE>Fensternamen verwenden

Ein Dokument mit Rahmenstruktur in ein neues Fenster

Verwenden von Frames

Bitte beachten Sie, dass, wenn das Hauptdokument ein Standard-HTML-Dokument ist, die über einen Link vom Hauptdokument geladene Datei „frame.htm“ die Rahmenstruktur enthält und wiederum auf die Datei „leer.htm“ verweist.

Nach dem Laden des Hauptdokuments sieht das Browserfenster wie in Abb. 5,8 (linkes Fenster). Das gesamte Dokument besteht aus zwei Links. Folgen wir dem ersten Link. Es wird ein neues Fenster mit dem Namen „D“ erstellt, in dem der Text der Datei test.htm erscheint (Abb. 5.8, rechtes Fenster). Durch Wiederholen dieses Links werden nur die Daten im Fenster „D“ neu geladen.


Reis. 5.8. Beispiel für interagierende Rahmenfenster

Folgen wir dem zweiten Link. Es entsteht ein neues Fenster ohne Namen, in das die Datei „frame.htm“ geladen wird, die zwei Frames mit den Namen „C“ und „D“ definiert (Abb. 5.8, unteres Fenster). In beiden Frames ist nichts (genauer gesagt wird ein leeres Dokument empty.htm geladen). Beachten Sie, dass es jetzt ein offenes Fenster mit dem Namen „D“ und ein Fenster mit Rahmen gibt, von denen einer ebenfalls den Namen „D“ trägt. Folgen wir noch einmal dem ersten Link. Im Gegensatz zum ersten Fall werden die Daten nicht in das Fenster „D“, sondern in einen Frame namens „D“ geladen. Das Ergebnis aller beschriebenen Aktionen ist in Abb. dargestellt. 5.8.

Notiz

Das Aussehen sich öffnender Fenster und deren Inhalte kann manchmal sogar von der Reihenfolge der Benutzeraktionen abhängen. Die Arbeit mit Dokumenten, deren Verhalten schwer vorhersehbar ist, führt in der Regel zu berechtigten Irritationen beim Benutzer und deutet auf einen Mangel an Rücksichtnahme bei der Datenstruktur seitens der Entwickler hin.

Wenn Sie die Reihenfolge der Aktionen ändern, d. h. zuerst den zweiten und dann den ersten Link ausführen, wird das Fenster mit dem Namen „D“ überhaupt nicht angezeigt! Dies liegt daran, dass nach der Implementierung des zweiten Links ein Frame mit dem Namen „D“ erstellt wird und kein neues Fenster für den ersten Link geöffnet werden muss.

Dieses Beispiel ist überhaupt kein Vorbild, sondern zeigt nur die mögliche Komplexität der Organisation von Interaktion. Im Gegenteil, Sie sollten versuchen, die Organisation der Daten nicht unnötig zu komplizieren, geschweige denn Situationen zu schaffen, in denen sich das Ergebnis abhängig von der Reihenfolge der Benutzeraktionen ändert.

Beratung

Vermeiden Sie Kollisionen bei Frame- und Fensternamen. Obwohl es nicht offiziell verboten ist, Frames mit demselben Namen zu verwenden, kann dies zu Verwechslungen führen.

Warnung

Rahmen- und Fensternamen werden unter Berücksichtigung der Groß-/Kleinschreibung verglichen. So sind beispielsweise die Frames mit den Namen „Frame_1“ und „Frame_1“ unterschiedlich.

Beispiele für komplexere Interaktionen zwischen Frames

Ganz einfache typische Beispiele für die Interaktion zwischen Frames wurden oben diskutiert. Berücksichtigt wurden die Aufgaben des Erstellens neuer Fenster, des Ersetzens des Inhalts einzelner Rahmen sowie der Anzeige eines Dokuments in einem vollständigen Fenster unter Zerstörung der gesamten Rahmenstruktur. Es werden Beispiele für die Verwendung benutzerdefinierter Frame-Namen sowie der reservierten Namen „_blank“, „_self“ und „_top“ gegeben. Die Verwendung des letzten reservierten Namens „_parent“ ist komplexer und wird im Folgenden beschrieben.

In diesem Abschnitt werden komplexere Optionen für die Interaktion zwischen Frames betrachtet. Insbesondere wird das Ersetzen des Inhalts mehrerer benachbarter Frames implementiert.

Eine der häufigsten Verwendungen von Frames, die bereits in diesem Kapitel erwähnt wurde, ist der Fall von zwei Frames, von denen einer eine Liste von Links und der andere die Dokumente selbst enthält (Abb. 5.1).

Versuchen wir, die Formulierung des Problems zu erweitern. Angenommen, Sie möchten den Inhalt eines ziemlich großen Dokuments, das aus in Abschnitte unterteilten Kapiteln besteht, auf dem Bildschirm anzeigen. Ein typisches Beispiel ist Fachliteratur zu einem bestimmten Thema. Beschreiben wir die gewünschte Darstellung eines solchen Dokuments auf dem Bildschirm. Teilen wir den Bildschirm in drei Rahmen auf, von denen einer eine Liste der Buchkapitel enthält, der zweite eine Liste der Abschnitte des ausgewählten Kapitels und der dritte den Text des ausgewählten Abschnitts. Wenn Sie im zweiten Frame einen Link auswählen, sollte sich der Inhalt des dritten Frames ändern. Die Umsetzung dieser Anforderung ist trivial. Wenn Sie im ersten Frame einen Link auswählen, sollte sich der Inhalt des zweiten und dritten Frames gleichzeitig ändern. Auf den ersten Blick ist es unmöglich, diese Aufgabe in HTML umzusetzen (ohne die Programmierung in JavaScript oder anderen zu verwenden), da bei der Ausführung eines Links nur ein Dokument geladen wird und nicht zwei oder mehr. Dennoch ist eine Lösung dieses Problems durchaus möglich.

Lassen Sie uns anhand eines einfachen Beispiels eine mögliche Lösung für ein solches Problem zeigen. Angenommen, Sie möchten drei Frames auf dem Bildschirm anzeigen und einige Dokumente darin laden. Stellen wir uns die Aufgabe, in jedem dieser Frames Links zu erstellen, deren Umsetzung beispielsweise den Inhalt zweier Frames vertauscht. Lassen Sie den ersten Rahmen 50 % der Fensterbreite und 100 % seiner Höhe einnehmen und positionieren Sie ihn auf der linken Seite des Fensters. Die rechte Fensterhälfte ist ebenfalls horizontal in zwei Hälften geteilt und enthält zwei weitere Rahmen. Diese Struktur wird durch den folgenden Code beschrieben:

Mithilfe dieses HTML-Codes wird die erforderliche Struktur erstellt, eine Lösung des Problems ist jedoch nicht möglich. Die verschachtelte Struktur muss entfernt werden in eine separate Datei kopieren und in diesem HTML-Code einen Frame beschreiben, der auf die erstellte Datei verweist. Dann sieht der Text des Quelldokuments so aus:

Beispiel für die Interaktion zwischen Frames

Erstellte Datei mit verschachtelter Struktur hat den Namen 1_2.htm und enthält folgenden Code:

1-2

Auf den ersten Blick hat sich überhaupt nichts geändert. In beiden Fällen gibt es drei Frames, in die jeweils die Dokumente left.htm, 1.htm und 2.htm geladen werden. Wenn die Frames jedoch interagieren, wird der Unterschied sichtbar. Wenn im ersten Fall keiner der Frames einen übergeordneten Frame hat, ist der übergeordnete Frame im zweiten Fall für zwei Frames ein Frame mit dem Namen „Two_Frames“. Wenn Sie also in einem von zwei Frames einen Link mit einem TARGET-Parameterwert gleich „_parent“ anwenden, ist das Ergebnis im ersten und zweiten Fall unterschiedlich. Im ersten Fall wird durch die Implementierung eines solchen Links das Dokument in ein vollständiges Fenster geladen und die vorhandene Rahmenstruktur ersetzt. Hier kommt die Werteigenschaft „_parent“ ins Spiel, die sich wie „_top“ verhält, wenn kein übergeordneter Frame vorhanden ist. Im zweiten Fall wird ein Frame namens „Two_Frames“ ersetzt, der die rechte Bildschirmhälfte einnimmt und im Wesentlichen aus zwei Frames besteht.

Der zweite Fall unterscheidet sich formal vom ersten auch durch das Vorhandensein eines Frames namens „Two_Frames“, auf den verwiesen werden kann. Genau diese Funktion wird es uns ermöglichen, das Problem zu lösen.

Hier ist der Inhalt der Datei left.htm, die zunächst in den ersten der betrachteten Frames geladen wird:

Linker Rahmen

Dokumente in zwei Rahmen auf der rechten Seite des Fensters.

Wählen Sie die Option für den Speicherort des Dokuments:

1 _2.htm" TARGET="Two_Frames">Option 1-2

Option 2-1

2-1<TITLE> </p> <p></HEAD> </p> <p><FRAMESET ROWS="*,*"> </p> <p><FRAME SRC="2.htm"> </p> <p><FRAME SRC="1.htm"> </p> <p></FRAMESET> </p> <p></HTML> </p> <p>Beachten Sie, dass sich der Text der Dateien 1_2.htm und 2_1.htm nur in der Reihenfolge der Links zu den Dateien 1.htm und 2.htm unterscheidet.</p> <p>Betrachten wir nun den Aufbau eines in den linken Rahmen geladenen Dokuments. Es enthält zwei Links mit dem Parameter TARGET="Two_Frames". Durch die Implementierung eines dieser Links werden zwei Frames an der Position des Frames „Two_Frames“ (dies ist die rechte Hälfte des Bildschirms) erstellt, wodurch die Dokumente 1.htm und 2.htm in der einen oder anderen Reihenfolge geladen werden. Wenn Sie also Option 1-2 wählen, wird Dokument 1.htm in den oberen rechten Rahmen und 2.htm in den unteren rechten Rahmen geladen. Wenn Sie Option 2-1 auswählen, ändert sich die Reihenfolge der Dokumente. Dadurch entsteht durch die abwechselnde Auswahl der Optionen der Eindruck, dass die Dokumente in den beiden Rahmen ihre Plätze tauschen. Genau diesen Effekt wollten wir erreichen (Abb. 5.9).</p> <p>Der Inhalt der Dokumente 1.htm und 2.htm spielt für das beschriebene Beispiel keine Rolle. Anstelle von trivialen Dokumenten erstellen wir jedoch beispielsweise Dokumente mit Links, die dieselben Aktionen implementieren.</p> <p>Text der Datei 1.htm:</p> <p><HTML> </p> <p><HEAD> </p> <p><TITLE>Dokument 1

Dokument 1

Option 1-2

Option 2-1

Datei 2.htm unterscheidet sich von 1.htm nur im Header.

Es gibt zwei Links mit dem Wert TARGET="_parent", die auf den übergeordneten Frame verweisen. Diese Links könnten auch mit einem expliziten Namen des übergeordneten Frames geschrieben werden, z. B. TARGET="Two_Frames", aber die Verwendung eines impliziten Namens ist normalerweise praktischer. Wenn Sie beispielsweise Links aus dem linken Frame (Dokument left.htm) ausschließen, können Sie den bei der Beschreibung der Hauptframestruktur angegebenen Framenamen „Two_Frames“ weglassen. Dadurch würde ein Frame ohne Namen erstellt, aber die Links aus den Dokumenten 1.htm und 2.htm mit TARGET="_parent" würden trotzdem korrekt funktionieren.

Beratung

Verwenden Sie nach Möglichkeit eine implizite Frame-Benennung. Zum Beispiel „parent“, „top“, „self“ anstelle der Angabe spezifischer Namen.


Reis. 5.9. Interagierende Rahmenfenster mit der Wirkung, geladene Dokumente zu verändern

Unterschied zwischen Frames und Browserfenstern

Bei der Arbeit mit Frames stellt sich die Frage nach dem grundsätzlichen Unterschied zwischen der Organisation der Framestruktur eines Browserfensters und der Erstellung mehrerer Fenster. Auf den ersten Blick könnte es scheinen, dass man mit der Möglichkeit, mehrere Fenster zu erstellen, auskommen könnte, da die Arbeit mit Fenstern und Rahmen sehr ähnlich ist. Für jeden Frame muss ein separates Dokument geladen werden, der Inhalt kann unabhängig voneinander gescrollt werden und er kann durch Befehle aus anderen Frames geändert werden. Diese Eigenschaften von Frames ähneln denen von Browserfenstern. Mit einer tabellarischen Organisation der Daten ist eine solche Handlungsfreiheit nicht zu erreichen.

Es gibt jedoch einen wesentlichen Unterschied zwischen Rahmen und Fenstern. Bei der Frame-Organisation erfolgt die Aufteilung des Anzeigebereichs in Frames durch das HTML-Dokument selbst unter Angabe der Abmessungen und ihrer Position. Beim Betrachten kann der Benutzer die Größe der Frames ändern, sofern dies in der Beschreibung ihrer Struktur nicht verboten ist. Die Anordnung der Fenster wird durch die allgemeinen Regeln für die Arbeit mit dem Windows-System bestimmt – der Benutzer kann jedes Fenster auf den Vollbildmodus erweitern, es zu einem Symbol verkleinern oder seine Größe und Position beliebig festlegen. Fenster können sich im Gegensatz zu Rahmen überlappen. Diese große Auswahl hat ihre Kehrseite: Sie müssen die Fenster jedes Mal manuell auf dem Bildschirm positionieren und ihre Größe ändern, um die optimale Anzeigeoption zu erzielen. Bei Rahmen wird das optimale Größenverhältnis meist vom Entwickler in der Beschreibung des Rahmenaufbaus vorgegeben und muss oft nicht verändert werden.

Beratung

Obwohl Rahmen nicht alle Möglichkeiten für die Arbeit mit einzelnen Fenstern bieten können, sorgt ihre rationelle Organisation für maximalen Komfort für den Benutzer.

Das Arbeiten mit Windows bringt auch andere Nachteile mit sich. Das Erstellen jedes Fensters erfordert viel Speicher. In Netscape ist jedes Fenster im Wesentlichen eine weitere Kopie des Browsers, komplett mit einem vollständigen Satz an Schaltflächen und Menüs. Die gleiche Situation ist typisch für Microsoft Internet Explorer.

Beachten Sie, dass die Organisation einzelner Fenster in Browsern unterschiedlich erfolgt. Das Erstellen eines neuen Fensters mit einem Dokument führt zum Erscheinen einer separaten Aufgabe im Windows-System, wie Sie in der Liste der ausgeführten Aufgaben sehen können. Daher kann der Wechsel zwischen Fenstern auf die gleiche Weise erfolgen wie der Wechsel zwischen verschiedenen Aufgaben, beispielsweise durch Drücken einer Tastenkombination +.

Viele beliebte Windows-Anwendungen verfügen über das Konzept eines Dokumentfensters. Beispiele hierfür sind das Textverarbeitungsprogramm Microsoft Word oder das Grafikprogramm Paint Shop Pro und viele andere. Jede dieser Anwendungen ermöglicht die gleichzeitige Nutzung mehrerer Fenster mit Daten und in der Regel gibt es ein Fenstermenü, das eine Liste der Fenster bereitstellt und die Möglichkeit bietet, zwischen ihnen zu wechseln. Die Erstellung eines neuen Fensters erfolgt in solchen Anwendungen normalerweise beim Öffnen einer vorhandenen Datei oder beim Erstellen einer neuen. Allerdings wird in diesen Programmen beim Erstellen eines neuen Fensters keine neue laufende Aufgabe erstellt.

Netscape verfügt außerdem über ein Fenstermenü, das vorhandene Fenster auflistet. (In Netscape 4.x-Versionen wird diese Funktion über den Eintrag „Fenster“ im Communicator-Menü bereitgestellt.) Kehren wir zu Abb. zurück. 5.8. In diesem Beispiel sind drei Fenster gleichzeitig geöffnet, von denen jedes im Wesentlichen ein separater Browser ist. Für den Benutzer sind es jedoch alle Fenster desselben Browsers, die miteinander interagieren können. In jedem dieser Fenster können Sie das Fenstermenü öffnen und eine Liste mit drei Fenstern anzeigen. In Abb. Abbildung 5.10 zeigt die Situation, wenn dies für das untere Fenster durchgeführt wird.


Reis. 5.10.Öffnen von Frame-Fenstern im Netscape-Browser

Jedes Fenster kann separat geschlossen werden (mit dem Befehl „Schließen“ im Menü „Datei“). Um die Arbeit mit dem Browser in einem beliebigen Fenster zu beenden, können Sie das Menü „Datei“ öffnen und „Beenden“ wählen (Abb. 5.11).

Wenn mehrere Fenster geöffnet waren, werden alle geschlossen, zuvor erscheint jedoch eine Warnmeldung (Abb. 5.12).

Jedes Browserfenster kann seine eigenen Einstellungen haben (aber nicht alle). Schauen Sie sich Abb. an. 5.11. Zwei Fenster sind geöffnet, eines davon ist in drei Rahmen unterteilt. Das gleiche Dokument wird in zwei der drei Frames sowie in einem separaten Fenster geladen. Durch die Möglichkeit, die Parameter jedes Fensters unabhängig zu konfigurieren, können Sie dasselbe Dokument unterschiedlich anzeigen. Im obigen Beispiel ist die Schriftgröße des Dokuments in einem Fenster größer als im anderen. Dieser Effekt wird erreicht, indem für jedes Fenster unterschiedliche Kodierungen festgelegt werden (das Element „Dokumentkodierung“ im Menü „Optionen“ oder das Element „Zeichensatz“ im Menü „Ansicht“ für Version 4.x), wobei beide Kodierungen dieselbe Schriftart, aber unterschiedliche Größen verwenden. Das Ändern eines Elements im Menü „Allgemeine Einstellungen“ wirkt sich auf alle Fenster aus.


Reis. 5.11. Beenden des Netscape-Browsers

Reis. 5.12. Warnung vor dem Schließen von Fenstern im Netscape-Browser

Zusätzliche Browserfunktionen

Alle oben genannten Frame-Beschreibungs-Tags mit den entsprechenden Parametern sind in den Browsern Netscape und Microsoft Internet Explorer nahezu identisch implementiert, jedoch ermöglicht Ihnen jeder dieser Browser zusätzlich die Verwendung eigener eindeutiger Tags oder Parameter.

Funktionen des Netscape-Browsers

Der Netscape-Browser bietet ab Version 3.0 drei zusätzliche Optionen: BORDER, FRAMEBORDER und BORDERCOLOR. Der BORDER-Parameter gilt nur für das Tag . Der Wert des BORDER-Parameters bestimmt die Dicke der Ränder zwischen Bildern in Pixeln.

Der Parameter FRAMEBORDER kann sowohl im Tag verwendet werden , und im Tag und bestimmt das Vorhandensein eines Frames zwischen Frames. Dieser Parameter kann Ja oder NEIN sein. Wenn der Parameter in das Tag geschrieben wird , dann gilt seine Wirkung für alle Frames in dieser Gruppe. Für einen einzelnen Frame kann der Wert überschrieben werden. Der Standardwert ist Ja.

Beachten Sie, dass die Parameter BORDER und FRAMEBORDER unabhängig voneinander funktionieren. Wenn beispielsweise FRAMEBORDER auf NO und BORDER auf einen anderen Wert als Null gesetzt ist, wird die Grenze zwischen Frames nicht gezeichnet, aber der durch den Parameterwert BORDER angegebene Platz wird ihr trotzdem zugewiesen.

Der Parameter BORDERCOLOR kann wie im Tag verwendet werden , und im Tag und definiert die Rahmenfarbe, die durch den Farbnamen oder seine hexadezimale Darstellung angegeben werden kann.

Hier ist ein Beispiel:

Die erste Zeile dieses HTML-Codes gibt drei Frames an, mit Abstand dazwischen für einen 10 Pixel dicken Frame (Abbildung 5.13).


Reis. 5.13. Zeichnen von Rändern zwischen Frames im Netscape-Browser

Zwischen den Rahmenfenstern „A“ und „B“ wird aufgrund des NO-Werts des Parameters FRAMEBORDER kein Rahmen gezeichnet, für den Rahmen ist jedoch die Farbe Rot definiert. Für den letzten Frame „c“ wird der FRAMEBORDER-Wert auf „Ja“ gesetzt und überschreibt den in der ersten Zeile festgelegten Wert. Daher wird zwischen den Frames mit der Bezeichnung „B“ und „C“ weiterhin ein roter Rahmen mit einer Dicke von 10 Pixeln gezeichnet.

Notiz

Wenn keine Ränder zwischen Frames gezeichnet werden, lässt der Netscape-Browser die Größenänderung von Frames durch Ziehen mit der Maus nicht zu, auch ohne den Parameter NORESIZE. Beim Microsoft Internet Explorer ist die Situation anders.

Beachten Sie, dass Rahmen ohne Rahmen nicht sehr selten verwendet werden. Es ist zu beachten, dass das Fehlen von Rahmen das Erscheinen von Bildlaufleisten nicht verhindert (Abb. 5.14).


Reis. 5.14. Bildlaufleisten im Rahmen ohne Rahmen

Funktionen des Microsoft Internet Explorer-Browsers

Mit dem Microsoft Internet Explorer-Browser können Sie den Parameter FRAMEBORDER für die gleichen Zwecke wie oben beschrieben verwenden, jedoch nicht die Farbe und Dicke der Rahmen festlegen. Allerdings kann nur der numerische Wert „O“ als Wert für den Parameter FRAMEBORDER verwendet werden, um das Zeichnen eines Rahmens abzubrechen, oder ein numerischer Wert ungleich Null, um einen Rahmen zu zeichnen.

Der Unterschied in den Regeln zum Festlegen der Werte des FRAMEBORDER-Parameters für verschiedene Browser ist sehr unangenehm. Versuchen Sie es beispielsweise mit der Einstellung FRAMEBORDER=Ja. Dieser Eintrag ist für Netscape korrekt, für Microsoft Internet Explorer führt er jedoch dazu, dass kein Frame vorhanden ist. Das vorherige Beispiel (Abb. 5.13) wird bei der Betrachtung im Microsoft Internet Explorer ohne Rahmen dargestellt.

Beratung

Es wird empfohlen, den Wert des Parameters FRAMEBORDER immer in numerischer Form zu schreiben, zum Beispiel FRAMEBORDER=0. Dies folgt den Regeln zum Schreiben eines Parameters für Microsoft Internet Explorer, verstößt jedoch gegen die Regeln für Netscape (obwohl es von letzterem korrekt wahrgenommen wird).

Notiz

Wenn die Rahmen zwischen den Rahmen nicht gezeichnet werden, können Sie im Browser Microsoft Internet Explorer (im Gegensatz zu Netscape) in Ermangelung des Parameters NORESIZE die Größe der Rahmen durch „Berühren“ ändern, indem Sie die Rahmen mit der Maus ziehen. Sie können die Stelle finden, an der sich der Rahmen befinden soll, indem Sie die Form des Mauszeigers ändern.

Der Microsoft Internet Explorer-Browser ermöglicht die Verwendung eines zusätzlichen FRAMESPACING-Parameters, der in das Tag geschrieben wird , dessen Wert die Anzahl der Pixel zwischen den Bildern bestimmt, die leer bleiben sollen.

Lassen Sie uns ein Beispiel geben, dessen Anzeigeergebnis in Abb. dargestellt ist. 5.15.

Ändern des Abstands zwischen Frames


Reis. 5.15. Leerraum zwischen Frames im Microsoft Internet Explorer

Notiz

Leider wird in vielen HTML-Sprachbeschreibungen fälschlicherweise angegeben, dass der Parameter FRAMESPACING im Tag verwendet werden muss . Der Microsoft Internet Explorer erlaubt nur die Verwendung dieses Parameters in einem Tag .

Schwebende Rahmen

Der Browser Microsoft Internet Explorer ermöglicht die Verwendung eines eindeutigen Tags . In TEGS

Microsoft Internet Explorer ist der erste Browser (und bisher der einzige), der sogenannte „Floating“ Frames unterstützt.

Diese Rahmen können, genau wie Grafiken und Tabellen, an einer beliebigen Stelle auf dem Bildschirm platziert werden.

Der Rahmen rechts neben diesem Text wird mithilfe eines speziellen Tags auf der Seite platziert

Beispieldokument mit schwebendem Rahmen:



schwebender Rahmen


schwebender Rahmen


Auf dieser Seite wurde der sogenannte „Floating Frame“ eingeführt.
In einem separaten Fenster wird ein weiteres HTML-Dokument zur Anzeige geöffnet.



… … …




Noframes

Einige Browser unterstützen die Dokumentrahmenstruktur nicht oder interpretieren sie falsch; außerdem deaktivieren Benutzer häufig absichtlich die Unterstützung der HTML-Dokumentrahmenstruktur in ihren Browsereinstellungen. Und obwohl der Anteil solcher Browser und Benutzer gering ist, gibt es sie dennoch.

Stellen Sie sich nun vor, dass Sie Ihre Website mithilfe einer Frame-Struktur erstellt haben und einige Besucher, möglicherweise ohne zu wissen, wo das Problem liegt, versuchen, Ihre Website zu öffnen, und ihr Browser zeigt einen Fehler an! Was werden sie von Ihrer Website halten? Ich denke so etwas wie: „Ugh.. irgendein Unsinn.. Ich werde nicht wieder hierher kommen!“

Um dem Nutzer klar zu machen, dass sein Browser/Browsereinstellungen keine Frames unterstützen, gibt es ein Tag </b> .</p> <p>Etikett <b><noframes> </b> Zeigt den darin eingeschlossenen Text an, wenn der Browser des Benutzers keine Frames unterstützt oder diese in seinen Einstellungen zwangsweise deaktiviert sind. Wenn Frames vom Browser des Benutzers unterstützt werden, wird dieses Tag einfach ignoriert.</p> <p> <html> <br> <head> <br> <title>Rahmen</title> <br> </head> <br> <frameset cols="*,800,*" border="0"> <br><b><noframes>Leider unterstützt Ihr Browser keine Frames.











Das Ergebnis des Beispiels wird sich bemerkbar machen, wenn Ihr Browser wirklich keine Frames unterstützt (hier habe ich lange nachgedacht.. :) Wenn das so ist, warum dann dieses Kapitel überhaupt lesen?) oder Sie die Frame-Unterstützung in Ihrem Browser deaktiviert haben Browser als Experiment.

Etikett </b> muss sich innerhalb eines Tags befinden <b><frameset> </b></p> <p>Mit einem schwebenden Rahmen ist alles noch einfacher, schreiben Sie einfach den gewünschten Text dazwischen <b><iframe> </iframe> </b> und diese Meldung wird auf dem Bildschirm angezeigt, wenn der Browser keine Frames unterstützt.</p> <p> <iframe src="primer.html" width="300" height="250" align ="left" scrolling="auto" frameborder="1"><b>Leider unterstützt Ihr Browser keine Frames.</b></iframe> </p> <ul><p>Bevor Sie mit der Erstellung einer Seite mithilfe einer Frame-Struktur beginnen, analysieren Sie deren Layout, die Größe jedes Fensters, das Vorhandensein oder Fehlen von Bildlaufleisten usw. Anschließend können Sie Plug-in-HTML-Dateien erstellen, ohne sich besonders um deren Verwandte kümmern zu müssen relativ zueinander positionieren.</p><p>Tag verwenden <b><noframes> </b>. Denken Sie daran: Wenn die Website in Ihrem Browser funktioniert und so angezeigt wird, wie Sie es beabsichtigt haben, kann es für andere Benutzer anders sein!</p> </ul> <p>Trotz der Tatsache, dass Seiten mit Frames immer seltener werden, wäre das Erlernen von HTML unvollständig, ohne sich mit dem Thema Frames auseinanderzusetzen. Darüber hinaus haben Frames gewissermaßen ihre Nische besetzt und werden für Verwaltungs- und Hilfesysteme verwendet. Wo die Nachteile von Rahmen nicht besonders wichtig sind, die Vorteile aber im Gegenteil aktiv nachgefragt werden.</p> <p>Das Tag wird zum Erstellen eines Rahmens verwendet <frameset>, das das Tag ersetzt <body>in einem Dokument und dient zur Unterteilung des Bildschirms in Bereiche. In diesem Tag befinden sich Tags <frame>, die auf das HTML-Dokument verweisen, das in den Bereich geladen werden soll (Abbildung 13.1).</p> <p>Reis. 13.1. Beispiel für die Aufteilung eines Browserfensters in zwei Frames</p> <p>Bei der Verwendung von Frames benötigen Sie mindestens drei HTML-Dateien: Die erste definiert die Frame-Struktur und teilt das Browserfenster in zwei Teile, die restlichen zwei Dokumente werden in die angegebenen Fenster geladen. Die Anzahl der Frames ist nicht unbedingt gleich zwei, vielleicht mehr, aber nicht weniger als zwei, sonst geht die Bedeutung der Verwendung von Frames völlig verloren.</p> <p>Betrachten wir die Phasen der Rahmenerstellung anhand der in Abb. gezeigten Seite. 13.1. Wir benötigen drei Dateien: index.html – definiert die Struktur des Dokuments, menu.html – wird in den linken Frame geladen und content.html – wird in den rechten Frame geladen. Davon unterscheidet sich nur index.html in der Struktur seines Codes von anderen Dateien (Beispiel 13.1).</p> <p>Beispiel 13.1. index.html-Datei</p><p> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Rahmen</title> </head> <frameset cols="100,*"> <frame src="menu.html" name="MENU"> <frame src="content.html" name="CONTENT"> </frameset> </html> </p><p>Wenn Frames verwendet werden, wird in der ersten Codezeile der folgende Dokumenttyp geschrieben.</p><p> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd"> </p><p>Der<!DOCTYPE>Um dem Browser mitzuteilen, dass es sich um Frames handelt, ist diese Codezeile erforderlich. Container <head>enthält typische Informationen wie Seitenkodierung und Dokumenttitel. Bedenken Sie jedoch, dass der Header gleich bleibt, solange HTML-Dateien innerhalb von Frames geöffnet werden.</p> <p>In diesem Beispiel wird das Browserfenster mithilfe des cols-Attributs in zwei Spalten aufgeteilt, wobei die linke Spalte 100 Pixel einnimmt und die rechte Spalte den verbleibenden, durch das Sternchensymbol angegebenen Platz einnimmt. Auch die Breite bzw. Höhe von Rahmen kann, ähnlich wie bei Tabellen, prozentual eingestellt werden.</p> <p>Im Tag <frame>Der Name der in den angegebenen Bereich geladenen HTML-Datei wird über das src-Attribut angegeben. Eine Datei namens „menu.html“ wird in das linke Fenster geladen (Beispiel 13.2) und „content.html“ wird in das rechte Fenster geladen (Beispiel 13.3). Es empfiehlt sich, jedem Frame einen eindeutigen Namen zu geben, damit Dokumente über das Namensattribut in das angegebene Fenster geladen werden können.</p> <p>Beispiel 13.2. Datei menu.html</p><p> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Seitennavigation</title> </head> <body style="background: #f0f0f0"> <script type="text/javascript"> <!-- var _acic={dataProvider:10};(function(){var e=document.createElement("script");e.type="text/javascript";e.async=true;e.src="https://www.acint.net/aci.js";var t=document.getElementsByTagName("script")[0];t.parentNode.insertBefore(e,t)})() //--> </script><br> <br> </body> </html> </p><p>In diesem Beispiel wird der graue Hintergrund auf der Seite mithilfe von Stilen festgelegt, die später erläutert werden.</p> <p>Beispiel 13.3. Dateiinhalt.html</p><p> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Inhalt der Website</title> </head> <body> <p>INHALT</p> <script type="text/javascript"> <!-- var _acic={dataProvider:10};(function(){var e=document.createElement("script");e.type="text/javascript";e.async=true;e.src="https://www.acint.net/aci.js";var t=document.getElementsByTagName("script")[0];t.parentNode.insertBefore(e,t)})() //--> </script><br> <br> </body> </html> </p><p>Betrachten wir ein komplexeres Beispiel mit drei Frames (Abb. 13.2).</p> <p><img src='https://i0.wp.com/htmlbook.ru/files/images/samhtml/fig_1_13_2.png' width="100%" loading=lazy loading=lazy></p> <p>Reis. 13.2. Teilen einer Seite in drei Frames</p> <p>In diesem Fall wird das Tag erneut verwendet <frameset>, aber zweimal, wobei ein Tag im anderen verschachtelt ist. Die horizontale Partitionierung wird durch das Zeilenattribut erstellt, wobei zur Abwechslung die Prozentschreibweise verwendet wird (Beispiel 13.4).</p> <p>Beispiel 13.4. Drei Rahmen</p><p> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Rahmen</title> </head> <frameset rows="25%,75%"> <frame src="top.html" name="TOP" scrolling="no" noresize> <frameset cols="100,*"> <frame src="menu.html" name="MENU"> <frame src="content.html" name="CONTENT"> </frameset> </frameset> </html> </p><p>Wie aus diesem Beispiel ersichtlich ist, ist der Container <frameset>Mit dem Zeilenattribut werden zunächst zwei horizontale Rahmen erstellt, der zweite Rahmen wird jedoch durch einen anderen ersetzt <frameset>, was die Struktur wiederholt, die Sie bereits aus Beispiel 13.1 kennen. Um zu verhindern, dass eine vertikale Bildlaufleiste erscheint und der Benutzer die Größe des oberen Rahmens nicht selbstständig ändern kann, wurden die Attribute scrolling="no" und noresize hinzugefügt.</p> <p><i> </i> 07.12.2015</p> <p>Noch nicht</p> <br><p>Hallo zusammen! <br>Wir studieren weiterhin fleißig die Grundlagen von HTML. Ich bin froh, dass du deinen Unterricht nicht aufgibst.</p> <p>In dieser Lektion werden wir uns das ansehen <b>Was sind Frames?</b> und wie sie in HTML erstellt werden. <br>Definieren wir also, was Frames in HTML sind. <br><b>Rahmen</b>- Dabei handelt es sich um die Aufteilung des Browserfensters in separate Bereiche, in die einzelne HTML-Dokumente geladen werden können.</p> <p>Ich denke, Sie verstehen, dass Sie dank Frames mehrere Webseiten gleichzeitig in einem Browserfenster anzeigen können.</p> <p>Um zu verstehen, wie der Rahmen in der Praxis funktioniert, schlage ich als Beispiel vor, einen Blick auf ein Beispiel zu werfen. Machen Sie dort ein paar Übergänge:</p> <p>Also was denkst du? Möchten Sie lernen, wie man dies erstellt? Jetzt werden wir lernen <b>Fügen Sie Frames in ein HTML-Dokument ein</b>.</p> <p>Ein Frame auf einer Webseite wird mit dem folgenden Layout erstellt:</p><p> <frameset> <frame> <frame> </frameset> </p><blockquote><p><b>Aufmerksamkeit:</b> Das Frame-Code-Layout wird anstelle des Tags in das HTML-Dokument eingefügt <bode><script type="text/javascript"> <!-- var _acic={dataProvider:10};(function(){var e=document.createElement("script");e.type="text/javascript";e.async=true;e.src="https://www.acint.net/aci.js";var t=document.getElementsByTagName("script")[0];t.parentNode.insertBefore(e,t)})() //--> </script><br> <br> </body> :</p> </blockquote> <html> <head> <title>Rahmen</title> </head> <frameset> <frame> <frame> </frameset> </html> <p>○ <b>Frameset-Tag</b></p> <p>Dies ist der Hauptcontainer zum Erstellen eines Rahmens, in dem andere Elemente enthalten sind. <br>Das schließende Tag ist erforderlich.</p><p> <frameset></frameset> </p><p><i><b>*Attribute des Frameset-Tags:</b> </i> </p> <ul><li>Spalten – vertikal</li> <li>Reihen – horizontal</li> </ul><p><b>Reihen</b>- horizontal</p> <p><img src='https://i2.wp.com/stepkinblog.ru/wp-content/uploads/2015/12/stepkinblog-ru-frameset-html-1.png' height="125" width="181" loading=lazy loading=lazy></p> <p><b>Spalten</b>- vertikal</p> <p><img src='https://i0.wp.com/stepkinblog.ru/wp-content/uploads/2015/12/stepkinblog-ru-frameset-html-2.png' height="127" width="185" loading=lazy loading=lazy></p> <p>Die Attribute cols und rows geben an, in wie viele Teile das Browserfenster unterteilt werden soll. Um beispielsweise das Browserfenster in zwei vertikale Teile zu unterteilen, müssen Sie wie folgt schreiben:</p><p> <frameset cols="30%,*"> </p><p>Die linke Seite des Bildschirms ist 30 % groß, die rechte Seite 70 %.</p> <p>Wenn Sie den Browser in mehrere weitere Teile unterteilen möchten, fügen Sie zusätzliche, durch Kommas getrennte Dimensionen hinzu, beispielsweise wie folgt:</p><p> <frameset cols="30%,20%,10%,40%"> </p><p>Als Ergebnis das erste <span>vertikale Spalte</span> wird 30 % breit sein, der zweite – 20 %, der dritte – 10 %, der vierte – 40 %.</p> <p><img src='https://i0.wp.com/stepkinblog.ru/wp-content/uploads/2015/12/stepkinblog-ru-frameset-html-3.png' width="100%" loading=lazy loading=lazy></p> <p>Habe es?</p> <p>Das Gleiche gilt für das horizontale Layout:</p><p> <frameset rows="30%,20%,10%,40%"> </p><p>Die erste horizontale Spalte ist 30 % breit, die zweite 20 %, die dritte 10 % und die vierte 40 %.</p> <p><img src='https://i1.wp.com/stepkinblog.ru/wp-content/uploads/2015/12/stepkinblog-ru-frameset-html-4.png' height="199" width="390" loading=lazy loading=lazy></p> <p>○ <b>Frame-Tag</b></p> <p>Der Frame-Tag gibt an, welches HTML-Dokument in das Browserfenster geladen werden soll. <br>Beispielsweise müssen wir drei verschiedene Seiten „1.html“, „2.html“, „3.html“ in einem Browserfenster laden. Das Frame-Tag sieht folgendermaßen aus:</p><p> <frame src="1.html"> <frame src="2.html"> <frame src="3.html"> </p><p>Fassen wir das Wissen über Frames zusammen. Also die Aufgabe: Sie müssen das Browserfenster in zwei Teile teilen und zwei Webseiten in diese Teile laden – „1.html“ um 30 %, „2.html“ um 70 %. <br>Hier ist der fertige Code:</p><p> <frameset cols="30%,*"> <frame src="1.html"> <frame src="2.html"> </frameset> </p><p>Das Ergebnis wird so aussehen:</p> <p><img src='https://i0.wp.com/stepkinblog.ru/wp-content/uploads/2015/12/stepkinblog-ru-frameset-html-5.png' width="100%" loading=lazy loading=lazy></p> <p><i><b>* Frame-Tag-Attribute</b> </i> </p> <ul><li>src – Webseitenadresse. <i>src="1.html"</i> ;</li> <li>marginwidth – Rand innerhalb des Rahmens entlang der Breite. Beispiel: <i>marginwidth="10"</i> ;</li> <li>marginhight – Höhe des Randes innerhalb des Rahmens. Beispiel: <i>marginhight="10"</i> ;</li> <li>Scrollen – Scrollen des Bildes durch die Schriftrolle. <br>- ja – die Schriftrolle wird im Rahmen vorhanden sein. Beispiel: <i>scrollen="ja"</i> ;<br>- Nein – Scrollen ist im Frame nicht vorhanden. Beispiel: <i>scrollen="nein"</i> ;<br>- Auto – bei Bedarf wird im Rahmen gescrollt. Beispiel: <i>scrollen="auto"</i> ;</li> <li>noresize – verhindert das Verschieben von Rahmenrändern.</li> <li>Name – Rahmenname. Gibt an, in welchem ​​Fenster andere Frames geöffnet werden sollen. Beispiel: <i>name = "site"</i> ;</li> </ul> <p>Wenn Sie im Attribut „Name“ keinen Namen für den Frame angeben, öffnet sich beim Klicken auf den Link ein neuer Frame in dem Fenster, in dem sich der Link befand:</p> <p>Hier ist ein Beispiel, wenn Sie das Attribut „Name“ hinzufügen:</p> <p>Ist das nicht besser? <br>Fügen Sie für jeden Frame das „Name“-Attribut an der Stelle hinzu, an der andere HTML-Dokumente darin geöffnet werden sollen</p><p> <frame src="2.html "name ="сайт"> </p><p>Der Name im Attribut „name“ kann beliebig sein. Wenn Sie jedoch in Zukunft anderen „Frame“-Tags Namen geben, denken Sie daran, dass jedes einzelne eindeutig sein muss:</p><p> <frame src="2..html "name ="bloggood-ru"> <frame src="3.html "name ="nocrisise-ru"> </p><p>Seite 2 Seite 3</p><p>„Seite 1“, „Seite 2“ wird in einem Fenster geöffnet, in dem Sie den Namen für den Rahmen „name =" angegeben haben <span>Webseite "</span>" und "Seite 3" werden in einem anderen Frame geöffnet, in dem der Name "name =" <span>bloggood-ru "</span>»</p> <p><b>ÜBEN</b></p> <p>Aufgabe: Sie müssen Rahmen mit diesem Layout erstellen:</p> <p><img src='https://i0.wp.com/stepkinblog.ru/wp-content/uploads/2015/12/stepkinblog-ru-frameset-html-6.png' width="100%" loading=lazy loading=lazy></p> <p>Erstellen wir zunächst drei horizontale Rahmen:</p><p> <frameset rows="15%,*,15%"> </frameset> </p><p>Fügen wir nun „top.html“ und „footer.html“ hinzu.</p><p> <frameset rows="15%,*,15%"> <frame src="top.html"> <frame src="footer.html"> </frameset> </p><p>Das Ergebnis wird bisher so aussehen:</p> <p><img src='https://i1.wp.com/stepkinblog.ru/wp-content/uploads/2015/12/stepkinblog-ru-frameset-html-7.png' width="100%" loading=lazy loading=lazy></p> <p>Nun fügen wir zwischen „top.html“ und „footer.html“ „menu.html“ und „content.html“ hinzu:</p><p> <frameset rows="15%,*,15%"> <frame src="top.html"> <frameset cols="25%,75%"> <frame src="menu.html"> <frame src="content.html" name="main"> </frameset> <frame src="footer.html"> </frameset> </p><p>Fertiger Code:</p><p> <html> <head> <title>Rahmen</title> </head> <frameset rows="15%,*,15%"> <frame src="top.html"> <frameset cols="25%,75%"> <frame src="menu.html"> <frame src="content.html" name="main"> </frameset> <frame src="footer.html"> </frameset> </html> </p><p>Speichern Sie die Datei als „index.html“</p> <p>Erstellen Sie die Seiten „top.html“, „footer.html“, „menu.html“ und „content.html“:</p> <p>Dateicode „top.html“</p><p> <html> <head> <title>Website-Header</title> </head> <body bgcolor="#b2f2ff" text="#0000FF"> <h1>Webseite</h1> <script type="text/javascript"> <!-- var _acic={dataProvider:10};(function(){var e=document.createElement("script");e.type="text/javascript";e.async=true;e.src="https://www.acint.net/aci.js";var t=document.getElementsByTagName("script")[0];t.parentNode.insertBefore(e,t)})() //--> </script><br> <br> </body> </html> </p><p>Code der Datei „footer.html“</p><p> <html> <head> <title>Datei footer.html</title> </head> <body bgcolor="#b2f2ff" text="#000000">StepkinBlog.com © 2015<script type="text/javascript"> <!-- var _acic={dataProvider:10};(function(){var e=document.createElement("script");e.type="text/javascript";e.async=true;e.src="https://www.acint.net/aci.js";var t=document.getElementsByTagName("script")[0];t.parentNode.insertBefore(e,t)})() //--> </script><br> <br> </body> </html> </p><p>Dateicode „menu.html“</p><p> <html> <head> <title>Datei menu.html – Site-Menü</title> </head> <body bgcolor="#b2bbff" text="#112cf5"> <ul> <li>Hauptseite</li> <li>Über den Autor</li> </ul> <script type="text/javascript"> <!-- var _acic={dataProvider:10};(function(){var e=document.createElement("script");e.type="text/javascript";e.async=true;e.src="https://www.acint.net/aci.js";var t=document.getElementsByTagName("script")[0];t.parentNode.insertBefore(e,t)})() //--> </script><br> <br> </body> </html> </p><p>Code der Datei „content.html“:</p><p> <html> <head> <title>Hauptseite</title> </head> <body bgcolor="#e3e5f8" text="#FF0055"> <h1>Hauptseite</h1>Websiteinhalt – „Homepage (content.html)“<script type="text/javascript"> <!-- var _acic={dataProvider:10};(function(){var e=document.createElement("script");e.type="text/javascript";e.async=true;e.src="https://www.acint.net/aci.js";var t=document.getElementsByTagName("script")[0];t.parentNode.insertBefore(e,t)})() //--> </script><br> <br> </body> </html> </p><p>Code der Datei „autor.html“:</p><p>Dies ist das Ergebnis, das ich erhalten habe:</p> <p>Lassen Sie uns die „Frame“-Attribute verwenden und das manuelle Strecken von Frames deaktivieren und das Scrollen in der Datei „index.html“ entfernen.</p><p> <frameset rows="15%,*,15%"> <frame src="top.html" scrolling ="no" noresize> <frameset cols="25%,75%"> <frame src="menu.html"scrolling ="no" noresize> <frame src="content.html" name="main"scrolling ="no" noresize> </frameset> <frame src="footer.html" noresize> </frameset> </p><p><b>○ Was tun, wenn Frames vom Browser nicht unterstützt werden? <br></b><br>Sie können dem Benutzer eine Meldung anzeigen, dass sein Browser keine Frames unterstützt. Fügen Sie dazu das Tag ein <noframes>innerhalb der Struktur <frameset> :</p><p> <frameset rows="15%,*,15%"> <noframes>

○ Schwimmender Rahmen

Wenn Sie ein Iframe-Fenster direkt in eine Seite einfügen müssen, die keine Frame-Struktur hat, gibt es dafür einen „iframe“-Tag.

* „iframe“-Tag-Attribute

  • src – Pfad zur zu öffnenden Seite
  • width – Breite des schwebenden Rahmens
  • Höhe – schwebende Rahmenhöhe
  • Scrollen - Bildlaufleiste
    - nein - niemals die Bildlaufleiste anzeigen
    - ja - immer anzeigen
    - automatisch - bei Bedarf anzeigen
  • align – schwebende Rahmenausrichtung
    - links Links
    - richtig – rechts
    - oben – höher
    - unten – unten
  • Frameborder – Rahmen um den schwebenden Rahmen
    - 1 - Schalten Sie den Rahmen ein
    - 0 - Rahmen ausschalten

So sieht das „iframe“-Tag mit Attributen aus:

Wenn Ihr Browser keine Frames unterstützt, können Sie den Text „ HOPPLA! Ihr Browser unterstützt keine Frames. » zwischen Tags .
Es wird so aussehen:

Fügen wir beispielsweise einen Iframe zur Datei „content.html“ hinzu:

Hauptseite

Hauptseite

Seiteninhalt – „Homepage (Inhalt.! Ihr Browser unterstützt keine Frames.

Vorherigen Post
Nächster Eintrag



 


Lesen:



Bewertung der besten kabellosen Kopfhörer

Bewertung der besten kabellosen Kopfhörer

Ist es möglich, universelle Ohren günstig zu kaufen? 3.000 Rubel – kann man für so viel Geld hochwertige Kopfhörer kaufen? Wie sich herausstellte, ja. Und Rede...

Die Hauptkamera eines Mobilgeräts befindet sich meist auf der Rückseite des Gehäuses und dient zum Aufnehmen von Fotos und Videos

Die Hauptkamera eines Mobilgeräts befindet sich meist auf der Rückseite des Gehäuses und dient zum Aufnehmen von Fotos und Videos

Eine aktualisierte Version des Tablets mit verbesserten Eigenschaften und hoher Autonomie. Acer-Smartphones werden selten besucht...

So wechseln Sie zu einem anderen Betreiber und behalten dabei Ihre Nummer

So wechseln Sie zu einem anderen Betreiber und behalten dabei Ihre Nummer

Das Gesetz zur Beibehaltung einer Telefonnummer beim Wechsel eines Teilnehmers zu einem anderen Mobilfunkanbieter ist in Russland am 1. Dezember in Kraft getreten. Es stellte sich jedoch heraus, dass...

Bewertung eines Phablets, teuer, aber sehr kompetent

Bewertung eines Phablets, teuer, aber sehr kompetent

Bewertung eines Phablets, teuer, aber sehr kompetent 20.03.2015 Ich bin der einzige Schuhmacher der Welt ohne Stiefel, ein Smartphone-Rezensent ohne eigenes Smartphone....

Feed-Bild RSS