• Nie Znaleziono Wyników

HTML

N/A
N/A
Protected

Academic year: 2021

Share "HTML"

Copied!
73
0
0

Pełen tekst

(1)

Technologie Internetu

HTML

Aleksander Denisiuk

denisjuk@pja.edu.pl

Polsko-Japo ´nska Akademia Technik Komputerowych Wydział Informatyki w Gda ´nsku

ul. Brzegi 55 80-045 Gda ´nsk

(2)

HTML

Najnowsza wersja tego dokumentu dost ˛epna jest pod adresem http://users.pja.edu.pl/~denisjuk/

(3)

Hipertekst

Vannevar Bush, As We May Think, 1945 — Memex Ted Nelson

1960 — Xanadu

1965 — Hipertekst, hipermedia

(4)

J ˛ezyki znaczników. SGML

1969, IMB (Charles Goldfarb, Edward Mosher, Raymond Lorie) GML

Dokument deklaratywny: opisanie struktury i atrybutów dokumentu, nie sposobu jego przetwarzania (prezentacji)

Opisanie powinno by´c precyzyjne: powtarzalny wynik

Standard Generalized Markup Language ISO 8879 (1986 rok)

(5)

SGML. Przykład

<!DOCTYPE BOOK PUBLIC

"-//OASIS//DTD DocBook V3.1//EN"

[<!ENTITY % fulltext SYSTEM "fulltext.ent">

%fulltext; ]>

<BOOK ID="DOCBOOK"> <BOOKINFO>

<TITLE>Document HTML</TITLE> </BOOKINFO>

<BODY>

<PARA>Hello &amp; World!

</BODY> </BOOK>

(6)

Poprawno ´s ´c SGML

poprawny strukturalnie (tag-valid, dobrze uło˙zony) zgodny z DTD (poprawny)

(7)

Document Type Definition

http://www.w3.org/TR/REC-html40/strict.dtd

<!ELEMENT UL - - (LI)+>

<!ELEMENT TBODY O O (TR)+>

<!ELEMENT COL - O EMPTY>

(O — optional)

<!ENTITY % coreattrs

"id ID #IMPLIED

class CDATA #IMPLIED">

(8)

HTML

1989/90, CERN (Tim Berners-Lee, Robert Cailliau) Pocz ˛atkowe wersje były inspirowane SGML

1992, HTML 1.0 pierwsza „nieoficjalna” wersja

1995, HTML 2.0 pierwsze oficjalne SGML-owe DTD Wojna przegl ˛adarek

Stycze ´n 1997 HTML 3.2 Grudzie ´n 1997 HTML 4.0 1999 HTML 4.01

(9)

HTML 4.01

transitional <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> frameset <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd"> strict <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

(10)

HTML 4.01. Przykład

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html><head> <title>

A HTML 1.0 Strict standard template </title>

<meta http-equiv="content-type"

content="text/html;charset=utf-8"> </head>

<body>

(11)

XML

eXtensible Markup Language 1996–1998

uproszczona wersja SGML

ka˙zdy element powinien by´c domkni ˛ety case-sensitive

elementy powinny by´c poprawnie zagnie˙zd˙zone powinien by´c jeden element korzeniowy

wszystkie atrybuty powinny by´c w cudzysłowie (apostrofie)

(12)

XML. Przykład

<?xml version="1.0"?> <html> <head> <title> TINY </title> </head> <body> Technologie internetu. <ol> <li>HTML</li> <li>CSS</li>

(13)

Drzewo XML

note uu ❦❦❦❦ ❦❦❦❦ ❦❦❦❦ ❦❦❦❦ ❦ )) ❙ ❙ ❙ ❙ ❙ ❙ ❙ ❙ ❙ ❙ ❙ ❙ ❙ ❙ ❙ to  body uu ❧❧❧❧ ❧❧❧❧ ❧❧❧❧ ❧❧  title  Technologie internetu ol uu ❧❧❧❧ ❧❧❧❧ ❧❧❧❧ ❧❧❧❧ ❧❧  TINY li  li  HTML CSS

(14)

XML. Przykład DTD

<!ENTITY % coreattrs

"id ID #IMPLIED

class CDATA #IMPLIED

style %StyleSheet; #IMPLIED

title %Text; #IMPLIED"

>

<!ELEMENT ul (li)+> <!ATTLIST ul

%coreattrs; >

(15)

Aplikacje XML

Docbook RSS OpenDocument SVG XHTML

(16)

XHTML

2000 XHTML 1.0 transitional frameset strict 2001 XHTML 1.1 28 pa´zdziernika 2014 HTML 5

(17)

HTML 5

Wide Web Consortium (W3C) — XHTML 2.0

Web Hypertext Application Technology Working Group (WHATWG) — Web Applications and Web Forms

(18)

Zadania HTML 5

