X-Git-Url: http://git.nguyen.vg/gitweb/?a=blobdiff_plain;f=prog_internet%2Fprog_internet_05.xhtml;h=3c32ca032e864a008979ec4fd8c98108dcdc204a;hb=1a01baf63e59f5359c4af5cf2159b1e30f47ee74;hp=91d1ff453ca7c4b7b87c1911f45d88828993115e;hpb=0bd2fb253ff8486acc783de47465ea223e54d952;p=hacks%2FsimpleWebSlides.git diff --git a/prog_internet/prog_internet_05.xhtml b/prog_internet/prog_internet_05.xhtml index 91d1ff4..3c32ca0 100644 --- a/prog_internet/prog_internet_05.xhtml +++ b/prog_internet/prog_internet_05.xhtml @@ -4,7 +4,7 @@ > - Programmation Internet + CSS @@ -35,6 +35,7 @@ +

Programmation Internet

@@ -42,25 +43,7 @@
kn@lri.fr
http://www.lri.fr/~kn
- -
-

Plan

-
-
    -
  1. Systèmes d'exploitation
  2. -
  3. Réseaux et Internet
  4. -
  5. Le Web
  6. -
  7. CSS -
      -
    • 4.1 Introduction
    • -
    • 4.2 Boîtes
    • -
    • 4.3 Selecteurs
    • -
    -
  8. -
-
-
- +

Introduction

Cascading Style Sheets (CSS)

@@ -87,445 +70,420 @@
-

L'attribut style

- Un lien]]> +

L'attribut style

+ color:redUn lien]]>

Apperçu:

Un lien

-

Inconvénient: il faut copier l'attribut - style pour tous les liens de la page. -

+

Inconvénients :

+
  • il faut copier l'attribut + style pour tous les liens de la page
  • +
  • modification de tous les éléments difficiles
  • +
-

Internet

-
    -
  • Ensemble de logiciels et protocoles basés sur TCP/IP -
  • -
  • Modèle Client/Serveur
  • -
  • Un serveur fournit un service: -
      -
    • courriel
    • -
    • transfert de fichier (ftp)
    • -
    • connexion à distance (ssh)
    • -
    • Web (http)
    • -
    -
  • -
  • Plusieurs services peuvent être actifs sur la même - machine (serveur). Un port (identifiant numérique) - est associé à chaque service. Sur Internet, un service est - identifié par: -
      -
    • L'adresse IP de la machine sur lequel il fonctionne
    • -
    • Le numéro de port sur lequel le programme attend les - connexions
    • -
    -
  • -
+

L'élément style

+ + + … + + + + Lien 1 Lien 2 + + ]]> +

Apperçu :

+

+ Lien + 1 + Lien 2 + +

+

Inconvénient : local à une page

-

Exemples de services

-
- - - - - - - - - - - - - - - -
ServiceProtocolePortDescription
ftp File Transfer Protocol - 20,21 Transfert de fichiers
telnet Network Virtual - Terminal 23 Shell à distance
ssh Secure Shell 22Shell à - distance crypté
mailSimple Mail Transfer - Protocol 25 Envoi de mail
pop Post Office - Protocol 110Récupération de mail
imap Internet Message Access - Protocol 143Synchronisation de mails
nslookup Domain Name - System 42 Serveur de noms
http Hyper Text Transfer Protocole80Web
+

Fichier .css séparé

+

Fichier style.css:

+

+ a { color: red; } +

+

Fichier test.html:

+

+ + + … + ]]><link href="style.css" type="text/css" rel="stylesheet" /> + + … + ]]> +

+

Modifications & déploiement aisé

-

World Wide Web (1/2)

+

Syntaxe

+

Une propriété CSS est définie en utilisant la + syntaxe: +

+

nom_prop : val_prop + ;

- +

Boîtes

-

World Wide Web (2/2)

-

Concepts clé:

+

Unités de longueur

+

CSS permet de spécifier des longueurs comme valeurs de + certaines propriétés (position et taille des éléments, épaisseur + des bordures, …). Les longueurs doivent comporter une + unité. Les unités reconnues sont:

- - - + + + + + + + + + + +
URL localisation d'une page Web (« adresse de - la page »)
HTTP protocole de communication entre un - client et un serveur Web
HTML langage de description des pages - Web
px pixel
in pouce (2,54cm)
cm centimètre
mm millimètre
pt point (1/72ème de pouce, 0,35mm)
pc pica (12 points)
em facteur de la largeur d'un caractère de la police + courante
ex facteur de la hauteur d'un caractère « x » + de la police courante
% pourcentage d'une valeur particulière + (définie par propriété)
vh viewport height (% de la + hauteur de la partie visible de la page)
vw viewport + width (% de la largeur de la partie visible de la + page)
-

Évolutions récentes (Web 2.0, internet mobile, Cloud, …)

-
-
-

Plan

