Vous êtes sur la page 1sur 50

Programmationclientweb

Plan
3 3 3

3 3 3

ModlesdeprogrammationvialeserviceWeb ProtocoleHTTP HTML q BALISES CascadingStyleSheet Javascript Appletjava

IPW:programmationctclient

ModlesdeprogrammationvialeserviceWeb
3

RappelduserviceHTTP:modledebase

IPW:programmationctclient

ModlesdeprogrammationvialeserviceWeb
3

RappelduserviceHTTP:ModlededocumentdynamiqueavecCGI
RequteCGI

Navigateur HTML

ProtocoleHTTP Documentgnr

HTTPD 80

CGI

Un prog.

TCP/IP
3

Machineserveur

LeserveurHTTPdisposeuneinterface,ditCGI(CommunGatewayInterface), permettantdinvoquerlexcutiondunprogrammequelconquesetrouvantsurla mmemachineserveurselonunordrevenantduclientweb: q lordredexcutionserasousformedunhyperlienavecquelquesconventions spcifique q LeserveurHTTPreoitcetordre,ilorganiseraensuitelexcutionduprogramme demand.LacommunicationentreleprogrammeetleserveurHTTPDestassurepar: lesentres/sortiesstandard(STDINetSTDOUT)etunensembledevariables denvironnementduserveurHTTPD q LersultatdelexcutionseraenvoyparleserveurHTTPauclientweb
4

IPW:programmationctclient

ModlesdeprogrammationvialeserviceWeb
3

NOTIONdURL(UniformResourceLocator): q UnURLreprsenteuneidentificationdunendroitostockeuneressourcesurle rseauInternet q Uneressourcepeuttrestockeplusieursendroits,ellepossdedontunou plusieursURL q FormatdunURL:(note:lesymbole[xxx]signifiequexxxestfacultatif)