nowe mo˙zliwo´sci b ˛ed ˛a oparte o HTML, CSS, DOM oraz JavaScript

zmniejszy´c (eliminowa´c) potrzeb ˛e we wtyczkach (Flash)

ulepszy´c mo˙złiwo´sci debugowania

nowe elementy maj ˛a zast ˛api´c skrypty sprz˛etowo niezale˙zny

(19)

HTML5

nowe znaczniki (section, article, header,

footer, nav, video, audio, etc)

nowe pola formularzy tel, search, url, email,

datetime, date, number, etc

nowe atrybuty elementów formularzy: autofocus, required, autocomplete, min, max etc

mo˙zliwo´s´c osadzenia MathML i SVG

nie zawiera ˙zadnych elementów prezentacyjnych (np.

font)

canvas — dynamiczne, skryptowe renderowanie

(20)

HTML5

wsparcie przez wszystkie przegl ˛adarki ju˙z przed 2014 rokiem

brak ko ´ncowej specyfikacji 2016 rok: 5.1

(21)

XHTML 1.1. Przykład

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>

A XHTML 1.1 Strict standard template </title>

<meta http-equiv="content-type"

content="text/html;charset=utf-8" /> </head>

<body>

<p>Your HTML <br />content here</p> </body>

(22)

HTML 5. Przykład

<!DOCTYPE html>

<html> <head> <title>

A XHTML 1.1 Strict standard template </title>

<meta charset="utf-8" /> </head>

<body>

<p>Your HTML <br />content here</p> </body>

(23)

Znaczniki HTML

Ka˙zdy znacznik HTML (ang. tag) odpowiada logicznemu elementowi dokumentu

Znacznik (element) pusty <hr />

Znacznik (element) prosty

<h1>Technologie Internetu</h1> Pusty element maj ˛acy atrybuty

<img width="100" height="75"

src="images/domek.png" />

Element zło˙zony, który ma tre´s´c oraz atrybuty <a href="http://www.pjwstk.edu.pl">

(24)

Atrybuty standardowe

Atrybuty uniwersalne. Nie dotyczy elementów base,

head, html, meta, param, script, style i title. class, id, style, title

Atrybuty j ˛ezykowe. Nie dotyczy elementów base, br,

frame, frameset, hr, iframe, param, oraz script. dir (ltr, rtl), lang (polski – pl), xml:lang

Atrybuty klawiatury.

(25)

Ogólna struktura pliku HTML5

<!DOCTYPE html> <html> <head> . . . . </head> <body> . . . . </body> </html>

(26)

Ogólna struktura pliku HTML

domy´slna przestrze ´n nazw

http://www.w3.org/1999/xhtml

Element head zawiera meta-informacj ˛e o dokumencie. Meta-informacji nie wy´swietla si ˛e w przegl ˛adarce.

Mo˙ze ona by´c u˙zyta przy przetwarzaniu dokumentu. Element body zawiera logiczne elementy dokumentu, które maj ˛a si ˛e pojawi´c w przegl ˛adarce.

(27)

Meta informacja o dokumencie HTML

<title>Podstawy HTML</title> <meta name="description"

content="wyklad z podstaw HTML" />

<meta name="keywords" content="HTML XHTML" /> <meta charset="utf-8" />

<meta name="author"

(28)

Logiczne elementy dokumentu

HTML. Akapit

Tre´s´c akapitu powinna by´c po´swi ˛econa jednej spójnej my´sli lub poj ˛eciu

Cały akapit nale˙zy umieszcza´c wewn ˛atrz elementu p

(29)

Rozdziały dokumentu

Podział dokumentu na rozdziały, podrozdziały, punkty itd. pomaga czytelnikom lepiej orientowa´c si ˛e w tek´scie HTML5 ma semantyczne znaczniki dla rozdziałów

dokumentu:

<article> — artykuł (rozdział)

<section> — podrozdział

<header> — nagłówek dokumentu

<footer> — stopka

<figure> — wstawka

<aside> — wstawka, logicznie mniej zwi ˛azana z dokumentem (na marginesie)

(30)

Rozdziały dokumentu. Nagłówki

h1 — nagłówek cało´sci dokumentu

h2h6 — nagłówki rozdziałów i podrozdziałów dokumentu

(31)

Przykład sematycznego dokumentu

<header> <h1>Aleksander Denisiuk. PJWSTK</h1> </header> <article> <h2>Technologie Internetowe</h2>

(32)

Przykład, cd

<section> <h3>Wyklady</h3> <p>Zaliczenie na egzaminie</p> </section> </article> <footer> <p>Strona utworzona: <time datetime="2009-09-23">23

lutego 2009 roku</time></p> </footer>

(33)

Rozdziały dokumentu,

div

bloki dokumentu, które graj ˛a pewn ˛a rol ˛e, umieszcza si ˛e wewn ˛atrz div

<div id='menu'> . . . . </div> <div id='main'> . . . . </div> <div id='right'> . . . . </div>

(34)

Wyró˙znienia

logicznie wyró˙zniony fragment tekstu umieszcza si ˛e wewn ˛atrz elementu em

<p>Element <em>pusty</em> nie ma ani tresci ani atrybutow</p>

mark — łagodniejsze wyró˙znienie (na przykład, wyniki wyszukiwania)

<p>I also have some <mark>kitten</mark>s who are visiting me

these days. Maybe I

(35)

Wyró˙znienia.

span

fragmenty tekstu, które graj ˛a pewn ˛a rol ˛e umieszcza si ˛e wewn ˛atrz elementu span

<p class='bibliography'>

<span class='author'>Aleksander Denisiuk</span> <span class='title'>Inversion of the

X-ray transform</span>

<span class='journal'>Inverse Problems</span>, <span class='pages'>399&ndash;411</span>

<span class='year'>2007</span> </p>

(36)

Wyró˙znienia.

address

informacjia kontaktowa do autora b ˛ad´z wła´sciciela strony (dokumentu, rozdziału, etc)

<footer>

<p>Strona utworzona:

<time datetime="2017-03-24">24 marca 2017 roku</time></p>

<address class="author">

<a href="http://users.pja.edu.pl/~denisjuk"> Aleksander Denisiuk</a>

</address> </footer>

(37)

Wyszczególnienia i wyliczenia

Do wyszczególnie ´n i wylicze ´n u˙zywa si ˛e odpowiednio znaczników ul (unordered list) i ol (ordered list)

Ka˙zdy element listy zostaje umieszczony wewn ˛atrz znacznika li (list item):

<ul>

<li>Wprowadzenie</li> <li>Znaczniki HTML</li>

<li>Struktura pliku HTML</li> </ul>

(38)

Wyszczególnienia i wyliczenia.

Zagnie˙zd˙zenie

<ol>

<li>Meta informacja o dokumencie HTML <ol>

<li>Kodowanie</li>

<li>Inne elementy body</li> </ol> </li> <li>Logiczne elementy <ol> <li>Akapit</li> <li>Listy</li> <li>Tabele</li>

(39)

Tabele

<table> <th> <td>Nazwa waluty</td> <td>Kurs</td> </th> <tr> <td>dolar USA</td> <td>3,0828</td> </tr> <tr> <td>euro</td> <td>3,9390</td> </tr> </table>

(40)

Obrazki

<img width="100" height="75" src="images/domek.png" alt="Gmach uczelni"

(41)

Odno ´sniki

inny dokument

<a href="http://gdansk.pjwstk.edu.pl"> PJWSTK</a>

ten sam dokument

<h3 id="rysunki">Obrazki</h3> . . . .

(42)

Komentarze

(43)

Znaki Specjalne. Meta Symbole

< &lt; > &gt; & &amp;

(44)

Znaki Specjalne. Cudzysłowy

“Press the ‘x’ key.”

&ldquo;Press the &lsquo;x&rsquo; key.&rdquo; „tylko po «zebrach»”

&bdquo;tylko po &laquo;zebrach&raquo;&rdquo; HTML zawiera znacznik q, specjalnie przeznaczony do

krótkich cytatów. Przegl ˛adarka powinna(?) otoczy´c cytat wła´sciwym dla zadeklarowanego j ˛ezyka

cudzysłowem.

(45)

Pauzy i my ´slniki

Ł ˛acznik niebiesko-czarny My´slnik (—) &mdash; Półpauza (–) str. 11&ndash;13

11 czerwca &ndash; 13 lipca Znak minusa (−2)

(46)

Wielokropek

Nie tak ..., tylko raczej tak: Nowy Jork, Tokio, Budapeszt, . . .

Nie tak ..., tylko raczej tak:

(47)

Niełamliwe odst ˛epy

Polskie zasady nie pozwalaj ˛a przy łamaniu linii

pozostawia´c na ko ´ncu jednoliterowych spójników lub przyimków.

nie dbaj o&nbsp;bilet Inne przykłady:

godz.&nbsp;17.00;

od&nbsp;15 do 40&nbsp;minut; na str.&nbsp;2 napisano;

rozdz.&nbsp;2; 2&nbsp;kule;

p.&nbsp;Jan Nowak; p.&nbsp;J.&nbsp;Nowak; I&nbsp;takt IX&nbsp;Symfonii.

(48)

Poprawnie uło˙zony dokument HTML

zostanie poprawnie wy´swietlony w ka˙zdej

przegl ˛adarce internetowej (o ile ona nie ma bł ˛edów). nadaje si ˛e do automatycznego opracowania. Na

przykład, przy indeksacji strony

zostanie poprawnie wy´swietlony w alternatywnych ni˙z przegl ˛adarka ´srodkach, zarówno istniej ˛acych jak i tych, co maj ˛a si ˛e pojawi´c w przyszło´sci.

zostanie poprawnie skonwertowany w inny format. Na przykład, w PDF lub Open Document.

(49)

Validator W3C

(50)

Formularze HTML

<form action='index.php' method='post' name='DaneOsobowe' id='FDO'>

<p>Login:

<input type='text'

name='login' id='FDO_L' /> </p>

<p>Password:

<input type='password' size='1'

name='password' id='FDO_P' /> </p>

(51)

Pole tekstowe

<input type='text' size='4'

maxlength='8' value='Jan' /> <input type='password' size='4'

(52)

Pole wyboru

<form>

<input type="checkbox" name="czerwony" /> czerwony<br />

<input type="checkbox" name="zielony" /> zielony<br />

<input type="checkbox" name="niebieski" checked="checked" />

niebieski<br /> </form>

(53)

znacznik

label

<form>

<input type="checkbox"

name="czerwony" id='r' />

<label for='r'>czerwony</label> <br />

<input type="checkbox" name="zielony" id='g'/>

<label for='g'>zielony</label><br /> <input type="checkbox" name="niebieski"

checked="checked" id='b' />

<label for='r'>niebieski</label> </form>

(54)

Pole wyboru „radio”

<form>

<p>Select size:<br />

<input type="radio" name="rozmiar" value="S" id='S' />

<label for='S'>small</label> <br />

<input type="radio" name="rozmiar" value="M" id='M' />

<label for='M'>medium</label> <br />

<input type="radio" name="rozmiar"

(55)

Ukryte pole

<input type="hidden" name="id"

(56)

Przycisk

submit

<input type="submit" />

<input type="submit" value='Wyslij Dane' /> <input type="submit"

name='platnosc' value='Karta' /> <input type="submit"

(57)

Przycisk

reset

<input type="submit" /> <input type="reset" />

<input type="submit" value='Wyslij Dane' /> <input type="reset" value='Zresetuj' />

(58)

Przycisk

button

<input type="button" value='Oblicz Pole'

(59)

Przycisk

image

<input type="image"

src="pliks/world.png" align="absmiddle"

height="150" width="200" alt="send it in!" />

(60)

Wysyłka plików

<form method="post"

enctype="multipart/form-data" action="costam.php">

Zaznacz plik:

<input type="file" name="upfile" /> <br />

<input type="submit" /> </form>

(61)

Pole edycji tekstu

<textarea name="comments"

(62)

Lista wyboru

<select name="pizzasize">

<option value="S">small</option> <option value="M">medium</option> <option value="L">big</option>

<option value="XXL">XXL</option> </select>

(63)

Atrybut

placeholder

<input name="q"

(64)

Atrybut

autofocus

(65)

Pole

email

(66)

Pole

url

(67)

Pole

number

<input type="number" min="0"

max="10" step="2" value="6">

(68)

Pole

range

<input type="range" min="0"

max="10" step="2" value="6">

(69)

Pole dat

<input type="date"> <input type="month"> <input type="week"> <input type="time">

<input type="datetime">

(70)

Pole

search

(71)

Pole

color

(72)

Walidacja form i atrybut

reqired

<input id="q" required>

(73)

Wsparcie nowych elementów przez

przegl ˛

adarki

Cytaty

Powiązane dokumenty

Odtwarzacze tych plików zamieszczone na stronie powinny dać się obsłużyć za pomocą klawiatury i być dostępne dla osób niewidomych.. DODAJ NAPISY DO

Można napisać funkcję liczącą długość łamanej (w zależności od współrzędnej punktu B) i znaleźć wartość najmniejszą tej funkcji. Znacznie łatwiej jednak jest skorzystać

Notice that proving the “uniqueness” part of Theorem 1 for G dense in R, we have actually proved the uniqueness of solutions in the class of functions continuous at a point of L F ∩

(Of the above equations only (6) satisfies this condition.) In this case for some classes of equations of Sobolev type a theory analogous to the theory of bound- ary value problems

do zmiany struktury bilansu wydaje si) by* oczywista. Rosn&amp;cy d$ug publiczny oraz JST to przede wszystkim rosn&amp;cy deÞ cyt sek- tora Þ nansów publicznych. Tym samym banki

Existence of solution of the nonlinear Dirichlet problem for differential-functional equations of elliptic type.. by Stanis law

Note that the finite dimensional path algebras of quivers form a subclass of the class of hereditary finite dimensional K-algebras.. Using species and modulated graphs, Dlab and

Kolejny blok tematyczny sugerowanych przyszłych badań dotyczy czynników fizjologicznych świni lub dzi- ka, które, biorąc też pod uwagę wpływy środowiskowe, określają