-
    -
  1. Systèmes d'exploitation
  2. -
  3. Réseaux et Internet
  4. -
  5. Le Web -
      -
    • 3.1 Internet et ses services
    • -
    • 3.2 Fonctionnement du Web
    • -
    • 3.3 Adressage des documents Web
    • -
    • 3.4 Le protocole HTTP
    • -
    • 3.5 HTML, le format des documents
    • -
    -
  6. -
-
-
-

Fonctionnement du Web

-
- -
+

Boîte

+

Chaque élément de la page HTML possède une boîte + rectangulaire qui délimite le contenu de l'élément: +

+
+ ← width →
+ margin (marge)
+ + border (bordure)
+ + padding (ajustement)
+ + Lien 1 + + +
+
+
+
↑



+ height



↓ +
+
+ +

La taille t du contenu est calculée pour que:
+ (height|width) = padding + margin + border + t +

- -
-

Côté client

-

Le navigateur :

- -
-
-

Côté serveur

-
- -
-

Plan

-
    -
  1. Systèmes d'exploitation
  2. -
  3. Réseaux et Internet
  4. -
  5. Le Web -
      -
    • 3.1 Internet et ses services
    • -
    • 3.2 Fonctionnement du Web
    • -
    • 3.3 Adressage des documents Web
    • -
    • 3.4 Le protocole HTTP
    • -
    • 3.5 HTML, le format des documents
    • -
    -
  6. -
+ span { + padding:10pt 20pt 5pt 0pt; + margin:10pt 5pt; + border-width:3pt; + border-color:red blue green; + border-style:solid dotted; + } +
Du texte dans une boite +
-

Adressage des documents Web (1/3)

+

Modes d'affichage

+

La propriété display contrôle le mode + d'affichage d'un élément: +

- + + + + +
URL Uniform Resource Locator - identifie un document sur internet
nonel'élément n'est pas dessiné et n'occupe + pas d'espace
inlinel'élément est placé sur la ligne + courante, dans le flot de texte. La taille du contenu (avec + les marges, ajustements et bordures) dicte la + taille de la boîte, height et width sont + ignorés (, , , , …]]> + sont inline par défaut).
blockl'élément est placé seul sur sa + ligne. La taille est calculée automatiquement mais peut être + modifiée par width et height + (,

,

, …]]> + sont block par défaut)

inline-blockpositionné comme inline + mais la taille peut être modifiée comme pour block
-

Une URL se décompose en 3 partie

- -

Syntaxe (simplifiée) :

- protocole://adresse/document -

Exemple :

- http://www.lri.fr/~kn/teach_fr.html
-
-

Adressage des documents Web (2/3)

-

On peut aussi préciser un numéro - de port, des paramètres - et un emplacement : -

- protocole://adresse:port/document?p1=v1&p2=v2#empl -

Exemple :

- http://www.youtube.com:80/results?search_query=tbbt#search-results -

Le serveur utilise les paramètres passés par le client dans - l'URL pour calculer le contenu de la page (changer la - chaîne « tbbt » ci-dessus et essayer)

+

Modes d'affichage (exemples)

+
+
+ a { display: inline; … } +
+
+ Le lien 1, + le lien 2 et + le lien 3. +
+
+
+
+ a { display: block; … } +
+
+ Le lien 1, + le lien 2 et + le lien 3. +
+
+
+
+ a { display: inline-block; + width: 4em; + height: 2em; + … } +
+
+ Le lien 1, + le lien 2 et + le lien 3. +
+
-

Adressage des documents Web (3/3)

-

- La racine d'un site Web - (ex: http://www.lri.fr/) correspond - à un répertoire sur le disque du serveur - (ex: /var/www). Le fichier

- http://www.lri.fr/index.html -

se trouve à l'emplacement

- /var/www/index.html -

Le serveur Web peut aussi effectuer des réécritures - d'adresses :

- http://www.lri.fr/~kn/index.html -

devient

- /home/kn/public_html/index.html -
-
-

Plan

-
    -
  1. Systèmes d'exploitation
  2. -
  3. Réseaux et Internet
  4. -
  5. Le Web -
      -
    • 3.1 Internet et ses services
    • -
    • 3.2 Fonctionnement du Web
    • -
    • 3.3 Adressage des documents Web
    • -
    • 3.4 Le protocole HTTP
    • -
    • 3.5 HTML, le format des documents
    • -
    -
  6. -
+

Positionnement

+

Le type de positionnement est donné par la + propriété position

+ + + + + +
staticpositionnement « automatique + »
fixedpositionnement par rapport à la fenêtre + du navigateur (la boîte est supprimée du flot)
relativepositionnement « relatif » par + rapport à la position normale
absolutepositionnement « absolu » par rapport + à l'ancêtre le plus proche qui n'est pas static
+

Pour fixed, relative et absolute, + les propriétés top, bottom, left + et right dénotent les décalages respectifs. +

-

Caractéristiques du protocole HTTP

- ]]> +

+ +

Autres propriétés

-

Format des messages HTTP

-

Les messages ont la forme suivante

- -
-

Démo

-
-
-

Plan