Hte [:Port] Chemin Nom [#Ancre] [?Paramtres]

Protocole://
3

Exemple1:uneressourcestatiqueestunfichierhtml
Deptinfo.unice.fr /~renevier/ L2

http://
3

Exemple2:uneressourcedynamiquegnreparunprogrammecgi:
iihm.imag.fr /cgibin/Vitesse2/ vitesse2.bat Keywords=unsa&SearchEngine=Googl e&Kind=Search&InfoSpace=&MaxInfo Number=100&VitesseMode=Win 5

http://

IPW:programmationctclient

CodageduneURL
Tabulation Espace " # % & ( ) + , . / : ; %09 %20 %22 %23 %25 %26 %28 %29 %2B %2C %2E %2F %3A %3B

< = > ? @ [ \ ] ^ ' { | } ~

%3C %3D %3E %3F %40 %5B %5C %5D %5E %60 %7B %7C %7D %7E
6

IPW:programmationctclient

ModlesdeprogrammationvialeserviceWeb
3

NOTIONdURI(UniformResourceIdentificator): q UnURIreprsenteuneidentificationdelorigineduneressourcesurlerseau Internet q Uneressourcepeuttrestockeplusieursendroits,maiscescopiesontla mmeorigine.UneressourceadoncunetunseulURI q FormatdunURI:<typedocument|Proprits|Origine> q Exemple:Laversion4.01deHTMLimposelaspcificationdelURIde dfinitiondecelangage(unDTD)danslapremirelignedudocument: <!DOCTYPEHTMLPUBLIC"//W3C//DTDHTML4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

IPW:programmationctclient

ModlesdeprogrammationvialeserviceWeb
3

LepassagedeparamtresunprogrammeCGI: q Formatdeparamtre:entexteASCII x chaqueparamtrecomprend2oprandesNomdevariableetValeurde variablereliesparlesymbole= x lesparamtressontrelisparlesymbole& x Convention:certainesrglesdetransformationautomatiquesontappliques:le caractredespace()estremplacpar+,


var1
q

val1

&

var2

val2

&

&

varn

valn

Modesdepassagedeparamtres: x GET:lachanedeparamtresestenvoyeaveclURLaprslecaractre?etsera dposedansunevariabledenvironnement,appelQUERY_STRINGduservice HTTP(surlamachineserveur).Avantage:simple;Inconvnient:taillelimite 200caractres x POST:lachanedeparamtreseraenvoyeindpendammentdelURLetdirige verslefichierSTDIN(StandardINPUT)duprogrammeCGI.Avantage:taille illimite,traitementstandard


8

IPW:programmationctclient

ModlesdeprogrammationvialeserviceWeb
3

LeretourdedonnesdepuisdunprogrammeCGIauserveurHTTP: q Formatdedonnesderetour:TexteHTML q ModedepassageduCGIversleserveurHTTP:lesdonnessortiesdu STDOUT(StandardOUTPUT)duprogrammeCGIserontredirigeslentre standard(stdin)duserviceHTTPquilestransmetauClientWeb q Cersultatpeuttrenimportequeldocumentmultimdia,depuislesimple texteasciijusqulavido.Danslecasolarequtedunclientselimite demanderauserveurdeluifournirunfichier,leserveursebasesurlextension decefichierpourdterminersontype q ConformmentauprotocoleHTTP,ilfautalorstransmettrecetypedanslen tte,aveclaclauseContenttype:typeDocument,pourquelenavigateursache commentdcrypterlesinformationsquiluiproviennentparlasuite q Exemple:PourunfichierHTMLparexemple,lextensionestleplussouvent .html,etlavaleurdetypeDocumentesttext/html
9

IPW:programmationctclient

ModlesdeprogrammationvialeserviceWeb
3

Rappel du modle de programmation Client/Serveur sur Internet : une application CL/SV sur le rseau Internet est constitu de 2 parties : q UnprogrammeClientdelapplicationet q UnprogrammeServeurdelapplication Programme Clientdelapp. Protocoledelapp. TCP/IP ProgrammeClient Interfacedutilisateur Nonpermanent Orientgraphique Langageintermdiaire ProgrammeServeur Ralisationdeservices Processuspermanent Orienttraitement PortsTCPexclusifs
10

Programme Serveurdelapp.

IPW:programmationctclient

ModlesdeprogrammationvialeserviceWeb
3

PremireapprocheprogrammationCL/SVviaweb: q UtilisationlinterfaceCGIpouractiverlapartieServeurdelapplication q LeprogrammeClientestunscriptHTML(HyperTextMarkupLanguage) q LeprogrammeServeurestunprogrammeCGI q LeprotocoledelapplicationdoitrespecterlesrestrictionsdeHTTP


Partieserveur delapplication Partieserveur delapplication

Protocoledelapplication

Navigateur HTML

ProtocoleHTTP TCP/IP

HTTPD 80

CGI

IPW:programmationctclient

11

ModlesdeprogrammationvialeserviceWeb
3

Leslimitesdelapremireapproche q CtClient:absencedesoutilsdeprogrammationetlesoutilsdeprsentation sontlimitslacapacitdulangageHTML q CtServeur:absencedesoutilsdedveloppementadapts,lacommunication avecleserveurHTTPestautomatiser q CtProtocole:lesparamtressontpasssenmodetexteavecunformat impos(absencedescuritetcapacitlimite)etdeuxmodesde rcuprationfixes(GETetPOST)

Renforcerles outilsde programmation etdeprsentation ductCLIENT


IPW:programmationctclient

Automatiser leprocessusde communication Client/Serveur

Normaliserles outilsde dveloppement duct SERVEUR


12

ModlesdeprogrammationvialeserviceWeb
3

Modledeprogrammationweb2tiers: q TiersClient:Programmeinterfacecomprenantdesoutilsdeprsentationetde programmation:HTML,Plugin,JavaScript,Style,AppletJava q TiersServeur:Programmedeservices,appelobjetsdemtiers, dveloppdepuisunenvironnementdedveloppementnormalis,ditpr processeurdeHTTP,Parexemple:PHP,JSP,ASP


Partieclient delapplication ProtocoleApp. Partieserveur delapplication

Navigateur Outils HTML Prog.

HTTP TCP/IP

HTTPD 80

Pr processeur

TCP/IP
13

IPW:programmationctclient

ModlesdeprogrammationvialeserviceWeb
3

Modledeprogrammationweb2tiers: q OutilsdeprsentationpourCLIENT: x HTML/XML:Langagecadrepermetduneprsentationdebaseetuneintgration desdiffrentsmodesdeprogrammationsetdeprsentationmultimdia x CSS2:LangagededfinitiondestyledeprsentationpourlesbalisesHTML.Il permetduneprsentationplusfineetparamtrable x Plugin:Desprogrammedinterprtedestypesdedonnesmultimdiapermettant aunavigateurdaffichercesdonnes(word,excel,) q OutilsdeprogrammationpourCLIENT: x JavaScript:LangagedeprogrammationintgrdansleHTML,permettantde manipulerlesobjetsdocumentairesdeHTML,decreretcaptureretmanipulerdes vnementssurinterfaceetdeffectuerdescalculs x AppletsJava:desprogrammejavaquisontexcutsparunemachinevirtuelleJava intgredanslenavigateur.CesprogrammeschangentlesdonnesavecHTML parleszonesvariablespartages.

IPW:programmationctclient

14

Plan
3 3 3

3 3 3

ModlesdeprogrammationvialeserviceWeb ProtocoleHTTP HTML q BALISES CascadingStyleSheet Javascript Appletjava

IPW:programmationctclient

15

ModlesdeprogrammationvialeserviceWeb
3

Modledeprogrammationweb3tiers: 1erTiersdeClient:
Programmationinterface dutilisateur

2eTiersdObjetsde 3eTiersdeBasesde mtier:Programmationde donnes:


serviceslislapplication relle Partieserveur delapplication Programmationdes sourcesdedonnespour lapplication PartieSGBD delapplication

Partieclient delapplication

ProtocoleApp.

SQL

Navigateur Outils HTML Prog.

HTTP TCP/IP

HTTPD 80

Pr processeur TCP/IP

Mdiateur debasede donnes

SGBD

TCP/IP

TCP/IP
16

IPW:programmationctclient

ProtocoleHTTP
3

3 3

HTTP(HyperTextTransferProtocol):protocoleleplusutilissur Internetdepuis1990. q Laversion0.9taituniquementdestinetransfrerdesdonnessur Internet(enparticulierdespagesWebcritesenHTML). q Laversion1.0duprotocole(laplusutilise)permetdsormaisde transfrerdesmessagesavecdesenttesdcrivantlecontenudumessage enutilisantuncodagedetypeMINE. TransfertdefichierslocalissgrceuneURLentreunnavigateur(le client)etunserveurWeb(httpd). q LenavigateureffectueunerequteHTTP q LeserveurtraitelarequtepuisenvoieunerponseHTTP RFC1945HypertextTransferProtocolHTTP/1.0 RFC2616HypertextTransferProtocolHTTP/1.1
17

IPW:programmationctclient

RequteHTTP
3 3

Envoyeauserveurparlenavigateur,composedeslments suivants Unelignederequte(3lmentssparsparunespace) q Lamthode q L'URL q Laversionduprotocoleutilisparleclient(gnralementHTTP/1.0) Leschampsd'enttedelarequte:ensembledelignesfacultatives donnantdesinformationssupplmentairessurlarequteet/oule client(navigateur,OS) q Ceslignessontcomposesd'unnom(typed'entte)suividedeuxpoints(:) etdelavaleur Lecorpsdelarequte:ensembledelignesoptionnellessparesdes lignesprcdentesparunelignevide q Permet(parexemple)unenvoidedonnesparunecommandePOSTlors del'envoidedonnesauserveurparunformulaire
18

