Outils de développement

Auteur :
  • François Brucker

Introduction au web (en particulier html et css) via l'utilisation des outils de développements de chrome.

On se promet qu'on va l'utiliser pour tous nos développement de pages web.

Installation

On utilisera chrome pour ce tuto. Ils existent cependant pour quasi tous les navigateurs web.

Chrome

On trouve les Outils de développement dans :

Autres navigateurs

Safari

Firefox

Utilisation

On va regarder et utiliser les différents onglets des outils de développements.

Pour accéder aux outils de développement, suivez la doc : https://developer.chrome.com/docs/devtools/open/.

Le menu Elements

Le rendu d'une page web est faite en combinant trois parties :

Pour un même fond, la forme peut changer radicalement. Le site http://www.csszengarden.com/ en montre un effet extrême. Tout en bas de la page, vous pouvez changer le css pour changer la présentation.

Testez vous-même les différences.en changeant de design (l'emplacement des liens va changer selon le design bien sur...)

Description

On va utiliser l'onglet éléments des outils de développement.

  1. aller sur le site : http://www.csszengarden.com/
  2. ouvrez les outils de Développement

Vous devriez avoir quelque chose de ce type :

outils de développement

Placez vous dans le menu Elements des outils de développement en cliquant dessus. Il doit être maintenant souligné en bleu. Il doit y avoir 3 parties, les unes en dessous des autres :

  1. le menu des outils de développement : "une flèche", une "image de mobile" et un menu commençant par "Elements", puis "Console", ... et tout à droite "3 points verticaux".
  2. une partie avec un menu commençant par "Styles", puis "Computed", "Layout", "Event Listeneners", ...
  3. une console (si elle n’apparaît pas : " 3 points verticaux à droite du menu des outils de développement" > "Show console drawer")

On verra plus tard la signification précise de tout cela, mais pour l'instant on retiendra que :

Expérimentation

Lorsque l'on crée des pages, il faut toujours voir le rendu le plus souvent possible. En effet, il n'y a pas de compilation du html/css donc les erreurs sont nombreuses. Avoir un moyen de voir rapidement où se situent les soucis et quelles sont les propriétés utilisées est cruciale.

En cliquant sur la flèche du menu (à gauche de Elements) : elle doit devenir bleue. On peut ensuite voir les différentes parties de la page en glissant sur la partie gauche du navigateur où est rendue la page ou sur la partie html.

utilisation du menu éléments

Dans l'image ci-dessus :

Modifions tout ça :

Changer la couleur change la couleur de tout le texte ! C'est normal, la couleur (l'attribut color) est associé non pas à notre paragraphe, mais au bloc body qui est le bloc contenant toute la structure à afficher (cherchez le dans le html) :

body {
    color: #ea1a1a;
    background: #fff;
    font-family: 'Libre Baskerville', sans-serif;
    font-size: 70%;
}

Cela n'a en revanche pas affecté les titres. En cliquant sur un titre on voit que la couleur issue de body est barrée.

couleur du body non utilisée

Elle est surchargée par la propriété color associé à h3, plus précise car le bloc h3 est à l'intérieur du bloc body (correspond à un titre de moyenne importance). S'il n'y avait pas eu de propriété css associé à h3, la couleur du titre aurait également été rouge :

h3 {
    margin: 2em 0 0 0;
    color: #2e484c;
    font-family: 'Julius Sans One', sans-serif;
    font-size: 1.8em;
    font-weight: normal;
    text-transform: uppercase;
}

couleur du h3

Allez sur le site du monde :

  • Changez la couleur des titres En mettant un vert qui pète ! Si vous voulez facilement voir les couleurs et leurs nombres associé, allez faire un tour du côté de https://color.adobe.com.
  • Changez les titres du https://www.lemonde.fr/ en quelque chose de plus joyeux. Et changez la couleur.

Le journal des bonnes nouvelles

Le menu sources

tout les fichiers utilisés pour créer la page, réparties par urls.

Que charge le site du https://www.lemonde.fr/ ?

le menu network

Montre tous les appels réseaux de la page web (ce qui correspond peu ou prou aux fichiers chargés) et le temps. C'est très utile pour déterminer la charge réseau de son site, en particulier lorsque l'on crée son propre site avec de grosses images, de la vidéo, etc* et que tout devient lent une fois mis sur un site distant.

Il ne faut jamais oublier que le réseau, même avec la fibre, ça ralenti le chargement.

Pour le site http://www.csszengarden.com/, voilà ce que donne l'onglet network :

network

statut d'une requête

Le status est le résultat de l'appel en utilisant le protocole http : https://fr.wikipedia.org/wiki/Liste_des_codes_HTTP. 200 correspond à un succès de la requête :

Si on demande à chrome de chercher un site qui n'existe pas sur http://www.csszengarden.com/, comme http://www.csszengarden.com/mon_truc_en_plume/ : on rendra un statut de 404 : le serveur situé à http://www.csszengarden.com/ ne sait pas quoi faire avec la demande.

Pour apprendre facilement les statuts http, rien de tel que : https://http.cat/

Essayez sur le site du https://www.lemonde.fr/.

Le menu Application

Montre toutes les choses stockées sur votre ordinateur par le site, comme les cookies par exemple.

Les cookies ne sont pas tous mauvais. Ils sont la seule façon pour un site de se rappeler de vous.

Exemple d'utilisation d'un cookie :

  1. vous vous connectez à un site. Il vous envoie un cookie.
  2. à chaque fois que vous vous reconnectez à ce site, le navigateur cherche s'il n'existe pas un cookie avec le même nom que le site. Si oui, il l'envoie en même temps que la requête.

Si les cookies n'existaient pas, il serait impossible au serveur de se rappeler de vous. En particulier, pas de connexion possible (il faudrait envoyer son mot de passe à chaque appel de page par exemple).

Maintenant, c'est sur que c'est aussi pour vous surveiller. Encore une fois allez sur le site du monde et regardez les domaines associées au cookie du monde. Les domaines www.facebook.com, .doubleclick.net et autres .weborama.fr c'est pas pour faire joli...