-
    -
  1. Systèmes d'exploitation
  2. -
  3. Réseaux et Internet
  4. -
  5. Le Web -
      -
    • 3.1 Internet et ses services
    • -
    • 3.2 Fonctionnement du Web
    • -
    • 3.3 Adressage des documents Web
    • -
    • 3.4 Le protocole HTTP
    • -
    • 3.5 HTML, le format des documents
    • -
    -
  6. -
-
-
-

HTML

-

- HyperText Markup Language : langage de mise en forme - de documents hypertextes (texte + liens vers d'autres - documents). Développé au CERN en 1989.
- 1991 : premier navigateur en mode texte
- 1993 : premier navigateur graphique (mosaic) - développé au NCSA (National Center for Supercomputing - Applications) -

+

Propriétés du texte

+

Certaines propriétés permettent d'alterer le rendu du texte + d'un élément

+ + + + + + +
directionltr ou rtl + (orientation du texte)
text-transform capitalize, uppercase, lowercase +
text-decoration underline, overline, line-through
text-align left, right, center, justify
text-indent longueur du retrait de paragraphe
-

Document HTML

- -
- - - - - - - -
Exemple Rendu par défaut
en gras ]]>Un - texte en gras
Un lien ]]>Un lien
-
  • Premièrement
  • -
  • Deuxièmement
  • - ]]>
      -
    • Premièrement
    • -
    • Deuxièmement
    • -
    +

    Propriétés de la police

    + + + + +
    font-familyliste de nom de polices séparées + par des virgules (Helvetica, sans, "Times New Roman")
    font-style normal, italic
    font-weight normal, lighter, bold, bolder
    font-size soit une longueur + soit xx-small, x-small, small, medium, + large, x-large, xx-large
    - -

    On dit que ]]> est une balise - ouvrante et ]]> une - balise fermante. On peut - écrire ]]> comme raccourci pour - ]]>. -

    - -
    -

    Historique du langage HTML

    - - - - - - - - -
    1973 GML, Generalised Markup Language développé chez -IBM. Introduction de la notion de balise.
    1980 SGML, Standardised GML, adopté par l'ISO
    1989 HTML, basé sur SGML. Plusieurs entreprises (microsoft, -netscape, ... ) interprètent le standard de manière -différente
    1996 XML, eXtensible Markup Language norme pour les -documents semi-structurés (SGML simplifié)
    2000 XHTML, version de HTML suivant les conventions - XML
    2008 Première proposition pour le nouveau standard, - HTML5
    2014Standardisation de HTML5
    +

    On peut aussi spécifier un descripteur de + police

    + + @font-face { + font-family: Toto; + src: url(toto.ttf); + } + a { font-family: Toto; } +
    - +

    Selecteurs

    -

    XHTML vs HTML

    -

    On utilise XHTML dans le cours. Différences avec HTML:

    -
      -
    • - Les balises sont bien parenthésées - ( ]]> </b> est interdit) -
    • -
    • Les balises sont en minuscules
    • -
    -

    Les avantages sont les suivants

    -
    • HTML autorise les mélanges majuscule/minuscule, de ne - pas fermer certaines balise … Les navigateurs corrigent ces - erreurs de manières différentes
    • -
    • Le document est structuré comme un programme - informatique (les balises ouvrantes/fermantes correspondent à - { et }). Plus simple à débugger.
    • -
    +

    Selecteurs

    +

    On peut sélectionner finement les éléments auxquels un style + s'applique

    + + + + + + + + + +
    xtous les éléments dont la balise + est x
    .foo tous les éléments dont + l'attribut class vaut foo
    #fool'élément dont l'attribut + id vaut foo (les id doivent être uniques)
    X Y tous les éléments + selectionnés par Y qui sont des descendants d'éléments + sélectionnés par X
    X > Y tous les éléments dont + selectionné par Y qui sont des fils d'éléments + sélectionnés par X
    a:visitedles liens déjà + visités
    a:linkles liens non + visités
    X:hoverélément selectionné + par X et survollé par la souris
    + div.foo ul li a:visited { color: red; }
    -
    -

    Rôle d'(X)HTML

    -

    Séparer la structure du document de - son rendu. La structure donne une sémantique au - document :

    -
      -
    • ceci est un titre
    • -
    • ceci est un paragraphe
    • -
    • ceci est un ensemble de caractères importants
    • -
    -

    Cela permet au navigateur d'assurer un rendu en fonction de la - sémantique. Il existe différents types de rendus:

    -
      -
    • graphique interactif (Chrome, Firefox, Internet Explorer, - …)
    • -
    • texte interactif (Lynx, navigateur en mode texte)
    • -
    • graphique statique (par ex: sur livre électronique)
    • -
    • rendu sur papier
    • -
    • graphique pour petit écran (terminal mobile)
    • -
    -
    -
    -

    Exemple de document

    -

    (liste des balises - données sur la feuille de TD 4!)

    -
    - - - - Un titre - - - -

    Titre de section

    -

    premier paragraphe de texte. On met - un lien ici. -

    - - ]]>
    -
    -
    -