Ramki cz.2


Nasz przykład zawiera następny znacznik <frame />, który określa dokładniej konkretną ramkę i przypisuje do niej nazwę oraz dokument wyświetlany domyślnie wewnątrz. Służą do tego atrybuty name oraz src. Poza tym znajduje się tu jeszcze atrybut scrolling, odpowiedzialny za wyświetlanie suwaków, pozwalających na przewijanie dokumentu znajdującego się wewnątrz ramki. Może on przybrać następujące wartości: auto — wówczas suwaki będą pokazywane automatycznie, jeśli okażą się potrzebne (gdy dokument przypisany do danej ramki będzie za duży), no — wtedy suwaki nigdy nie zostaną pokazane, oraz yes — wymuszający pokazywanie suwaków niezależnie od tego, czy są potrzebne, czy nie. Ostatnim atrybutem znacznika <frame /> jest noresize, wymuszający na przeglądarce zablokowanie możliwości zmiany wielkości okien, które domyślnie mają taką możliwość.

Podane przykłady pokazują, że możemy dzielić okno przeglądarki na kolumny (atrybut col s) bądź wiersze (atrybut rows), ale nic nie stoi na przeszkodzie, by na naszej stronie wiersze i kolumny połączyć. Do tego celu musimy użyć dobrze znanego zagnieżdżania. Oto przykład:

<?xml version=,,1.0“ encoding=“IS0-8859-2″?>
<!D0CTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Frameset//EN” „http://www.w3.org/TR/xhtmll/DTD/xhtmll-frameset.dtd”>
<html xmlns=”http://www.w3.org/1999/xhtml” xml:lang=”pl”>
<head>
<meta http-equiv=”content-type” content=”text/html;charset=IS0-8859-2″ /> <title>Przykład witryny z ramkami</title>
<link rel=“Stylesheet” href=”style.css“ type=“text/css” />
</head>
<frameset rovs=”100,*”>
<frame name-“gora” src=”gora.htm” />
<frameset cols=”35%,*”>
<frame nome=”lewa” src-„lena.htm” />
<frame name-„prawa” src=”praw.htm” />
</frameset>
</frameset>
</html>

tmpa7ef-1Prawda, że proste?

Skoro wiesz, jak dzielić okno na odpowiednią ilość ramek, pora poznać formę adresowania dokumentów wewnątrz ramek. Chodzi o to, że hiperłącza w formie, jaką poznaliśmy nieco wcześniej, nie zadziałają poprawnie na stronie zbudowanej w oparciu o ramki. Efekt będzie taki, że przy wywołaniu hiperłącza strona, do której się ono odnosi, zostanie wyświetlona w tym samym oknie, w którym znajdowało się hiperłącze. By tego uniknąć, musisz określić, w którym oknie wywoływany dokument ma zostać wyświetlony — i tu z pomocą przychodzą nam nazwy ramek, definiowane wcześniej.

Przeanalizujmy hipotetyczny przykład oparty na powyższej definicji ramek. Zdefiniowaliśmy 3 ramki na stronie i nadaliśmy im nazwy: Gora, Lewa, Prawa. Dokumenty w nich wyświetlane mają podobne nazwy. Dokument lewa.html zawiera definicje następujących odsyłaczy:

<a href=”info1.html „>Informacje 1</a>
<a href=”info2.htmr’>Informacje 2</a>

Tymczasem my chcemy, by po wybraniu dowolnego z tych odsyłaczy odpowiednia strona została pokazana w ramce o nazwie Prawa. Aby to osiągnąć, nasz odnośnik w pliku lewa.html musimy wzbogacić o atrybut target=”nazwa ramki docelowej „. W naszym przypadku będzie to wyglądało tak:

<a href=”info1.html” target=”prawa”>Informacje 1</a>
<a href=”info2.html” target=”prawa”>Infonnacje 2</a>

Atrybut target zawiera dodatkowo cztery zdefiniowane wartości. Są to:

■    target=”_blank”,
■    target=”_self”,
■    target=”_parent”,
■    target=”_top”.

Pierwsza wartość spowoduje otwarcie nowego okna przeglądarki i wyświetlenie w nim żądanego dokumentu. Kolejna, „_self”, jest domyślna i spowoduje, że dokument zostanie wyświetlony w ramce, z której chcieliśmy dokonać przekierowania. Wartość trzecia dokona zamiany dokumentu nadrzędnego dla bieżącego dokumentu. Ostatnia natomiast spowoduje ponowne wczytanie zawartości okna i wyświetlenie nowego dokumentu, czyli dokona zmiany na miejscu dokumentu pierwszego w hierarchii skoków.

Ostatnia wartość jest szczególnie przydatna, jeśli z dokumentu zawierającego zdefiniowane ramki ładujemy inny dokument, również zawierający ramki, np. jeśli chcemy jedynie za pomocą HTML ponownie wczytać zawartość dwóch ramek.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *