:: Księga Gości   :: Mapa Serwisu   :: Linki   

SONDA
Czy podoba ci się nowy wygląd witryny?

Tak                    
Nie                     
Nie mam zdania 



Nickel-Soft

Mateusz Białek - Programowanie i nie tylko

www.leszeksoftware.hk.pl - oprogramowanie za free!

Firefox. Internet bez pop-upow!

Valid HTML 4.01!



Wymiana





HTML i CSS - Czy jeszcze warto ich używać?
by Mariusz Kasprzak

Wersja off-line


1.) HTML - Co to ?
   a.) Opis
   b.) Historia
   c.) Struktura
2.) CSS - Co to ?
   a.) Opis
   b.) Historia
   c.) Struktura
3.) HTML i CSS kontra inne języki
4.) HTML jako fundament każdej strony www
5.) Przyszłość tych języków
6.) Czy warto je używać?




1.) HTML - CO TO ?
a.) HTML - ang. HyperText Markup Language, hipertekstowy język znaczników to język składający się ze znaczników (ang. tags) stosowany do pisania stron WWW.

b.) Pierwsza wersja HTMLa została opracowana przez Tima Berners-Lee, który w tym czasie był fizykiem pracującym w europejskiej organizacji badań nuklearnych CERN w Szwajcarii. Jego pomysł opierał się na idei która od jakiegoś czasu krążyła wśród zainteresowanych, zwanej jako "hipertekst". Każdy użytkownik systemu Windows zetknął się z jego mini-wersją pod postacią kolorowych wyrazów po kliknięciu których przenosimy się na inną stronę Pomocy Windowsa. HTML pierwotnie składał się z kilkunastu znaczników umożliwiających wyświetlanie tekstu wraz z odsyłaczami do innych tekstów. Rewolucyjność pomysłu polegała na tym, że użytkownik przeskakujący do innego tekstu nie musiał w ogóle wiedzieć gdzie fizycznie znajduje się interesujący go tekst. Była to tzw. zerowa wersja HTMLa. Wraz z rozwojem sieci WWW, a zwłaszcza jej upowszechnianiem, pojawiła się potrzeba dołączania do tekstów tabel, grafiki i plików multimedialnych, w wyniku czego zaczęły powstawać kolejne wersje HTML-a. Wersje te były rozwijane przez firmy produkujące przeglądarki stron WWW, bez wzajemnych konsultacji, co doprowadziło do częściowej niekompatybilności wersji HTML-a zaimplementowanych w przeglądarkach różnych producentów. Próbą odpowiedzi na tę sytuację było stworzenie W3C czyli World Wide Web Consortium, organizacji która zajmuje się ustanawianiem wspólnych standardów HTMLa, a także innych spraw związanych z pisaniem stron WWW. Kolejne "oficjalne" wersje HTML-a są uzgadnianie przez szeroką dyskusję ekspertów i przedstawicieli zainteresowanych firm i następnie definiowane za pomocą SGMLa. Pierwszą taką oficjalną wersją HTML-a był HTML 2, którego niewątpliwym sukcesem było to, że wszystkie ważniejsze przeglądarki są w zasadzie z nim zgodne. Drugą wersją HTML-a, którą udało się uzgodnić w trakcie tzw. wojny przeglądarek, czyli ostrej i nie zawsze uczciwej konkurencji między Microsoftem i Netscape, była wersja 3.2. Ostatnią wersją HTML-a jest wersja 4.01, która próbuje wydzielić zarządzanie wyglądem strony do kaskadowych arkuszy stylów (CSS). HTML 4.01 okazał się jedynie częściowym sukcesem w dziedzinie standaryzacji, gdyż wsparcie dla CSS w większości przeglądarek było przez wiele lat niepełne i zawierało wiele mniejszych i większych niekompatybilności. Niekompatybilności te stają się jednak z czasem coraz mniejsze, i pisanie stron obsługiwanych poprawnie przez wiele przeglądarek jest łatwiejsze niż w czasach wojen edytorowych.

c.) Dokument HTML jest zwykłym dokumentem tekstowym o ustalonym kodowaniu znaków składającym się z elementów/ tagów/ znaczników. Element zwykle składa się z trzech części:
- znacznika początkowego (w formie </element>)
- zawartosci elementu (tekst i/lub inne elementy)
- znacznika końcowego (w formie </element>)
Elementy mogą też mieć przypisane atrybuty precyzujące znaczenie danego elementu. Atrybuty wraz z ich wartościami wpisuje się wewnątrz znacznika początkowego (<element atrybut="wartość">). Niektóre elementy nie muszą, a niektóre wręcz nie mogą posiadać znacznika końcowego (np. element br służący do rozpoczęcia nowego wiersza tekstu). Element główny każdego dokumentu HTML jest html. Element główny zawiera dwa kolejne elementy: head (nagłówek dokumentu) i body (zasadnicza treść dokumentu). Element head zawiera tytuł strony oraz informacje dodatkowe niewidoczne w dokumencie, takie jak autor, data, słowa kluczowe, itp. Wewnątrz elementu body zawarte są wszystkie pozostałe elementy, mogące zawierać tekst, wstawiać grafikę, itp. Na początku dokumentu, poza elementem html powinna się jeszcze znaleźć informacja o zastosowanym typie dokumentu, wskazująca użytą wersję HTML. Elementy i atrybuty HTML-a z założenia służą logicznemu uporządkowaniu tekstu. HTML 4.01 w dwóch ze swoich odmian (Transitional - "przejściowa" i Frameset - z ramkami) zawiera elementy i atrybuty o których wspomniano powyżej. W3C zdecydowanie odradza korzystania z tych elementów i poleca stosowanie HTML w wersji Strict (ścisłej), niezawierającej elementów formatujących, lub w najlepszym przypadku poprawnego składniowo oraz logicznie XHTML. Zazwyczaj mimo to wykorzystywane są także te znaczniki, pomimo groźby złego wyświetlenia oraz unieczytelnienia tak skonstruowanej strony w wielu sytuacjach. Przykładem może być wypracowanie (tytuł, wprowadzenie, rozwinięcie z nagłówkami dla każdego rozdziału, zakończenie). Do wizualnego lub urządzeniowego formatowania dokumentów służy język CSS o którym później.

2.) CSS - CO TO ?
a.) CSS - (ang. Cascading Style Sheets, CSS, Kaskadowe Arkusze Stylów)jest językiem służącym do opisu sposobu renderowania (prezentowania informacji zawartych w dokumencie elektronicznym dokonywanych w formie najbardziej właściwej dla danego środowiska np. wizualnie, dźwiękowo, w druku) stron WWW. Arkusz CSS to lista dyrektyw ustalających w jaki sposób ma być renderowany przez przeglądarkę tekst znajdujący się wewnątrz danego elementu HTML/XHTML/XML lub inna część składowa dokumentu opisywana przez dany element. Ustalać można w ten sposób rodzaj czcionki tekstu, kolor, marginesy, odstęp międzywierszowy itp. a nawet pozycję danego elementu względem innych elementów lub całej strony. Wykorzystanie arkuszy stylów daje znacznie większe możliwości jakie w zakresie pozycjonowanie elementów na stronie oferuje sam HTML. Nazwa "kaskadowy" wynika z faktu, że istnieją ściśle określone zasady wyboru sposobu wyświetlania danego elementu strony jeśli jest on zdefiniowany inaczej przez zewnętrzny arkusz, następnie wewnętrzny i wreszcie lokalnie. Przyjęto, że oddziaływanie stylów z arkuszy zewnętrznych może być modyfikowane przez style zdefiniowane w nagłówku dokumentu, to zaś może być modyfikowane przez style zdefiniowane bezpośrednio w ciele dokumentu. Pierwszeństwo mają zatem style zdefiniowane "bliżej" konkretnego elementu. Przeglądarka sprawdza więc najpierw, czy istnieją jakieś arkusze zewnętrzne i stosownie do ich definicji formatuje stronę. Następnie sprawdza, jakie są definicje stylów w nagłówku strony i modyfikuje wygląd zgodnie z ich ustaleniami. Następnie sprawdza style w samym dokumencie i ponownie modyfikuje fizyczną postać strony. To oczywiście model działania, ale pokazuje on, jak działa taka kaskada stylów. Między stylami z różnych źródeł nie muszą zresztą wcale występować żadne konflikty - wszystkie style uzupełnią się, tworząc jeden wielki, "wirtualny" styl. Oprócz możliwości bardzo precyzyjnego definiowania sposobów wyświetlania elementów stron WWW, wielką zaletą CSS jest oddzielenie kontroli wyglądu strony od jej struktury logicznej, dzięki czemu kod HTML stron ulega znacznemu uproszczeniu. Stosowanie zewnętrznych arkuszy CSS daje możliwość zmiany wyglądu wielu stron na raz bez ingerowania w sam kod HTML (o ile został on sensownie napisany) gdyż arkusz ten może być wspólny dla wielu stron.

b.) CSS został wypracowany przez organizację W3C w 1996 r. jako potomek języka DSSSL przeznaczony do używania w połączeniu z HTML-em. W3C zatwierdził dwa oficjalne standardy CSS: CSS1 i CSS2. Starsze wersje przeglądarek internetowych obsługują w pewnym stopniu CSS1, jednak nie do końca i z wieloma błędami, stąd obecnie z CSS trzeba korzystać bardzo ostrożnie. CSS1 jest w pełni obsługiwany jedynie przez Mozillę oraz przeglądarki oparte na silniku renderującym Mozilli (Gecko), takie jak Netscape Navigator 6.x/7.x, a także Opera. Konqueror oraz Internet Explorer jeszcze nie w pełni obsługują wszystkie zatwierdzone w standardzie elementy, jednak z wersji na wersję sytuacja ulega poprawie. W3C przygotowuje poprawioną wersję CSS2 - CSS2.1. Trwają rownież prace nad CSS3. Jezyk ten wzbogaci się o wiele nowych elementów w stosunku do poprzedników. Zmiany nie ograniczą się tylko do dodania nowych własności.

c.) CSS można stosować zewnętrznie tj. w formie oddzielnych plików, do których odwołujemy się w kodzie strony odpowiednim znacznikiem w rodzaju <link rel="stylesheet" type="text/css" href="arkusz.css">. Można go dołączać do samego kodu, w nagłówku strony lub stosować lokalnie przy każdym użyciu danego znacznika, co jednak nie jest ani praktyczne ani zalecane. Definicja stylu składa się z selektora, wybranej własności selektora i jej konkretnej wartości: selektor { własność: wartość } Na przykład, chcąc przypisać akapitowi określoną czcionkę, możemy napisać: P {font-family: Times}

3.) HTML I CSS KONTRA INNE JĘZYKI
Często słyszy się o całkiem nowych językach programowania dzieki którym możemy tworzyć strony www. Większość z nich to jednak języki skryptowe które uzupełniają HTML w dodatkowe funkcje. Chyba Każdy z nas słyszał o JavaScript. Jest to język skryptowy dzięki któremu uzyskamy ciekawe efekty graficzne i tekstowe na naszej stronie. Może to być napis w pasku statusu czy zegarek. Ale istnieje także wiele innych języków skryptowych. Można je podzielić na dwie grupy:
- działające na naszym komputerze np. JavaScript
- Działające po stronie serwera na którym jest umieszczony plik naszej strony np. PHP
Trudno jest jednak porównać HTML z językami skryptowymi ponieważ działają one w kodzie HTML czyli sam kod skryptu bez głównych znaczników HTML nie działa. Można jednak powiedzieć że większość języków skryptowych działających po stronie serwera np. PHP, ASP przewyższają nowoczesnością starego lecz dalej jarego HTMLa. Większość tych języków posiada zmienne, stałe i często także możliwość zapisywania rekordów. Nie są to jednak wszystkie ich funkcje. Sam taki HTML jest niczym bez różnych języków skryptowych rozszerzających jego możliwości. Ale istnieją także języki podobne do HTMLa i wywodzące się z niego. Są to np. XHTML, XML, WML. Wszystkie one tak samo jak HTML nie posiadają funkcji podobnych do tych które posiadają języki skryptowe. Są one oczywiście bardziej nowoczesne niż HTML i różnią się nie wiele. Teraz osoba która tworzy stronę w samym HTMLu jest uznawana za lamera i amatora. Dzisiaj liczy się nie tylko efektowność ale i efektywność strony www. Musi być ona nie tylko ładna ale i interaktywna, a możliwości interaktywne dają tylko języki skryptowe. Niestety HTML odchodzi już do lamusa i trzeba przerzycic się na coś nowszego. XHTML wywodzący się z XML jest do tego idealny i nieróżni się prawie niczym. Obsługuje za to więcej nowych technologii i działa jednakowo na wszystkich przeglądarkach. Choć języki pochodzące od HTMLa są "czymś" bez praktycznie żadnych interesujących funkcji nie licząć formatowania tekstu i wstawiania obiektów to i tak żadna strona nie może istnieć bez dobrego fundamentu jakim jest HTML. CSS także jest rozszerzeniem HTMLa i to prawie bez konkurencji więc nie będę o nim pisał.

4.) HTML JAKO FUNDAMENT KAŻDEJ STRONY WWW
Każda strona www nie może istnieć bez szkieletu napisanego w HTMLu. Bezwzględu na to czy używamy jakichkolwiek dodatkowych języków skryptowych strona potrzebuje fundamentu w HTMLu. Jak już wcześniej pisałem każdy język skryptowy działa na HTMLu a on sam napisany bez przynajmniej podstawowych znaczników HTML nie znaczy nic i nie może być dobrze wyświetlony. Fundamentem z HTMLa możemy nazwać cały wygląd i treść strony. Dlatego ważne jest aby dobrze napisać fundament, bo jak można się domyślić skrypt może mieć problemy z działaniem. Aby lepiej to przedstawić posłużę się przykładem. Strona www jest jak dom. I tak samo jak jego budowę zaczynamy od fundamentu bo dobry fundament daje gwarancję na to że dom wytrzyma długo a w wypadku strony to będzie ona dobrze wyświetlana i każdy skrypt będzie działał na niej poprawnie.

5.) PRZYSZŁOŚĆ TYCH JĘZYKÓW
Oba te języki pomimo bogatej przeszłości mają różne przyszłości. HTML odchodzi już do lamusa dając początek całkiem nowym językom takim jak XHTML, XML,WML a natomiast o CSSie można powiedzieć że pomimo tego iż dalej jest bardzo popularny (tak samo jak HTML)to swoje najlepsze dni ma już za sobą choć jego nowa wersja ma to zmienić. CSS teraz służy już tylko do tworzenia efektownych hiperłączy i suwaków. Mało któ używa CSS zgodnie z jego prawdziwym zastowaniem czyli do tego aby określać atrybuty elementów HTML, bo według W3C wpisywanie atrybutów w znacznikach może spowodować błędy podczas wyświetlania na niektórych przeglądarkach. Ale przejdźmy do konkretów naszej sprawy czyli przyszłości obu języków. Zacznijmy od HTMLa.
Obecnie W3C zaprzestało rozwoju HTML (będącego aplikacją SGML) i postanowiło dostosować język do XML. W wyniku powstał XHTML, zgodny z HTML i możliwy do wyświetlenia w przeglądarkach zgodnych z HTML 4. Zmiana ta ma zapewnić większą rozszerzalność i dostępność języka. Z tego powodu właśnie XHTML jest obecnym zalecanym standardem tworzenia stron www. Trwają prace nad wersją 2.0, w przeciwieństwie do 1.0 niekompatybilną z wcześniejszymi wersjami i wnoszącą wiele zmian. Oprócz XHTML powstała także nowa wersja WMLa. Natomiast co do CSSa to W3C przygotowuje poprawioną wersję CSS2 - CSS2.1. Trwają rownież prace nad CSS3. Jezyk ten wzbogaci się o wiele nowych elementów w stosunku do poprzedników. Zmiany nie ograniczą się tylko do dodania nowych własności.

6.) CZY WARTO ICH UŻYWAĆ ?
To pytanie zadaje sobie każdy kto od jakiegoś czasu zajmuje się tworzeniam stron www. Jak wiadomo HTML jest najprostszym językiem programowania na świecie. Jest tak dlatego że nie posiada on zmiennych i innych rzeczy kojarzących się z programowaniem. Chyba każdy kiedy zaczynał swoją przygodę z programowaniem zaczynał od HTMLa a potem od Pascala, Delphi czy C++. Wielu teraz tworzy swoje witryny z wykorzystaniem PHP nie wiedząc o tym że piszą stronę także w HTMLu. Często do tego dodają CSS. Wielu także uważa że w samym HTMLu i CSSie nie da się stworzyć pięknie wyglądającej strony www. I zdaje się że się mylą. Na świecie jest wiele stron napisanych w samym HTMLu. I prawie każda z nich wygląda ładnie lub pięknie. Moja strona także jest napisana w HTMLu i chyba nie wygląda ona najgorzej. Wiele osób na pamięć zna nazwy znaczników HTMLa. Są wtym gronie także dzieci. Moim zdaniem jeżeli tworzymy strony dla ssiebie lub dla własnej przyjemności to HTML wraz z CSSem na pewno nam wystarczą a jeśli natomiast jest to nasz zawód to powinniśmy już powoli zapomnieć o HTMLu bo CSS jeszcze nam się przyda.



Copyright by Mariusz Kasprzak © 2004