- Dla dokumentów HTML wyróŝniamy 2 rodzaje DTD: Transitional (przejściowa) Frameset (ramkowa) Język XHTML i CSS. 28 lutego 2010 Strona 1



Podobne dokumenty
Źródła. cript/1.5/reference/ Ruby on Rails: AJAX: ssays/archives/

Podstawy (X)HTML i CSS

HTML podstawowe polecenia

Wykład 1: HTML (XHTML) Michał Drabik

Dzięki arkuszom zewnętrznym uzyskujemy centralne sterowanie wyglądem serwisu. Zewnętrzny arkusz stylów to plik tekstowy z rozszerzeniem css.

Język (X)HTML. Podstawowe znaczniki i parametry. dr Konrad Dominas / UAM

Tworzenie stron internetowych w kodzie HTML Cz 7

Ćwiczenie 9 - CSS i wstawianie CSS

HTML (HyperText Markup Language) hipertekstowy język znaczników

Kaskadowe arkusze stylów (CSS)

Zaawansowana Pracownia Komputerowa - Ćwiczenia. Krzysztof Miernik

Young Programmer: HTML+PHP. Dr inż. Małgorzata Janik, Zajęcia #2

Tworzenie Stron Internetowych. odcinek 7

Tworzenie Stron Internetowych. odcinek 5

Wprowadzenie do HTML, CSS, JavaScript, PHP. Kurs

Programowanie WEB PODSTAWY HTML

Elementarz HTML i CSS

Kurs HTML 4.01 TI 312[01]

XHTML - Extensible Hypertext Markup Language, czyli Rozszerzalny Hipertekstowy Język Oznaczania.

Cel ogólny lekcji: Wprowadzenie do tworzenia stron WWW w języku HTML. Wprowadzenie pojęć: strona WWW, język HTML, dokument HTML.

HTML (HyperText Markup Language)

Struktura języka HTML ZNACZNIKI. Oto bardzo prosta strona WWW wyświetlona w przeglądarce: A tak wygląda kod źródłowy takiej strony:

Wykład 1 Wprowadzenie do HTML

p { color: yellow; font-weight:bold; }

XHTML Budowa strony WWW

Strony WWW - podstawy języka HTML

Zdefiniowane style mogą określać układ treści na stronie i sposób jej formatowania np. kolor czcionki, pogrubienia, tło tabel, rysunków itp.

Programowanie internetowe

ABC języka HTML i XHTML / Maria Sokół. wyd. 2. Gliwice, cop Spis treści

Tworzenie Stron Internetowych. odcinek 6

Oczywiście występują także znaczniki, bez ich odpowiednika kończącego, np. <BR>

używane skróty: HTTP - protokół do transferu tekstu, hipertekstu, zbiorów binarnych URL - jednolity lokalizator zasobów

Danuta ROZPŁOCH-NOWAKOWSKA Strona Moduł 4. Przykład 1. Przykład 2. HTML 4.01 Transitional).

Wykład 1 TINT. Wprowadzenie do XHTML. Zofia Kruczkiewicz

Po zakończeniu rozważań na temat World Wide Web, poznaniu zasad organizacji witryn WWW, przeczytaniu kilkudziesięciu stron i poznaniu wielu nowych

CSS. Kaskadowe Arkusze Stylów

<html> </html> <body> </body> <p> [</p>] <br> <html> <head> </head> <body> </body> </html> Materiały dydaktyczne 1/5

za pomocą: definiujemy:

STRONY INTERNETOWE mgr inż. Adrian Zapała

Podstawowe znaczniki języka HTML.

Kaskadowość stylów określa pierwszeństwo w oddziaływaniu na te same elementy strony różnych stylów.

Witryny i aplikacje internetowe

Ćwiczenie 10 - Selektory

Cel ogólny lekcji: Wprowadzenie dodatkowych znaczników. Wprowadzenie odsyłacza, tabeli, listy numerowanej i wypunktowanej.

Tworzenie stron internetowych w kodzie HTML Cz 5

Za pomocą atrybutu ROWS moŝemy dokonać podziału ekranu w poziomie. Odpowiedni kod powinien wyglądać następująco:

rk HTML 4 a 5 różnice

Ćwiczenie 2 Tekst podstawowe znaczniki.

Dokument hipertekstowy

Przedmiot: Grafika komputerowa i projektowanie stron WWW

Tekst podstawowe znaczniki

Ćwiczenie 1 Deklarowanie metainformacji.

Programy dedykowane do edycji stron internetowych dzielą się na dwa rodzaje:

TWORZENIE STRON WWW. Zasady opisu stron w języku HTML:

Można też ściągnąć np. z:

Tworzenie Stron Internetowych. odcinek 6

I. Formatowanie tekstu i wygląd strony

Narzędzia informatyczne w językoznawstwie

PROGRAMOWANIE. WNPiD UAM, Programowanie, inż. Piotr Jabłoński

Można też ściągnąć np. z:

O stronach www, html itp..

HTML jak zrobić prostą stronę www

Hyper Text Markup Language

Podstawy tworzenia stron internetowych

Języki programowania wysokiego poziomu. HTML cz.1.

Jednostki miar stosowane w CSS

Podstawy HTML i styli CSS. selektor {właściwość1: wartość1; właściwość2: wartość2}

Blok dokumentu. <div> </div>

Wykład 2 TINT. XHTML tabele i ramki. Zofia Kruczkiewicz

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Kierunek: Automatyka i Robotyka Studia stacjonarne I stopnia: rok I, semestr II

2 Podstawy tworzenia stron internetowych

PROGRAMOWANIE. WNPiD UAM, Programowanie, inż. Piotr Jabłoński

Podstawy JavaScript ćwiczenia

zmiana koloru tła <body bgcolor = kolor > tło obrazkowe <body background= ścieżka dostępu do obrazka >

Systemy internetowe Wykład 2 CSS

Projekty z Technologii Informacyjnych

WYMAGANIA EDUKACYJNE. Witryny i Aplikacje Internetowe klasa I

Nazwa implementacji: CSS i box model. Autor: Opis implementacji: Poznajemy podstawy CSS oraz dowiadujemy się o rozmieszczaniu elementów na stronie.

CSS Kaskadowe Arkusze Stylów

Odsyłacze. Style nagłówkowe

Format HTML. Wybrane działy Informatyki Stosowanej. Definicja i przeznaczenie Struktura dokumentu Znaczniki Formularze i komponenty

Akademia Techniczno-Humanistyczna w Bielsku-Białej

LABORATORIUM 5 WSTĘP DO SIECI TELEINFORMATYCZNYCH WPROWADZENIE DO XML I XSLT

Uwaga: znaczniki <body> </body> nie powinny byd umieszczane na stronie zawierającej ramki, w ramach FRAMESET.

Technologie Informacyjne

Pierwsza strona internetowa

Języki programowania wysokiego poziomu WWW

Języki programowania wysokiego poziomu. CSS Wskazówki

Tworzenie Stron Internetowych. odcinek 5

EGZAMIN POTWIERDZAJĄCY KWALIFIKACJE W ZAWODZIE Rok 2016 CZĘŚĆ PRAKTYCZNA

Tworzenie stron internetowych w oparciu o język HTML

LABORATORIUM 2 WSTĘP DO SIECI TELEINFORMATYCZNYCH

WITRYNY I APLIKACJE INTERNETOWE

Wybrane znaczniki HTML

AUDYT DOSTĘPNOŚCI STRONY INTERNETOWEJ

Język HTML i podstawy CSS

Moduł IV Internet Tworzenie stron www

I. Dlaczego standardy kodowania mailingów są istotne?

Laboratorium 1: Szablon strony w HTML5

Edukacja na odległość

Transkrypt:

