Odsylacze (linki) mapy odsylaczy i zakotwiczenia\374
Transkrypt
Odsylacze (linki) mapy odsylaczy i zakotwiczenia\374
KURS HTML 11. ODSYŁACZE (LINKI), MAPY ODSYŁACZY I ZAKOTWICZENIA ŚcieŜki dostępu juŜ znamy. Co to za witryna, która nie ma Ŝadnych linków? To taka witryna, której treść składa się z jednej strony (tzn. albo bardzo mało treści, albo godzina wczytywania) i nie zna Ŝadnych stron internetowych, które warto uwzględnić. Oczywiście na jednej witrynie (witryna to zbiór wszystkich stron danego serwisu) jest kilkaset, jak nie kilka tysięcy linków (oczywiście licząc, Ŝe ten sam link jest liczony na kaŜdej stronie). Podstawowe informacje dotyczące odsyłczy Odsyłacz tworzy się uŜywając znacznika <A> obowiązkowo z atrybutem HREF, którego wartość to ścieŜka do danego dokumentu. ŚcieŜka moŜe prowadzić do: • podstrony danego serwisu • pliku do ściągnięcia, lub pokazania • konta e-mail wraz z tematem wiadomości • strony/podstrony innego serewisu (z protokołem) • zakotwiczenia na danej stronie • zakotwiczenia na innej stronie Link domyślnie są koloru niebieskiego, po wciśnięciu i najechaniu nie zmieniają koloru, ale są ciemniejsze jeŜeli strona, do której prowadzi link została zapisana w historii naszej przeglądarki. Znacznik <A> jest opcjonalny – pomiędzy nim umieszczamy to, na co klikamy myszką, aby zobaczyć informację, do której prowadzi link. Przykładowym linkiem do podstrony naszego serwisu moŜe być: <A HREF="od_autora.htm">Od autora</A> W celu otwarcia jakiegoś pliku (ewentualnie ściągnięcia) konstrukcja linku jest taka sama, ale to przeglądarka mając pod uwagę rozszerzenie sama decyduje co zrobić z tym dokumentem – moŜe go wyświetlić, odsłuchać, pokazać i ściągnąć. JeŜeli chcemy, aby automatycznie została ściągnięta grafika po kliknięciu na link najlepiej umieścić plik w archiwum programu kompresującego. www.INFORMATYKA.cba.pl KURS HTML Mailto: - czyli list do autora JeŜeli internauta korzysta z programu pocztowego wpisując atrybutowi HREF wartość jaką jest e-mail autora strony poprzedzoną wyraŜeniem mail:, to po kliknięciu na taki link otworzy się program pocztowy z juŜ wpisanym adresem np.: <A HREF="mailto:login @witryna.pl"> login @witryna.pl </A> Mało sam e-mail, moŜna tak zrobić link, aby temat był takŜe automatycznie wpisany (przydatne, jeŜeli chcemy łatwo rozpoznać, jakie maile zostały wysłane przy pomocy witryny, a jakie standardową metodą). Konstrukcja odsyłacza do poczty elektronicznej wraz z tematem to: <A HREF="mailto:login @witryna.pl?subject=Temat maila"> login @witryna.pl </A> Link do strony/podstrony innego serwisu jest chyba najprostszy. Kopiujemy po prostu link z przeglądarki odwiedzając daną stronę, moŜe w niej być znak zapytania, znak & (chociaŜ zaleca się zmienić go uprzednio na &), hashe, slashe i inne znaki np.: <A HREF="http:/ /witryna.pl/dingo.php#koniec">prehistoria</A> Zakotwiczenia czyli nawigacja po dokumencie Bardzo waŜnym elementem na witrynie są zakotwiczenia. Są to specjalnie zrobione linki, które po kliknięciu odwołują się do konkretnego miejsca na jakiejś stronie przewijając go. Aby stworzyć zakotwiczenie musimy najpierw wymyślić dla niej jakąś nazwę i w miejscu kotwicy (czyli w miejscu, które po kliknięciu na link odwołujący się do danej kotwicy pokaŜe się w lewym górnym rogu), a następnie zapisać ją w atrybucie NAME znacznika <A>, pomiędzy którym nic nie umieszczamy np.: <A NAME="kotwica"></A> Następnie tworzymy odsyłacz przypominający wszystkie inne jakie stworzyliśmy do tej pory z tym, Ŝe, jeŜeli zakotwiczenie jest w tym samym dokumencie umieszczamy je po prostu w atrybucie HREF poprzedzając hashem (tak jak w kolorach szesnastkowych – #) np.: <A HREF="#kotwica">Zakotwiczanie statków</A> JeŜeli odwołujemy się do kotwicy znajdującej się na innej stronie, znak hash i nazwę kotwicy umieszczamy na końcu adresu. Zaprezentuję to na dwóch przykładach: <A HREF="od_autora.htm#kotwica">Kotwica autora</A> www.INFORMATYKA.cba.pl KURS HTML <A HREF="http:/ /witryna.pl/titanic.php#kotwica">Zakotwiczanie inaczej</A> Gdzie otwieramy link, czyli parametr TARGET Mam nadzieję, Ŝe jest to juŜ w jakimś stopniu opanowane. Teraz przyjrzyjmy się czemuś łatwiejszemu – atrybutowi TARGET. Odpowiada on za miejsce otworzenia nowego dokumentu. Wartości godne opisania to: • _blank – otwarcie nowego okienka przeglądarki • _top – całkowite zamienienie okna przeglądarki (ujrzymy zmianę w ramkach) • nazwa - otwarcie w ramce o danej nazwie Proszę nie martwić się, Ŝe nic nie wiemy o ramkach, jakiekolwiek rozwiązania tej dolegliwości poznamy w odpowiednim czasie. JeŜeli atrybut TARGET coś zawiera to przewaŜnie jest to _blank. Najczęściej uŜywa się tego do otwarcia strony innego serwisu internetowego. Przykładowa konstrukcja linku z tą wartością to: <A HREF="http:/ /witryna.pl" TARGET="_blank">witryna.pl</A> Informacje o linku - atrybut TITLE Jeszcze jest jeden atrybut linków, który warto poruszyć. Mam na myśli tekstowa informację, która działa na wielu innych znacznikach, ale dla linków jest ona najpopularniejsza. Tekstowa informacja pojawi się po chwili, kiedy najedziemy i nie będziemy poruszać kursorem myszy nad określonym elementem. Jest to atrybut TITLE, którego wartość to dana informacja np.: <A HREF="http:/ /witryna.pl" TITLE="Info o Tytanicu, prehistorii itp.">witryna.pl</A> Manipulowanie linkami za pomocą CSS Linki tekstowe robić juŜ umiemy, ale na pewno nie podobają się nam. Ich kolor na stronach o ciemnym tle popsuje całą nawigację więc trzeba coś z tym zrobić. Jak zwykle posłuŜymy się językiem CSS. Czy pamiętacie jeszcze róŜnice pomiędzy selektorem akapitu, a pierwszej litery akapitu? JeŜeli nie, to oby dwa zaczynają się tak samo, a bardziej szczegółowe informacje są po dwukropku. Tak samo jest w linkach. Są cztery selektory linków: www.INFORMATYKA.cba.pl KURS HTML • a:link - nie odwiedzony (nie zapisany w historii przeglądarki) • a:visited - odwiedzony (zapisany w historii przeglądarki) • a:hover - link najechany kursorem myszy • a:active - link kliknięty (efekt moŜna lepiej zobaczyć przytrzymując klawisz myszy) Aktywny link takŜe na niektórych przeglądarkach będzie widoczny, jeŜeli otworzył nam stronę w nowym oknie, a do strony macierzystej wróciliśmy np. przez pasek zadań, nie klikając uprzednio na samą zawartość strony. Dla potrzeb własnych zalecam uŜywanie tylko pozostałych trzech. Link moŜna dekorować prawie tak samo jak sam tekst. Według mnie najlepiej ustawić jest czcionkę, kolor, krój i, czy ma być widoczne podświetlenie. Pamiętajmy, Ŝe aby przetestować poprawnie link nie odwiedzony i odwiedzony musimy najpierw umieścić ścieŜkę do pliku, którego nie odwiedziliśmy (wartość atrybutu HREF moŜe być np. http:/ /a_a_a_a_a_a.pl pomysłów jest nieskończoność), a następnie do pliku, którego odwiedziliśmy, czyli np. ścieŜkę do pliku z danym linkiem. Pamiętajmy, Ŝe hiperłącza powinny odróŜniać się od tekstu. Mogą być zupełnie innego koloru, dodatkiem moŜe być np. podkreślenie. Nie ma nic bardziej Ŝenującego niŜ kliknięcie na link, który tak naprawdę nim nie jest... PoniŜej bardzo porządny przykład linków, które nie powinny zmylić internauty: www.INFORMATYKA.cba.pl KURS HTML <STYLE TYPE="text/css"> a { font-size: 11px; font-family: verdana, arial } a:link { color: #006699; text-decoration: none } a:visited { color: #009699; text-decoration: none } a:hover { color: #AA9699; text-decoration: underline } </STYLE> <A HREF="index.htm">link odwiedzony</A><BR> <A HREF="http:/ /a_a_a.pl">link nieodwiedzony</A> Grafika jako link Link tekstowy to nie wszystko. Co powiecie na link reagujący na kliknięcie na grafikę? To jest prostsze niŜ myślisz – kod grafiki, który poznałeś w poprzedniej lekcji umieszczasz wewnątrz znaczników <A> z atrybutem (do <IMG>) BORDER o wartości 0, aby pozbyć się zbędnego brzydkiego obramowania. Pamiętajmy, Ŝe atrybuty ALT i TITLE to dwie odrębne rzeczy mylone przez programistów przeglądarek. Dla przypomnienia ALT to wiadomość alternatywna www.INFORMATYKA.cba.pl KURS HTML wyświetlająca się zamiast obrazka, a TITLE to wiadomość pojawiająca się po najechaniu, którą moŜna przypisać większości znaczników – nawet akapitowi! Przykład graficznego odsyłacza, z wykorzystaniem obu informacji: <A HREF="http:/ /witryna.pl" TITLE="Serwis o adresie witryna.pl"> <IMG SRC="reklama/witryna.gif" ALT="obrazek byłby bardzo ładny" WIDTH="100" HEIGHT="50"> </A> Mapy odsyłaczy na obrazku Często witryna składa się z jakiegoś duŜego obrazka, z pozoru będącego jednym plikiem (naprawdę za pomocą tabelek jest połączonych z licznych prostokącików w całość), który w róŜnych jego częściach prowadzi do róŜnych podstron. Rozwiązanie to ma jedną zaletę i dwie wady. Zaletą jest to, iŜ pojedyncze prostokąty, ewentualnie kwadraty mogą być róŜnych formatów, tak więc na niektórych prostokątach moŜna oszczędzić miejsca i szybkości wczytywania strony. Wadą jest to, Ŝe link nie moŜe być innego kształtu niŜ prostokąt, tak więc pole, na które musimy kliknąć, aby zostać przeniesieni głębiej jest w kątach prostych. Wadą jest to... Ŝe obraz złoŜony jest z wielu prostokątów. Często dwa razy większy rysunek jest mniejszy objętością niŜ taki sam obrazek podzielony na dwie części. Dlaczego tak jest? Bo programy często do zapisanych projektów dodają ukryte informacje o nich samych, ale to są naprawdę malutkie informacje... ale są... Najlepszym rozwiązaniem jest stworzyć mapę odsyłaczy, czyli tzw. zespół aktywnych fragmentów na jednym pliku graficznym. Co prawda rozwiązanie to jest czasochłonne, ale późniejszy efekt jest doskonały. Na początku musimy przygotować jakiś obrazek, na którym będziemy testować to, co uda nam się sklecić. Uwaga: to co zaraz się dowiemy nie umieszczamy wcale pomiędzy znacznikami <A>! Na początku musimy uŜyć atrybutu USEMAP do znacznika <IMG>, co oznacza, Ŝe dokument uŜywa mapy o takiej nazwie, jaka jest umieszczona w wartości tego atrybutu i tak samo jak w przypadku zakotwiczeń jest ona poprzedzona hashem. Pamiętajmy, aby w kodzie obrazka były informacje o wymiarach i, Ŝe jest to własne mapa np.: <IMG SRC="atlas.gif" WIDTH="120" HEIGHT="85" ALT="mapa odsyłaczy" USEMAP="#mapa"> www.INFORMATYKA.cba.pl KURS HTML Następnie pod znacznikiem <IMG> umieszczamy opcjonalny znacznik <MAP> wraz z atrybutem (tak samo jak w zakotwiczeniach) NAME o wartości nazwy mapy, oczywiście bez znaku hash - #. Wewnątrz znacznika <MAP> umieszcza się znaczniki <AREA> (ang. strefa), które to określają połoŜenie odsyłaczy na obrazku. KaŜdy inny aktywny obszar na obrazku to nowy znacznik <AREA>. Znacznik ten składa się z kilku atrybutów. Pierwszym jakim poznamy jest SHAPE (ang. kształt) i określa kształt danej mapy. Jego wartości to: • rect - (ang. rectengular – prostokąt) prostokątny obszar aktywny • circle - (ang. okrąg) okrągły obszar aktywny • polygon - (ang. wielokąt) obszar aktywny o nieregularnym kształcie. Kolejnym waŜnym elementem jest COORDS, który przechowuje wszystkie punkty. Jego wartości to liczby oddzielane od siebie przecinkami zawierające informacje o miejscach mapy. Oto schemat, jak powinno wypełniać się ten atrybut [X (X1, X2, X3) - poziome połoŜenie piksela, Y (Y1, Y2, Y3) - pionowe połoŜenie piksela, R - długość promienia w pikselach]: Dla SHAPE="rect" - X1,Y1,X2,Y2 – X1 - lewy górny wierzchołek licząc od lewej krawędzi, Y1 - lewy górny wierzchołek licząc od górnej krawędzi, X2 - prawy dol ny wierzchołek licząc od lewej krawędzi, Y2 - prawy dolny wierzchołek licząc od lewej krawędzi. Dla SHAPE="circle" - X,Y,R - X - środek okręgu licząc od lewej krawędzi, Y środek okręgu licząc od górnej krawędzi, R - długość promienia Dla SHAPE="circle" X1,Y1,X2,Y2,X3,Y3... - kaŜde dwie liczby prezentują połoŜenie kolejnych pikseli, które są z sobą łączone i tak powstaje kształt mapy (pierwszy piksel z ostatnim jest automatycznie łączony). Inne waŜne atrybuty znacznika <AREA> to: • HREF - adres odsyłacza • TITLE - tekst, który pojawi się po najechaniu kursorem myszy nad daną danym obszarem JeŜeli jeszcze dokładnie nie wiemy jakie wartości wstawiać w atrybut COORDS to powiem, Ŝe bardzo wiele programów graficznych, po najechaniu pędzelkiem, czy innym wskaźnikiem na dany punkt podają jego współrzędne (choćby MS Paint). Oto przykład mapy odsyłaczy + jej kod, z wykorzystaniem trzech pól, które prezentowane są na rysunku (punkty www.INFORMATYKA.cba.pl KURS HTML 2 i 3 nie są potrzebne, ale zostały stworzone do upewnienia się, czy pozostałe dwa boki prostokąta mają odpowiednie wartości): <IMG WIDTH="310" HEIGHT="160" SRC="mapa.gif" USEMAP="#mapa" BORDER="0" TITLE="pole nieaktywne" ALT="mapa odsyłaczy"> <MAP NAME="mapa"> <AREA SHAPE="rect" BORDER COORDS="7,7,42,40" HREF="http:// prostokat.pl" TITLE="prostokąt"> <AREA SHAPE="circle" COORDS="31,73,25" HREF="http:/ /okrag.pl" TITLE="okrąg"> <AREA SHAPE="polygon" COORDS="49,7,49,42,66,59,66,82,50,98,193,99,193,7" HREF="http:/ /wielokat.pl" TITLE="wielokąt"> </MAP> www.INFORMATYKA.cba.pl