Question

Un développeur senior m'a demandé aujourd'hui quel type de doctrine utiliser si j'écrivais quelque chose (personnel / non commercial) pour le Web ouvert.

J'ai répondu, <!doctype html> auquel j'ai été accueilli avec un air de choc, d'horreur et de surprise, puis de m'expliquer.

À mon avis, c'est un bon candidat car les navigateurs actuels (IE, FF, Opera, Safari) vont l'examiner et basculer le contenu en mode standard, même s'ils n'implémentent pas HTML5. Si je veux réellement tirer parti des éléments HTML5, je peux utiliser du javascript pour créer une référence à ces balises non reconnues, par exemple, dans IE (par exemple, document.createElement('article');), puis les utiliser comme s'il s'agissait de parties natives du DOM. .

Était-ce vraiment une si mauvaise réponse? Qu'auriez-vous répondu et pourquoi?

Était-ce utile?

La solution

Bien que <! doctype html > convienne parfaitement, le La recommandation de WHAT-WG consiste à utiliser <! DOCTYPE html > , au cas où vous serviriez le document au format XHTML5 (auquel cas la capitalisation devient importante).

@David Dorward (incapable de commenter pour le moment, alors…) Je ne suis pas d'accord avec votre représentation de HTML5. Bien que les navigateurs prennent actuellement mal en charge les nouveaux éléments (éléments structurels, etc.), HTML5 est à 90% HTML4 avec une gestion des erreurs définie (enfin). Les navigateurs analysent HTML5 de la même manière que HTML4. Par conséquent, si vous n’utilisez pas d’éléments structurels ( div fonctionne toujours), les différences sont minimes. Validator.nu donne de meilleurs résultats que le validateur HTML4.1 Strict de W3, se développe plus rapidement et est basé sur une spécification plus détaillée.

Mon conseil serait d'ignorer les nouveautés de HTML5 pour le moment et de les traiter comme une spécification plus précise de HTML4. Il n'y a pas d'inconvénients et plusieurs avantages.

Autres conseils

<! doctype html > semble correct ..

  

Ce qui est bien avec ce nouveau DOCTYPE, en particulier, c’est que tous les navigateurs actuels (IE, FF, Opera, Safari) le verront et basculeront le contenu en mode standard, même s’ils n’implémentent pas le HTML5. Cela signifie que vous pouvez commencer à écrire vos pages Web à l'aide de HTML5 dès aujourd'hui et qu'elles durent très longtemps. / http://ejohn.org/blog/html5-doctype/

  

Était-ce vraiment une si mauvaise réponse?

<! DOCTYPE html > n'était pas une mauvaise réponse.

  

Qu'auriez-vous répondu et pourquoi?

J'aurais donné ma réponse préenregistrée sur le choisir un type de doctrine en général, même Bien que j'utilise <! DOCTYPE html > pour mes nouvelles publications personnelles.

HTML5 - Outils d’assurance qualité expérimentaux et immatures dont la cible est toujours en mouvement. (Et si vous devez utiliser JavaScript (qui peut être désactivé) pour que les éléments structurels de base soient reconnus, alors "eeep!").

XHTML - requiert le piratage de l’annexe C pour fonctionner avec Internet Explorer. Les DTD sont moins expressives que le HTML 4.

HTML 4 - mature, bien testé, principalement pris en charge par les navigateurs, aucun piratage requis. Ne peut pas être analysé par les outils XML (mais peu de gens l’utilisent quand même en interne sur les pages Web)

Strict - un bon noyau.

Transitionnel - Strict plus des choses qui (à quelques exceptions près) devraient être évitées.

Par conséquent, HTML 4.01 Strict serait probablement la meilleure option. Évidemment, il existe des exceptions, mais j’en ferais le point de départ.

J'aurais répondu la même chose que vous parce que vous avez raison et que je n'utilise plus aucun autre type de doctrine pour les nouvelles pages Web pour les raisons indiquées dans plusieurs bons liens ci-dessous (y compris la réponse d'Anne ci-dessous parce qu'il travaille pour Opera).

Tout d'abord, je dirais que le Doctype n'aurait pas dû être introduit en premier lieu. Vous ne pouvez pas servir de pages de navigateur croisées avec autre chose que le type MIME text / html et ne me lancez pas dans DTD.

Tout ce que le doctype fait est de déclencher le mode standard et n’est nécessaire que parce que beaucoup de sites ne sont pas construits selon les standards, sans parler de la spécification w3c. Si le doctype n'a qu'un seul but, alors simplifiez-le. HTML5 fait exactement cela. Les développeurs ne doivent pas nous ennuyer en prétendant que le doctype a une autre signification que d'activer ou de désactiver le mode standard.

Le développeur "senior" devrait poursuivre son travail et cesser de harceler les gens à propos de choses aussi insensées.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top