HTML HTML (Hyper Text Markup Language) jest implementacją języka SGML (Standard Generalized Markup Language). Język SGML słuŝy do tworzenia dokumentów, opisujących strukturę dokumentu. HTML jest językiem znaczników słuŝącym do: opisu struktury dokumentu formatowania tekstu łączenia grafiki, dźwięku, video itd. oddzielenia struktury dokumentów od prezentacji (stosuje się dwa typy plików: ze strukturą dokumentów i arkusze stylów, które pozwalają tę samą strukturę dokumentów prezentować na wiele sposobów). Metaznaczniki stanowią podstawę budowy dokumentu HTML i opisują strukturę dokumentu oraz format dokumentu. Standardy HTML HTML 2.0 HTML 3.2 (1996) HTML 4.0 (1997) HTML 4.01 (1999) - http://www.w3.org/tr/html401/ XHTML (na bazie XML i HTML) Budowa dokumentu HTML i XHTML składa się z dwóch głównych części: znacznika otwierającego i zamykającego head, oraz znacznika otwierającego i zamykającego body, natomiast całość jest zawarta w znaczniku html, nad którym jest umieszczony DTD (Document Type Definition - Definicja Typu Dokumentu), oraz w przypadku XHTML tzw. prolog. - Dla dokumentów HTML wyróŝniamy 2 rodzaje DTD: Transitional (przejściowa) <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/tr/html4/loose.dtd"> Frameset (ramkowa) <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/tr/html4/frameset.dtd"> 28 lutego 2010 Strona 1

- Dla dokumentów XHTML 1.0: Strict (ścisła) wyklucza wszelkie elementy prezentacyjne, które specyfikacja HTML 4 uznaje za schyłkowe (deprecated). Wersja Strict jest okrojonym HTML 4, przedkładającym strukturę nad prezentację. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-strict.dtd"> Transitional (przejściowa) dla dokumentów zawierających elementy i atrybuty HTML, łącznie ze schyłkowymi (prezentacyjne). <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd"> Frameset (ramkowa) dla strony zawierającej ramki. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-frameset.dtd"> - Dla dokumentu XHTML 1.1: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/tr/xhtml11/dtd/xhtml11.dtd"> 28 lutego 2010 Strona 2

Kiedy serwer wysyła dokument do oprogramowania uŝytkownika (np.: przeglądarki), to wysyła on równieŝ pewne informacje w polu Content- Type w nagłówku HTTP dotyczące formatu dokumentu. Informacje te są wyraŝone przy uŝyciu etykiety MIME type. Oto przykład nagłówka HTTP dla dokumentu HTML przy uŝyciu MIME type 'text/html'. Proszę zauwaŝyć, Ŝe informacja w Content-Type moŝe równieŝ wyrazić kodowanie znaków dokumentu. HTTP/1.1 200 OK Date: Wed, 05 Nov 2003 10:46:04 GMT Server: Apache/1.3.28 (Unix) PHP/4.2.3 Content-Location: CSS2-REC.en.html Vary: negotiate,accept-language,accept-charset TCN: choice P3P: policyref=http://www.w3.org/2001/05/p3p/p3p.xml Cache-Control: max-age=21600 Expires: Wed, 05 Nov 2003 16:46:04 GMT Last-Modified: Tue, 12 May 1998 22:18:49 GMT ETag: "3558cac9;36f99e2b" Accept-Ranges: bytes Content-Length: 10734 Connection: close Content-Type: text/html; charset=utf-8 Content-Language: en Serwer wysyła pliki HTML 4.01 z text/html jako MIME type. HTML jest aplikacją SGML. Jets to bardziej skomplikowane w przypadku XHTML 1.0, który jest oparty na XML. Wielu woli uŝywać XHTML z powodu korzyści jakie XML wnosi w edytowanie lub przetwarzanie dokumentów. Jednak w większości przeglądarek brakuje wsparcia dla plików XML, wiele plików XHTML 1.0 jest wysyłanych z text/html MIME type. W takim przypadku, aplikacje uŝytkownika traktują plik jako HTML. XHTML 1.0 moŝna równieŝ wysyłać jako XML, a XHTML 1.1 jest zawsze wysyłane jako XML. Aby wysłać XHTML jako XML naleŝy zastosować MIME types application/xhtml+xml, application/xml lub text/xml. W3C zaleca aby 28 lutego 2010 Strona 3

wysyłać XHTML jako XML stosując tylko pierwszy z typów MIME - mianowicie application/xhtml+xml. Fakt, Ŝe XHTML moŝe być wysyłany jako HTML lub XML, robi róŝnicę w sposobie w jakim informacja o kodowaniu jest deklarowana. <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd"> <html xml:lang="en" lang="en" xml ns="http://www.w3.org/1999/xhtml"> <head> Dokumenty XHTML Dokument XHTML jest dokumentem tekstowym, który zawiera znaki o ustalonym kodowaniu, składającym się z elementów (tagów/znaczników) pisanych małymi literami. Element składa się z trzech części: znacznika początku (w formie <znacznik>) zawartości elementu (tekst i/lub inne elementy) znacznika końca (w formie </znacznik>) Elementy muszą mieć przypisane atrybuty określające znaczenie danego elementu. Atrybuty wraz z ich wartościami umieszczonymi w cudzysłowach wpisuje się wewnątrz znacznika początkowego (<znacznik atrybut="wartość">). W języku XHTML kaŝdy znacznik musi posiadać znacznik końca, co nie obowiązywało w wielu znacznikach w HTML. Język XHTML wywodzi się z połączenia języka HTML ze ścisłymi zasadami języka XML. kaŝdy znacznik powinien być pisany małymi literami, kaŝdy znacznik, który rozpoczynasz powinien mieć znacznik kończący (czyli jak rozpoczniesz akapit znacznikiem <p> to musisz go zakończyć znacznikiem </p>), jeŝeli znacznik nie ma odpowiednika zamykającego, stosujemy tak zwane samozakończenie, czyli na przykład znacznik oznaczający przejście do następnej linii oznaczany jest przez <br />, a znacznik oznaczający poziomą linię rozdzielającą oznaczany jest przez <hr />. 28 lutego 2010 Strona 4

Jednym z głównych błędów jest uznanie języka XHTML kolejną wersją HTMLa. Na dodatek, błąd ten wyolbrzymiany jest przez fakt, iŝ Microsoft Internet Explorer wspiera obsługę XHTML, ale tylko, jeśli dokument ma typ MIME text/html, natomiast nie potrafi obsłuŝyć rekomendowanego typu application/xhtml+xml. Kiedy strona XHTML posiada typ MIME text/html, uznawana jest przez wszystkie przeglądarki jakby była niczym więcej niŝ stroną HTML. JednakŜe, jeśli strona XHTML posiada MIME text/xml lub application/xhtml+xml, musi ona być traktowana jako dokument XML który musi być zgodny ze ścisłymi standardami tworzenia i wyświetlania XML-a. Poprawny dokument XHTML jest aplikacją XML i jako taki wymusza od autora do bycia zgodnym ze ścisłymi zasadami tworzenia XHTML-a, między innymi: 1. Surowe znaki < i & nie są dozwolone chyba, Ŝe są wewnątrz sekcji CDATA (<!CDATA[[... ]]>). 2. Komentarze (<!... >) nie mogą zawierać podwójnych myślników ( ). 3. Zawartość wewnątrz komentarzy (<!... >) moŝe być zignorowana. Metaznaczniki <meta> - opcjonalne polecenie usprawniające funkcjonowanie witryny w sieci, które bardziej szczegółowo informuje o zawartości dokumentu, np. dla celów katalogowych czy indeksów, wykorzystywanych przez odpowiednie programy, np. wyszukiwarki sieciowe lub przeglądarki internetowe Zawiera ono trzy atrybuty: http-equiv, name i content w kombinacji pierwszy z trzecim lub drugi z trzecim. http-equiv definiuje zmienne systemowe, natomiast name - zmienne uŝytkownika. Przykłady: 1) <meta http-equiv="content-type" content="text/html; charset= windows-1250 "/> Strona kodowa, opis strony, wyrazy kluczowe, autor strony. Standard wyświetlania automatycznie przyjęty przez wyszukiwarkę i koniecznie zastosowany podczas edycji strony w edytorze. 28 lutego 2010 Strona 5

2) <meta name ="description" content=" treść "/> Polecenie opisuje zawartość strony. Znaleziona strona będzie zatytułowana za pomocą title i opisana za pomocą content (150-200 znaków, lub 20-25 wyrazów). 3) <meta name="keywords" content="wyrazy kluczowe..."/> Polecenie informuje o wyrazach kluczowych dokumentu, zwracając przykładową wartość keywords: HTML, znaczniki itp. (do 1000 znaków). Ułatwia to pracę sieciowym programom indeksująco-wyszukiwawczym i zwiększa szansę znalezienia strony przez innych uŝytkowników. 4) <meta name="author" content="imię i nazwisko"/> Polecenie informuje o autorze strony. 5) <meta http-equiv="content-language" content="pl"/> Polecenie informuje o języku strony. Niektóre przeglądarki korzystają z niego przy precyzowaniu zapytań. Dla języka angielskiego uŝyjemy en, dla amerykańskiego angielskiego en-us, dla niemieckiego de, dla francuskiego fr, dla rosyjskiego "ru" itd. 28 lutego 2010 Strona 6

Przykład poprawnego dokumentu HTML plik1.html <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/tr/html4/loose.dtd"> <html> <head> <meta http-equiv="content-type" content="text/html; charset=iso-8859-2"> <title>tytuł strony</title> <meta name="description" content="opis strony"> <meta name="keywords" content="slowa kluczowe"> <meta name="author" content="autor strony"> <meta name="robots" content="all"> <link rel="stylesheet" href="lokalizacja arkusza styli" type="text/css"> </head> <body> <p>zawartość strony</p> </body> </html> Przykład poprawnego dokumentu XHTML plik2.html <?xml version="1.0" encoding="iso-8859-2"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl" lang="pl"> <head> <meta http-equiv="content-type" content="text/html; charset=iso-8859-2" /> <title>tytuł strony</title> <meta name="description" content="opis strony" /> <meta name="keywords" content="slowa kluczowe" /> <meta name="author" content="autor strony" /> <meta name="robots" content="all" /> </head> <body> <p>zawartość strony</p> </body> </html> 28 lutego 2010 Strona 7

Elementy blokowe ADDRESS - element definiuje informacje o autorze strony WWW BLOCKQUOTE - element definiuje wydzielony blok tekstu BR - element definiuje przełamanie akapitu CENTER - element definiuje połoŝenie centralne DIV - element definiuje i grupuje elementy oraz ich atrybuty H1 - element definiuje nagłówek i jego wielkość (największy) H2 - element definiuje nagłówek i jego wielkość H3 - element definiuje nagłówek i jego wielkość H4 - element definiuje nagłówek i jego wielkość H5 - element definiuje nagłówek i jego wielkość H6 - element definiuje nagłówek i jego wielkość (najmniejszy) HR - element definiuje linię poziomą P - element definiuje akapit PRE - element definiuje tekst, w którym zachowane są białe znaki plik3.html <?xml version="1.0" encoding="iso-8859-2"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl" lang="pl"> <head> <meta http-equiv="content-type" content="text/html; charset=iso-8859-2" /> <title>tytuł strony</title> <meta name="description" content="opis strony" /> <meta name="keywords" content="slowa kluczowe" /> <meta name="author" content="autor strony" /> <meta name="robots" content="all" /> </head> <body> <h1 style="text-align: right; ">śródtytuł wyrównany do prawego marginesu</h1> <h2 style="letter-spacing: 1mm; border: 3px double; padding: 10px; ">Obramowany śródtytuł z literami co 1mm</h2> <h1 style="font-variant: small-caps; text-align: center; color: darkseagreen; background-color: black; ">Śródtytuł w kolorze darkseagreen na tle black</h1> </body> </html> W starszych wersjach HTML stosowano szereg atrybutów, które zachowały się jeszcze w HTML 4 i XHTML 1.0, ale tylko w wersjach Transition i Frameset, natomiast w wersji Strict są to atrybuty uznane za przestarzałe, zaś w XHTML 1.1 juŝ w ogóle nie istnieją. Są to atrybuty noshade (pozbawienie cieniowania), width (szerokość), size (grubość) i align (poziome wyrównanie). Formatowanie poziomych linii zostało przeniesione do stylów CSS. <pre> </pre> plik4.html 28 lutego 2010 Strona 8