IPW:programmationctclient

RequteHTTP
3

Syntaxe(<crlf>=sautdeligne): METHODEURLVERSION<crlf> ENTETE:Valeur<crlf> ... ENTETE:Valeur<crlf> Lignevide<crlf> CORPSDELAREQUETE ExemplederequteHTTP: GEThttp://www.commentcamarche.netHTTP/1.0 Accept:text/html IfModifiedSince:Saturday,15January200014:37:11GMT UserAgent:Mozilla/4.0(compatible;MSIE5.0;Windows95)
19

IPW:programmationctclient

Commandedunerequtehttp
Commande GET HEAD POST PUT DELETE Description Requtedelaressourcesituel'URLspcifie Requtedel'enttedelaressourcesituel'URL spcifie Envoidedonnesauprogrammesitul'URL spcifie Envoidedonnesl'URLspcifie Suppressiondelaressourcesituel'URLspcifie
20

IPW:programmationctclient

Enttesdunerequtehttp
Description Typedecontenuacceptparlenavigateur(par Accept exempletext/html). AcceptCharset Jeudecaractresattenduparlenavigateur AcceptEncoding Codagededonnesacceptparlenavigateur Langageattenduparlenavigateur(anglaispar AcceptLanguage dfaut) Authorization Identificationdunavigateurauprsduserveur Content Typedecodageducorpsdelarequte Encoding Content Typedelangageducorpsdelarequte Language
IPW:programmationctclient 21

Nomdel'entte

Enttesdunerequtehttp
Nomdel'entte ContentLength ContentType Date Forwarded From IfModifiedSince Link OrigURL Referer Description Longueurducorpsdelarequte Typedecontenuducorpsdelarequte(parexemple text/html). Datededbutdetransfertdesdonnes Utilisparlesmachinesintermdiairesentrelebrowseret leserveur Permetdespcifierl'adresseemailduclient Permetdespcifierqueledocumentdoittreenvoys'ila tmodifidepuisunecertainedate RelationentredeuxURL URLd'originedelarequte URLdulienpartirduquellarequteateffectue
22

Chanedonnantdesinformationssurleclient,commele UserAgent nometlaversiondunavigateur,dusystme IPW:programmationctclient d'exploitation

RponseHTTP
3

Unelignedestatut: q Laversionduprotocoleutilis q Lecodedestatut q Lasignificationducode Leschampsd'enttedelarponse:ensembledelignesfacultatives donnantdesinformationssupplmentairessurlarponseet/ouleserveur. q Ceslignessontcomposesd'untyped'enttesuividedeuxpoints(:)etdela valeurdel'entte Lecorpsdelarponse:contientledocumentdemand

IPW:programmationctclient

23

RponseHTTP
3

Syntaxe VERSIONHTTPCODEEXPLICATION<crlf> ENTETE:Valeur<crlf> ... ENTETE:Valeur<crlf> Lignevide<crlf> CORPSDELAREPONSE ExemplederponseHTTP: HTTP/1.0200OK Date:Sat,15Jan200014:37:12GMT Server:MicrosoftIIS/2.0 ContentType:text/HTML ContentLength:1245 LastModified:Fri,14Jan200008:25:13GMT

IPW:programmationctclient

24

EnttesdesrponsesHTTP
Nomdel'entte ContentEncoding ContentLanguage ContentLength ContentType Date Expires Forwarded Location Server
IPW:programmationctclient

Description Typedecodageducorpsdelarponse Typedelangageducorpsdelarponse Longueurducorpsdelarponse Typedecontenuducorpsdelarponse(parexemple text/html). Datededbutdetransfertdesdonnes Datelimitedeconsommationdesdonnes Utilisparlesmachinesintermdiairesentrelebrowser etleserveur RedirectionversunenouvelleURLassocieau document Caractristiquesduserveurayantenvoylarponse
25

CoderponseHTTP
Code 10x 20x 200 201 202 203 204 205 206 Message Messaged'information Russite OK CREATED ACCEPTED PARTIAL INFORMATION NORESPONSE RESETCONTENT PARTIALCONTENT Description Cescodesnesontpasutilissdanslaversion1.0duprotocole Cescodesindiquentlebondroulementdelatransaction Larequteataccompliecorrectement EllesuitunecommandePOST,elleindiquelarussite,le corpsdurestedudocumentestsensindiquerlURL laquelleledocumentnouvellementcrdevraitsetrouver. Larequteataccepte,maislaprocdurequisuitn'apas taccomplie LorsquececodeestreuenrponseunecommandeGET, celaindiquequelarponsen'estpascomplte. Leserveurareularequtemaisiln'yapasd'information renvoyer Leserveurindiqueaunavigateurdesupprimerlecontenudes champsd'unformulaire Ils'agitd'unerponseunerequtecomportantl'entte range.Leserveurdoitindiquerl'enttecontentRange
26

IPW:programmationctclient

CoderponseHTTP
Code 30x 301 302 Message Redirection MOVED FOUND METHOD Description Cescodesindiquentquelaressourcen'estplus l'emplacementindiqu Lesdonnesdemandesontttransfresune nouvelleadresse LesdonnesdemandessontunenouvelleURL, maisontcependantpeuttretdplaces depuis... Celaimpliquequeleclientdoitessayerunenouvelle adresse,enessayantdeprfrenceuneautre mthodequeGET SileclientaeffectuunecommandeGET conditionnelle(endemandantsiledocumentat modifidepuisladernirefois)etquele documentn'apastmodifiilrenvoiececode.
27

303

304

NOT MODIFIED

IPW:programmationctclient

CoderponseHTTP
Code Message
40x 400 Erreurdueauclient BADREQUEST

Description
Cescodesindiquentquelarequteestincorrecte Lasyntaxedelarequteestmalformuleouest impossiblesatisfaire Leparamtredumessagedonnelesspcificationsdes formesd'autorisationacceptables.Leclientdoit reformulersarequteaveclesbonnesdonnes d'autorisation Leclientdoitreformulersademandeaveclesbonnes donnesdepaiement L'accslaressourceesttoutsimplementinterdit Classique!Leserveurn'arientrouvl'adresse spcifie.
28

401

UNAUTHORIZED

402 403 404

PAYMENT REQUIRED FORBIDDEN NOTFOUND

IPW:programmationctclient

CoderponseHTTP
Code
50x 500

Message
Erreurdueauserveur INTERNALERROR NOTIMPLEMENTED BADGATEWAY

Description
Cescodesindiquentqu'ilyaeuuneerreurinternedu serveur Leserveurarencontruneconditioninattenduequil'a empchdedonnersuitelademande(commequoiil leurenarrivedestrucsauxserveurs...) Leserveurnesupportepasleservicedemand(onnepeut pastoutsavoirfaire...) Leserveurareuunerponseinvalidedelapartduserveur auquelilessayaitd'accderenagissantcommeune passerelleouunproxy Leserveurnepeutpasvousrpondrel'instantprsent,car letraficesttropdense(toutesleslignesdevotre correspondantsontoccupesveuillezrappeler ultrieurement) Larponseduserveurattroplonguevisvisdutemps pendantlequellapasserelletaitprparel'attendre (letempsquivoustaitimpartiestmaintenantcoul...)

501 502

503

SERVICEUNAVAILABLE

504

GATEWAYTIMEOUT

IPW:programmationctclient

29

Plan
3 3 3

3 3 3

ModlesdeprogrammationvialeserviceWeb ProtocoleHTTP HTML q BALISES CascadingStyleSheet Javascript Appletjava

IPW:programmationctclient

30

LangageHTML
3

Langagebalises: q Unebalise:uneinstructiondemiseenforme q Unebalise:contientdestexteset/oudesautresbalisesautorises q Unebalise:structureletexte q Avant:unebalise:miseenforme Navigateur:recherchedesbalisesetinterprtation q <NOM_DE_BALISE>.</NOM_DE_BALISE> q &(caractresspciaux):"&#codeascii;".Ex: x ilya:&amp;/&;&lt;/<;&gt;/> x &eacute;/(notelescaractress'obtiennentparla&+lettre+accent;les accentstantacute,grave,circ,cedil,tildeetaussilesligaturesaveclig,e.g. &aelig;/). Lienshypertexte: q ChaquedocumentHTMLpeuttrereprsentparunURLcommeune ressourcesurInternet. q UndocumentHTMLpeutcontenirdesliensverslesautresdocumentsHTML oulesautressourcesdedonnes(multimdia,programme) Outildevalidation:http://validator.w3.org
31

IPW:programmationctclient

FichierHTMLminimum
3

Versionhtml4.01 <!DOCTYPEHTMLPUBLIC"//W3C//DTDHTML4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <HTML> <HEAD> <TITLE> </TITLE> </HEAD> <BODY> </BODY> </HTML>

IPW:programmationctclient

32

DTD
3 3

NotionlieXML(eXtensibleMarkupLanguage) DTD(DocumentTypeDefinition):vrifierqu'undocumentXMLest conformeunesyntaxedonne(modle). q unegrammaire q documentvalideparrapportuneDTD UneDTDdfiniede2faons: q sousformeinterne(inclurelagrammairedansledocument) q sousformeexterne(fichierlocalouURLcontenantlagrammaire)

IPW:programmationctclient

33

DTD
3 3

Dfinitiondunlmentsuivantlasyntaxe:<!ELEMENTNomModle> Modle q ANY:L'lmentpeutcontenirtouttypededonnes q EMPTY:L'lmentnecontientpasdedonnesspcifiques q #PCDATA:L'lmentdoitcontenirunechanedecaractres x Lemotcl#PCDATAdoitncessairementtrecritentreparenthses,sinon risqued'obteniruneerreurduparseur.


Signification Exemple

Oprateur

+ * ? | , ()

L'lmentdoittreprsentauminimumunefois L'lmentpeuttreprsentplusieursfois(ouaucune) L'lmentpeuttreoptionnellementprsent L'lmentAoul'lmentBpeuventtreprsents L'lmentAdoittreprsentetsuividel'lmentB Lesparenthsespermettentderegrouperdeslmentsafin deleurappliquerlesautresoprateurs

A+ A* A? A|B A,B (A,B)+


34

IPW:programmationctclient

ExempledeDTD
3 3 3 3 3

<!ELEMENTpersonne(nom,prenom,telephone),email?> <!ELEMENTnom(#PCDATA)> <!ELEMENTprenom(#PCDATA)> <!ELEMENTtelephone(#PCDATA)> <!ELEMENTemail(#PCDATA)> <personne> q <nom>Renevier</nom> q <prenom>Philippe</prenom> q <telephone>04.</telephone> q <email>Philippe.Renevier@unice.fr</email> </personne>
35

IPW:programmationctclient

DTD
3 3

Attribut:<!ATTLISTElmentAttributType> Typereprsenteletypededonnedel'attribut,ilenexistetrois: q littral:unechanedecaractres,motclCDATA q l'numration:unelistedevaleurspossiblespourlimiterlechoixdel'utilisateur.Syntaxe x <!ATTLISTElmentAttribut(Valeur1|Valeur2|...)> x <!ATTLISTElmentAttribut(Valeur1|Valeur2)"valeurpardfaut">(valeurpar dfautentreguillemets) q atomique:identifiantunique,motclID. Caractreobligatoiredunattribut(optionnel):lefairesuivredunmotclparticulier: q #IMPLIED:optionnel q #REQUIRED:obligatoire q #FIXED:valeurpardfaut(prciserentreguillemets)sinondfini. <!ATTLISTdisqueIDdiskID#REQUIREDtype(K7|MiniDisc|Vinyl|CD)"CD">

IPW:programmationctclient

36

DTD
3

Entits:dclarerungrouped'lmentssousunnomafindenepasavoirrcrire cesderniersplusieursfoisdanslaDTD q unemeilleurelisibilit q uncontrleaccrusurlecontenu q uneplusgrandefacilitdemisejour Ondistingueplusieurstypesd'entitsdansXML: q lesentitsgnrales x <!ENTITYnom_de_l_entite"Contenudel'entite"> x <!ENTITYsite"http://deptinfo.unice.fr/~renevier/L2"> x usage:<site>&site;</site> q lesentitsparamtres x <!ENTITY%nom_de_l_entitedefinition> q lesentitscaractres x &amp;:& &lt;:< &gt;:> &apos;: &quot;: x <!ENTITYnom_de_l_entite"&#xCODEHEXA;"> x <!ENTITYccedille"&#x00E7;">
37

IPW:programmationctclient

DclarationdeDTDHTML4.01
3

HTML4.01strictDTD:tousleslmentsetattributsdclarsetnon dprcis(deprecated)etquinesontpasliauframeset. q <!DOCTYPEHTMLPUBLIC"//W3C//DTDHTML4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> HTML4.01transitionalDTD:strictDTD+deprecated(prsentation visuelle). q <!DOCTYPEHTMLPUBLIC"//W3C//DTDHTML4.01Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> HTML4.01FramesetDTD:transitionalDTD+frame. q <!DOCTYPEHTMLPUBLIC"//W3C//DTDHTML4.01Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">

IPW:programmationctclient

38

LangageHTML
3

BALISESDEBASE q Formatgnraldebalise: x Lesbalisesconteneurs:lesbalisescontiennentdetextesetdesbalises autorises.Unebaliseconteneurestutilisepourprsenteroustructurerle texteetlesbalisesquiluiappartiennent. Exemple:<H1>Mondocument</H1><!titre> x Lesbalisesvides:quisontdestinesinsrerunlmenthorsdutexte dansledocument:sparateur,sautparagraphe,sautdeligne,image, Exemple:<HR/><!ajouterunsparateurhorizontal> Balisesconteneur <nom_Balise{attribut="val"}> Corps_balise(texteetbalises) </nom_Balise> Balisesvides <nom_Balise{attribut="val"}/>

{attibut="val"}:listedecouplesattribut=valsparspardesespaces
IPW:programmationctclient 39

PropritsdesBaliseshtml
3

Propritsgnrales(maispassystmatiques) id,class(documentwideidentifiers) lang(languageinformation),dir(textdirection) title(elementtitle) style(inlinestyleinformation) onclick,ondblclick,onmousedown,onmouseup,onmouseover, onmousemove,onmouseout,onkeypress,onkeydown,onkeyup(intrinsic events)

3 3 3 3

IPW:programmationctclient

40

BalisesHTML
3 3 3 3 3 3 3 3

3 3

Balisesstructurelles Balisescontenantdutexte Balisehypertext Balisesdelistes Balisesdemiseenforme(dprcies!!) Balisesdetable(tableaux) Balisesdeformulaire Balisesdobjets,imagesetapplets q lesimagescliquables BalisesdeFrame BalisesMeta(enttes)

IPW:programmationctclient

41

BalisesStructurelles
3 3

IPW:programmationctclient

HTML:dfinitiondudocument q unhead,unbody q Starttag:optional,Endtag:optional HEAD:partiecomprenantlesenttesetmetadonnesdudocument q UnTITLEobligatoire q META,SCRIPT,STYLE,etc.optionnelles q Starttag:optional,Endtag:optional TITLE:titredudocument q Titredelapage(enhautdunavigateur) q Contientdutexte q Starttag:required,Endtag:required BODY:corpsdudocument q Starttag:optional,Endtag:optional q Partiecentraledunavigateur q blockouSCRIPT q INSetDEL q block:P|H1|H2|H3|H4|H5|H6|OL|UL|DL|PRE|DIV|NOSCRIPT| BLOCKQUOTE|FORM|HR|TABLE|FIELDSET|ADDRESS q Attributspcifique:onload,onunload exemple/baliseStruct.html

42

BalisesStructurelles(regroupement)
3

DIV
q

3 3

flow:blockouinline q inline: x texte(PCDATA) x phrase:EM|STRONG|DFN|CODE|SAMP|KBD|VAR|CITE|ABBR| ACRONYM x special:A|IMG|OBJECT|BR|SCRIPT|MAP|Q|SUB|SUP|SPAN|BDO x formulaire:INPUT|SELECT|TEXTAREA|LABEL|BUTTON x inlineinclutaussifontstyle:TT|I|B|BIG|SMALL(depreciated) q Starttag:required,Endtag:required SPAN q inline q Starttag:required,Endtag:required nefontqueregroup:partagedestyle,dhtml,etc. exemple/baliseDivSpan.html
43

IPW:programmationctclient

BalisesStructurelles(titres)
3

H1|H2|H3|H4|H5|H6 q inline q Rendupardfautdpendantdunavigateuretdelaplateforme q Starttag:required,Endtag:required Pluslindiceestpetit,plusletitreestimportant Enprime:ADRESS q inline q Starttag:required,Endtag:required

exemple/baliseH.html
44

IPW:programmationctclient

BalisesTextuelles(phrases)
3

EMemphasis,STRONGstrongeremphasis,DFNdfinition,CODE boutdecode,SAMPsample,KBDkeyboard:texteentrerpar l'utilisateur,VARvariabled'unprogramme,CITEcitationouune rfrence,ABBRabbrviation,ACRONYM q phraseoufontstyle q Starttag:required,Endtag:required exemple/balisePhrase.html

IPW:programmationctclient

45

BalisesTextuelles(quotationsetindices)
3

BLOCKQUOTE q blockouSCRIPT q blocklevel;citationlongue q Attributspcialcite(uri) q Starttag:required,Endtag:required Q q inline(citationcourte) q Attributspcialcite(uri) q Starttag:required,Endtag:required indiceSUB,exposant:SUP q inline q Starttag:required,Endtag:required exemple/baliseQ.html

IPW:programmationctclient

46

BalisesTextuelles(lignesetparagraphes)
3

P(paragraph) q inline:pasde<P>dansun<P>!! q blocklevel q Starttag:required,Endtag:optional BR(linebreak) q vide! q note:pourunespacenoncassable&nbsp;(ou&#160;or&#xA0;):non breakablespace q Starttag:required,Endtag:forbidden PRE(texteprformat) q espaceetretourslaligneconserv q inlinesaufIMG|OBJECT|BIG|SMALL|SUB|SUP q Starttag:required,Endtag:required exemple/baliseP.html
47

IPW:programmationctclient

BalisesTextuelles(changement)
3

INSetDEL q flow(blockouinline) q spciaux:tanttblockleveltanttinline(maispaslesdeux) q Starttag:required,Endtag:required q Attribut:cite(uri)etdateTime YYYYMMDDThh:mm:ssTZD:19941105T08:15:3005:00 YYYY=fourdigityear:1994 MM=twodigitmonth(01=January,etc.) DD=twodigitdayofmonth(01through31) hh=twodigitsofhour(00through23)(am/pmNOTallowed) mm=twodigitsofminute(00through59) ss=twodigitsofsecond(00through59) TZD=timezonedesignator:05:00cartavecGMT(cteestUS) exemple/baliseINS.html

IPW:programmationctclient

48

Balisehypertext
3

baliseanchor(ancre):A. q rfrencerunepageparsonURI x <Ahref="http://deptinfo.unice.fr">.</A> x Starttag:required,Endtag:required q dfinirunenouvelleattachepourtrelacibled'autrelien x balisevide x <Aid="nomdel'ancre"/>(idouname)ou<A></A> x rfrence:href="URI#nomdel'ancre(lienlocalsiURI="") q inlineexceptA q Attributs x name(id) x href(uri) x hreflang=langcode:languedeladestination,seulementquandilyahref x type=contenttype(MIMETYPE:ftp://ftp.isi.edu/in notes/iana/assignments/mediatypes/.) x rel=relationentreledocumentcourantetlacible(quandhref) Alternate,Stylesheet,Start,Next,Prev,Contents,Index,Glossary, Copyright,Chapter,Section,Subsection,Appendix,Help,Bookmark x rev=idemrel(danslesensinverse) x charset=encodagedelacible
49

IPW:programmationctclient

BaliseListes
3

UL(nonordonne)ouOL(ordonne) q (LI)+ q Starttag:required,Endtag:required q Attributsdprcis:type(1,A,a,i,I);start(OL:unevaleurdedbut);compact LI(listitem) q flow q Starttag:required,Endtag:optional q Attributsdprcis:type,value(unevaleur),compact DL(Dfinitionlist) q (DT|DD)+ q Starttag:required,Endtag:required DT(term)ouDD(dfinition) q DT:inlineetDD:flow q Starttag:required,Endtag:optional exemple/basileList.html
50

IPW:programmationctclient

Vous aimerez peut-être aussi