Gazeta Internetowa

 

HTML - częsć czwarta

Znaczniki dokumentu HTML

Znając pobieżnie część problemów związanych z HTML możemy bardziej gruntownie poznać znaczniki organizacyjne.
Najważniejszym znacznikiem jest oczywiście <html>. Znacznik nie posiada parametrów, jest parzysty. Otwiera i zamyka dokument HTML. Stanowi jakby najbardziej zewnętrzne nawiasy obejmujące całość treści dokumentu. Występuje tylko raz w dokumencie i jest jedynym znacznikiem obowiązkowym (chociaż sprawdzić można, bez tego znacznika dokumenty są prawidłowo rozpoznawane i interpretowane przez większość przeglądarek.

Jedynym znacznikiem, który może wystąpić poza "nawiasami" <html> może być tylko <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">. Jest to znacznik wskazujący na wersję języka HTML. Znacznik ten umieszcza się przed <html> w pierwszym wierszu dokumentu. Ze względu na szybki rozwój języka ostatnio staje się modny na stronach WWW. Jak dotychczas przekazuję opis HTML zgodny ze standardem wersji 3, która jest rozpoznawana praktycznie przez wszystkie przeglądarki znacznik ten nie jest wymagany.

Wewnątrz klamer <html> mogą znajdować się następujące strefy:

  • identyfikacyjna - ograniczona znacznikami <head>
  • właściwe dane - ograniczone znacznikami <body> lub <frameset> jeżeli zawartość składa się z zewnętrznych dokumentów ułożonych w ramkach, których może być kilka. Ponieważ ramki tworzą swoistą filozofię i są bardzo mocnym narzędziem do tworzenia stron większy ich opis zostanie zamieszczony w oddzielnej części.

Wewnątrz znaczników <head> mogą znajdować się następujące znaczniki:

  • <title> - tekst, który znajduje się wewnątrz znaczników <title> wyświetlany jest w górnym pasku okna przeglądarki.
  • <meta> - to grupa znaczników informacyjnych o różnym przeznaczeniu. Oprócz poznanego wcześniej wyboru strony kodowej, może być jeszcze stosowany w następujących sytuacjach:
    • <META NAME="Generator" CONTENT="nazwa programu">, <META NAME="Author" CONTENT="Jan Kowalski"> - tego typu teksty wpisują edytory HTML - ogólnie NAME to nazwa zmiennej, a CONTENT to jej wartość.
    • <META HTTP-EQUIV="refresh" CONTENT=5 > - powoduje ponowne załadowanie dokumentu po upływie 5 sekund
    • <META HTTP-EQUIV="refresh" CONTENT=5 url="abc.htm" > - powoduje załadowanie dokumentu abc.htm po upływie 5 sekund
    • <META NAME="keywords" content ="film kino kultura seans"> nazwa zmiennej keywords powoduje, że przeszukiwarki użyją wyrazów oznaczonych w content jako słów kluczowych do przeszukiwania. Taka forma znacznika <META> jest godna zapamiętania jeżeli chcemy ażeby nasz dokument był indeksowany przez przeglądarki
  • <base> oznacza domyślny katalog, względem którego działa dokument. Znaczenia nabiera, jeżeli dokument przesuniemy w inne miejsce. W takim przypadku nie traci referencji jeżeli odwołania w dokumencie adresujemy względnie. Jeżeli przykładowo w dokumencie zastosowano <base href="http://www.serwer/sciezka"> wtedy jeżeli w dokumencie będzie odwołanie do x2.htm, zostanie ściągnięty plik serwer/sciezka/x2.htm (a nie plik z bieżącego katalogu).
  • <isindex> takiego znacznika w praktyce nie spotkałem, ale istnieje w książkach. Podczas ładowania dokumentu zadane zostaje pytanie o słowo kluczowe do szukania, na który powinien zareagować skrypt CGI umieszczony na serwerze. Wszystkie znane mi opisy tego znacznika są identyczne, widocznie pochodzą z jednego źródła.
  • <nextid> jest to znacznik dla edytora html informujący o kolejnym dokumencie z serii.
W praktyce spotyka się tylko pierwsze dwa znaczniki.

W części <head> mogą jeszcze pojawić się znaczniki, które także są także w części <body> dokumentu, a mianowicie:

  • <!---- komentarz --->
  • <comment>komentarz</comment>
  • <script>
Znacznik <body> ogranicza obustronnie treść dokumentu. Jest parzysty i może być użyty tylko raz. Znacznik może mieć następujące parametry:
  • bgcolor domyślny kolor tła
  • text domyślny kolor tekstu
  • alink domyślny kolor aktywnych linków
  • link domyślny kolor linków
  • vlink domyślny kolor odwiedzonych już linków
  • background plik graficzny będący tłem dokumentu
  • bgproperties właściwości tła - tu można wpisać bgproperties=fixed aby tło nie było przewijane
  • leftmargin ustawienie lewego marginesu
  • topmargin ustawienie górnego marginesu
W szczególności znacznik może wyglądać następująco:
<body text="white" bgcolor="black" alink="red"
     link="gold" vlink="yellow" background="tlo.gif" 
     bgproperties=fixed topmargin=0 leftmargin=0>
Znacznik <body> może zawierać jeszcze określenie reakcji na zdarzenia związane z dokumentem. Podczas takiego zdarzenia można uaktywnić skrypt, tak więc argumentem powinny być instrukcje napisane w domyślnym języku skryptu. Jeżeli takiego nie zdefiniowano jest to Java. Zdarzenia mogą być następujące:
  • blur - dany element przestaje być aktywnym
  • click - stuknięto myszą w dany element
  • change - zawartość elementu zmieniła się
  • focus - element stał się aktywny
  • load - element został załadowany
  • mouseover - ruszono myszą ponad elementem
  • select - element został wybrany
  • submit - wciśnięto przycisk submit
  • unload - element jest rozładowywany
Różne ze zdarzeń stosuje się do różnych elementów. Umieszczenie skryptu obsługi zdarzenia przyporządkowywuje go do dokumentu, tu najwłaściwsze są load i unload . Pozostałe bardziej odnoszą się do rysunków i pól do wprowadzania danych. Do problemu tego wrócę przy rozszerzeniu informacji o skryptach. Tu tylko pokażę przykład:
  <html>
    <head>
      <title>Test</title>
    </head>
    <body onload="alert('ladowanie')"
      onunload="alert('rozladowanie')">
    </body>
  </html>
Opisując w HTML zdarzenia przed nazwą dodajemy przedrostek on.. oznaczający podczas, a wiec:
  • onload="alert('ladowanie')" podczas ładowania wywoływana jest funkcja języka Java alert() . Parametrem funkcji jest tekst 'ladowanie'. Funkcja alert wyświetla standardowy windowsowy dialog z napisem, którego treścią jest parametr funkcji. Jeżeli więc dokument będzie ładowany na ekranie pojawi się taki właśnie komunikat
  • onunload="alert('rozladowanie')" podczas rozładowania (zamknięcie okna przeglądarki, ładowanie nowego dokumentu) wywoływana jest funkcja języka Java alert() z parametrem 'rozladowanie'.
Jeżeli akcja, która ma być wykonywana jest dłuższa niż tylko jedna instrukcja, wtedy zazwyczaj definiuje się ją jako funkcję i umieszcza w części <head>, natomiast pomiędzy znacznikami <body> umieszcza się wywołanie funkcji.

Z dokumentem jako całością związany jest jeszcze nieparzysty znacznik <bgsound>. Umieszczenie jego powoduje odtworzenie dźwięku umieszczonego w pliku określonym w parametrach znacznika.

  <BGSOUND SRC="dzwiek.wav" LOOP=5>
Umieszczając dźwięk w dokumentach html należy pamiętać o następujących rzeczach:
  • W zależności od rodzaju pliku, dźwięk może być na poszczególnych komputerach odtworzony lub nie. jedynym stuprocentowym standardem w środowisku Windows jest .wav. Używanie innych plików (np. mp3) wiąże się z ryzykiem, że oglądający dokument może mieć nie zainstalowaną obsługę danego standardu.
  • Należy też pamiętać, że pliku dźwiękowe są długie w stosunku do samych dokumentów i oglądający zniecierpliwiony czekaniem może po prostu zmienić stronę na inną.
  • Większość przeglądarek podczas instalacji domyślnie pozostawia ustawienia na nie odtwarzaj dźwięku, a rzadko kto ustawienia zmienia.
  • Podając nazwę pliku należy pamiętać o tym, że oglądający może być pod innym systemem operacyjnym, inny system może być na serwerze i strona działająca może przestać działać po przeniesieniu na serwer. Szczegółowo opiszę to przy linkach. Uwaga ta odnosi się do wszystkich znaczników odnoszących się do plików, a więc np. do opisanych wcześniej <body background="..."> i <base="...">

Krzysztof Grzegorz Stoler

[spis treści]


Podobała Ci się ta Gazeta ? Powiedz o niej swoim znajomym ! www.gazeta.sky.pl