<div> </div> Polecenie div (blok, sekcja) jest jednym z najbardziej fundamentalnym poleceń języka HTML, które odgrywa kluczową rolę w grupowaniu wielu róŝnych elementów i pozycjonowaniu większych fragmentów dokumentu. Na blokach formatowanych za pomocą kaskadowych arkuszy stylów oparte są dziś nowoczesne układy stron (ang. layouty). Polecenie pozwala wydzielić większy blok w dokumencie, np. fragment tekstu, grafikę czy wykaz (nawet kilka róŝnych elementów jednocześnie), a następnie nadać mu jakiś rodzaj formatowania, np. środkowanie lub dosunięcie do prawego marginesu, nadanie koloru itd. plik5.html <span> </span> Jest elementem wydzielającym jakiś fragment dokumentu, ale w przeciwieństwie do polecenia div pełni tę rolę jako element liniowy, np. pozwala wydzielić fragment akapitu i nadać mu za pomocą stylów specjalne formatowanie, jak pogrubienie tekstu w kolorze niebieskim albo pochylenie tekstu na zielonym tle. Listy DD - element definiuje wyjaśnienie hasła dla listy definicji DIR - element definiuje listę zawierającą elementy w wielu kolumnach DL - element definiuje listę definicji DT - element definiuje hasło dla listy definicji LI - element definiuje nowy element listy MENU - element definiuje listę zawierającą elementy w jednej kolumnie OL - element definiuje listę numerowaną UL - element definiuje listę zwykłą Lista uporządkowana i nieuporządkowana plik6.html Listy definicji stosuje się w przypadku gdy podawane są terminy wraz z ich objaśnieniami. Listy te róŝnią się od poprzednich tym, Ŝe pojedynczy element listy składa się z dwóch części: wyraŝenia (<dt>) oraz opisu (<dd>). plik7.html Kaskadowe arkusze stylów (z ang. Cascading Style Sheets, CSS) to język słuŝący do opisu formy prezentacji (wyświetlania) stron WWW stworzonych przy pomocy języka znaczników. Arkusz stylów CSS to lista dyrektyw 28 lutego 2010 Strona 9

(tzw. reguł) ustalających w jaki sposób ma zostać wyświetlana przez przeglądarkę internetową zawartość wybranego elementu (lub elementów) XHTML lub XML. MoŜna w ten sposób opisać wszystkie pojęcia odpowiedzialne za prezentację elementów dokumentów internetowych, takie jak rodzina czcionek, kolor tekstu, marginesy, odstęp międzywierszowy lub nawet pozycja danego elementu względem innych elementów bądź okna przeglądarki. Wykorzystanie arkuszy stylów daje znacznie większe moŝliwości pozycjonowania elementów na stronie, niŝ oferuje sam XHTML. CSS został stworzony w celu odseparowania struktury dokumentu od formy jego prezentacji. Separacja ta zwiększa zakres dostępności witryny, zmniejsza zawiłość dokumentu, ułatwia wprowadzanie zmian w strukturze dokumentu a takŝe zwiększa dostępność pozwalając na tworzenie układów strony bez uŝywania tabel. CSS ułatwia takŝe zmienianie renderowania strony w zaleŝności od obsługiwanego medium (ekran, palm top, dokument do druku, czytnik ekranowy). Stosowanie zewnętrznych arkuszy CSS daje moŝliwość zmiany wyglądu wielu stron na raz bez ingerowania w sam kod XHTML, poniewaŝ arkusze mogą być wspólne dla wielu dokumentów. CSS 1 jest w pełni obsługiwany przez przeglądarki oparte na silniku Gecko (np. Firefox), KHTML (min. Safari, Konqueror) oraz Presto (Opera). Silniki te są takŝe bliskie pełnej obsługi CSS 2.1. Internet Explorer do wersji 5.5 posiadał niecałkowitą i pełną błędów obsługę CSS1 oraz nielicznych elementów nowszych wersji. IE 6 renderując w trybie standardów obsługuje poprawnie prawie całość CSS1, jednak obsługa CSS 2.1 nadal pozostawia wiele do Ŝyczenia. Nazwa "kaskadowe arkusze stylów" wynika z faktu, iŝ gdy reguły CSS wykluczają się wzajemnie w arkuszu zewnętrznym, arkuszu wewnętrznym oraz na poziomie elementów HTML, priorytet stylów ustalany jest hierarchicznie. Przyjęto, Ŝe oddziaływanie stylów z arkuszy zewnętrznych moŝe być modyfikowane przez style zdefiniowane w nagłówku dokumentu, te zaś mogą być modyfikowane przez reguły zdefiniowane bezpośrednio w ciele dokumentu. Pierwszeństwo mają zatem style zdefiniowane "bliŝej" formatowanego elementu. Kolejność interpretacji reguł formatujących dany element przez przeglądarkę przedstawia się następująco: 1. Domyślny arkusz przeglądarki WWW (niezaleŝny od autora strony) 28 lutego 2010 Strona 10

2. Domyślny arkusz uŝytkownika przeglądarki (jak wyŝej) 3. Zewnętrzne arkusze stylów 4. Definicje stylów w nagłówku dokumentu 5. Definicje stylów w atrybucie style elementu Ten model działania pokazuje, w jaki sposób działa kaskada stylów. Między stylami z róŝnych źródeł nie muszą z resztą wcale występować Ŝadne konflikty - wszystkie style uzupełnią się, tworząc jeden wielki "wirtualny" styl. Składnia CSS składa się z trzech części: Selektora określa do jakiego elementu/znacznika odnosi się dana reguła Właściwości jest to zdefiniowany w specyfikacji znacznik, najczęściej angielskie słowo lub jego fragment (np. kolor tła = background-color, obramowanie = border itp.) Wartości właściwości styl nadawany właściwości, w przypadku koloru tła moŝe być #000000 wartość barwy czarnej lub rozmiar czcionki 12px. Do kaŝdego selektora moŝna przypisać wiele własności, a kaŝda z tych własności moŝe mieć niezaleŝne wartości. Własność i przypisana jej wartość oddzielone są dwukropkiem i zawarte w nawiasach klamrowych. Jeśli dany selektor ma przypisaną więcej niŝ jedną wartość, są one oddzielone średnikiem. Jeśli własność ma więcej niŝ jedną wartość oddzielone są one przecinkami. Wartości zawierające więcej niŝ jedno słowo muszą być otoczone cudzysłowami. Oprócz selektorów oznaczających znaczniki XHTML (takie jak h1, h2, p, img) moŝemy przydzielić im ID lub klasę. Dzięki temu moŝemy nadać więcej niŝ jeden styl dla kaŝdego elementu XHTML. 28 lutego 2010 Strona 11

Dołączanie CSS do dokumentu XHTML Wewnątrz znacznika style plik8.html <style type="text/css"><!-- h1, td { color: green; }.naglowek { color: red; font-size:16px; }.pogrubiony { font-weight: bold; } --></style> Wszystkie tytuły h1 i komórki tabeli td będą miały kolor zielony (color: green;) Nagłówek ma mieć czerwony kolor (color: red;) i wielkość 16 pikseli (font-size: 16px;). Styl pogrubiony będzie tylko pogrubiony (font-weight: bold;). Dowolny element HTML, który ma mieć styl naglowek powinien mieć atrybut class z nazwą naszego stylu (ale juŝ bez kropki): <p class="naglowek">nagłówek strony</p> <div class="naglowek">inny nagłówek strony</div> <a href="http://algorytmy.pl" class="naglowek">duŝy link</a> Dodając przed kropką nazwę elementu XHTML, moŝesz ograniczyć działanie tego stylu tylko do wybranych poleceń języka XHTML. Zastosujmy pogrubienie tylko w akapitach: p.pogrubiony { font-weight: bold; } #zielony { color: green; } Tym razem odwołanie do stylu nie następuje przez podanie atrybutu class, ale przez identyfikator elementu, czyli atrybut id. MoŜna ograniczyć zakres działania stylu dla wybranego elementu dodając jego nazwę przed definicją stylu: p#zielony { color: green; } Zewnętrzny plik <link rel="stylesheet" type="text/css" href="./style.css" />p plik9.html, style.css Z drzewem dokumentu związana jest własność dziedziczności stylów. Polega ona na tym, Ŝe elementy leŝące niŝej w hierarchii (potomkowie), jeśli nie zaznaczymy inaczej, dziedziczą (przejmują) atrybuty formatowania, które zostały nadane ich przodkom. Niestety w niektórych przeglądarkach internetowych zdarza się błędna interpretacja dziedziczenia stylów. Dlatego zawsze sprawdzaj w praktyce zastosowanie tej własności. Problemy stwarzają 28 lutego 2010 Strona 12

np. elementy tabeli: nawet jeśli zdefiniujemy określoną wielkość czcionki dla elementu wyŝej w hierarchii, w Internet Explorerze 5 nie spowoduje to zmiany tej własności w poszczególnych komórkach (TD) ani w tytule tabeli (CAPTION). Natomiast w MSIE 6 wszystko jest w porządku, ale nie w trybie Quirks. Selektor potomka ol ul { color: red } KaŜdy element listy nienumerowanej (ul), który znajdzie się wewnątrz listy numerowanej (ol), będzie miał automatycznie nadany kolor czerwony. Selektor dziecka (bezpośrednio pod rodzicem) p > b { color: red } Jeśli bezpośrednio wewnątrz znacznika p (akapit) znajdzie się znacznik b (czyli pogrubienie tekstu), to zostanie on automatycznie napisany czcionką koloru czerwonego. Selektor braci i + b { color: red } Jeśli wewnątrz tego samego znacznika (rodzica), będą znajdowały się po sobie znaczniki i oraz b, to ten drugi uzyska określone atrybuty. Selektor atrybutu zawierającego określony wyraz p[title~="jest"] { color: orange } KaŜdy akapit, któremu został nadany atrybut title="..." o wartości, w której występuje wyraz "jest", powinien mieć kolor pomarańczowy. plik11.html, style11.css 28 lutego 2010 Strona 13

Wzór Znaczenie Opis Selektory elementów * Kojarzy każdy element. Selektor uniwersalny E Kojarzy każdy element E (element typu E). Selektor typu E F Kojarzy każdy element F, który jest potomkiem elementu E. Selektor potomka E > F Kojarzy każdy element F, który jest dzieckiem elementu E. Selektor dziecka E + F Kojarzy każdy element F bezpośrednio poprzedzany przez element E. Selektor braci Selektory atrybutów E[atr] E[atr="wart"] Kojarzy każdy element E z ustawionym atrybutem "atr" (na jakąkolwiek wartość). Kojarzy każdy element E, którego atrybut "atr" ma wartość dokładnie "wart". Prosty selektor atrybutu Selektor atrybutu o określonej wartości E[atr~="wart"] Kojarzy każdy element E, którego wartość atrybutu "atr" jest listą oddzielonych spacjami wartości, a jedna z nich ma dokładnie wartość "wart". Selektor atrybutu zawierającego określony wyraz E[lang ="en"] Kojarzy każdy element E, którego atrybut "lang" ma rozdzieloną łącznikami listę wartości, zaczynającą się (z lewej strony) od "en". Selektor atrybutu zawierającego łączniki Selektory specjalne DIV.wart Tylko HTML. To samo co DIV[class~="wart"]. Klasy selektorów E#ident Kojarzy każdy element E z identyfikatorem ID równym "ident". Selektor identyfikatora Selektory pseudoelementów P:first-line Kojarzy pierwszą linię akapitu P. Pierwsza linia P:first-letter Kojarzy pierwszą literę akapitu P. Pierwsza litera 28 lutego 2010 Strona 14

Wzór Znaczenie Opis E:before Wstawia treść przed zawartością elementu E. Przed... E:after Wstawia treść po zawartości elementu E. Po... Selektory pseudoklas E:first-child Kojarzy element E, jeśli E jest pierwszym dzieckiem jego rodzica. Pierwsze dziecko E:link E:visited Kojarzy element E, jeżeli E jest kotwicą hiperlinku (odsyłaczem), której cel (strona docelowa) jeszcze nie został odwiedzony (:link) lub został już odwiedzony (:visited). Odsyłacz podstawowy Odsyłacz odwiedzony E:active E:hover E:focus Kojarzy E podczas pewnych akcji użytkownika (:active - aktywacja, :hover - wskazanie, :focus - zogniskowanie). Aktywacja Wskazanie myszką Zogniskowanie E:lang(c). Kojarzy element typu E, jeżeli jest napisany w języku c (np.: pl - polski, en - angielski). Atrybut języka Pozycjonowanie określa pozycję elementu w stosunku do sąsiadujących elementów, do nadrzędnego pojemnika oraz w stosunku do okna przeglądarki pozycjonowanie.html 28 lutego 2010 Strona 15