Si une personne non technique vous demandait Qu'est-ce que HTML5, que répondriez-vous ?
Nouvelle spécification HTML. . .
Il offre aux navigateurs des capacités impressionnantes pour faire des choses qu'ils ne pouvaient pas faire auparavant. . . (Pour être précis, il devrait stipuler de nombreuses nouvelles normes interface pour les navigateurs, obligeant les navigateurs à implémenter des fonctions impressionnantes... Merci à Hong Maple Leaf)
Aux navigateurs De nombreuses nouvelles interfaces sont exposées. . .
De nombreux nouveaux effets ont été ajoutés. . .
La personne qui a posé la question n'a en fait pas compris la vraie question qu'elle voulait poser. La personne qui a répondu semblait comprendre, mais quelque chose semblait manquer. Des capacités impressionnantes, de nouvelles interfaces, des effets sympas, la première personne à répondre avait le vertige. Qu'est-ce que HTML, qu'est-ce que CSS, qu'est-ce que DOM et qu'est-ce que JavaScript ? La plupart des développeurs front-end les utilisent tous les jours, mais peu de gens pensent à la relation entre eux.
Tout d'abord, le nom complet du HTML est Hypertext Markup Language, qui est un langage informatique sous forme de balisage. En confiant ce langage de balisage à un analyseur spécialisé, certains effets d'interface peuvent être analysés. Le navigateur est un analyseur spécialisé dans l'analyse de ce langage de balisage. On dit que l'effet final est d'afficher une interface spécifique à l'écran, puis le navigateur doit convertir chaque marque en une structure de données interne, et cette structure de données est un élément DOM. Par exemple, une balise est une instance du type HTMLAnchorElement dans le monde interne du navigateur.
Un fichier HTML est comme un article écrit en langage de balisage hypertexte. Les articles ont généralement une structure, et aux yeux du navigateur, c'est du DOM. DOM décrit une série d'arborescences de nœuds hiérarchiques. (Mais à cette époque, le DOM existait encore à l'intérieur du navigateur et était écrit en langage C++)
Avec le développement de l'histoire, lorsque les gens ne se contentent plus de simplement afficher du texte, certains textes nécessitent une mise en évidence ou une attention particulière. ajouts. Le besoin de format est apparu lentement. Face au besoin des gens de contrôler l'effet d'affichage, la première et la plus simple solution consiste à ajouter des marqueurs. Ajoutez des balises de contrôle de style. À cette époque, des balises de contrôle de style telles que et
En fin de compte, les gens ont décidé d'abandonner la balise de style et d'ajouter un attribut de style à la balise d'élément. L'attribut de style contrôle le style de l'élément (la syntaxe de déclaration de style d'origine doit être très simple). Les propriétés originales des balises de style sont désormais devenues la syntaxe des propriétés de style, et les balises de style sont devenues des propriétés de style. Cela rend la logique beaucoup plus claire. Alors voici le problème :
Si un article contient trop de rhétorique, il suscitera inévitablement le dégoût des lecteurs. Si vous mettez à la fois les éléments et les effets d’affichage dans un seul fichier, il sera certainement difficile à lire.
S'il y a 10 éléments qui ont tous besoin d'un effet, faut-il écrire un style dix fois
Régler l'effet du élément parent Que cela ait un impact sur les sous-éléments, laissez-moi vous le dire
. . . . . . . . .
Il doit y avoir de nombreux problèmes similaires, c'est pourquoi des feuilles de style CSS et en cascade sont apparues, qui ont apporté des règles CSS, un sélecteur CSS, une déclaration CSS, des attributs CSS, etc. , résolvant ainsi les problèmes ci-dessus. La couche de langage de balisage a été résolue, mais le navigateur ne peut pas simplement rester les bras croisés et jouer, il doit fournir un support. Ainsi, lorsque le navigateur analyse un fichier statiquehtml, il parcourt l'intégralité du document html pour générer une arborescence DOM. Lorsque toutes les ressources de style sont chargées, le navigateur commence à créer une arborescence de rendu. L'arbre de présentation détermine comment chaque élément DOM doit être dessiné en fonction d'une série de déclarations CSS et après mise en cascade. Pour le moment, aucune interface n'est réellement affichée sur la page, et l'arbre de rendu est également une structure de données dans la mémoire du navigateur. Une fois l'arborescence de rendu terminée, la mise en page commence. C'est comme connaître la largeur et la hauteur d'un rectangle. Vous devez maintenant mesurer où le dessiner sur la toile et combien d'espace il occupe. Une fois ce processus terminé, c'est le processus de dessin, puis nous avons l'interface d'affichage que nous voyons.
Le problème de l'ajout de certains effets aux marques a été résolu et la roue de l'histoire a recommencé à avancer. Peu à peu, les gens ne se contentent plus des simples effets d’affichage et souhaitent une certaine interaction. À cette époque, la plupart des gens qui écrivaient du HTML ne comprenaient pas le développement logiciel. Vous vous moquez de moi ? Quand j'ai écrit la page d'activité, vous m'avez demandé d'utiliser le C++ ? Ce que fait le C++ est en effet un canon anti-aérien pour écraser les moustiques – surqualification et sous-utilisation. Laissons les guérilleros faire ce que l'armée régulière dédaigne de faire. À cette époque, Netscape a développé le langage JavaScript. À cette époque, le langage JavaScript n'était pas aussi populaire qu'aujourd'hui. univers.
JavaScript est un langage qui s'exécute dans le navigateur. Le texte HTML est statique. Il est impossible pour JavaScript de modifier les fichiers statiques, mais il peut gérer l'intérieur du navigateur. Mais le DOM à l'heure actuelle n'est pas le DOM d'aujourd'hui. Ce sont des objets C++ Soit JavaScript est converti en instructions C++ pour faire fonctionner ces objets C++, soit ces objets C++ sont empaquetés dans des objets natifs JavaScript. L’histoire a choisi cette dernière solution et a marqué cette fois la naissance officielle du DOM moderne. Cependant, l'histoire va parfois à rebours, et il y aura toujours quelques choses étranges dans l'histoire, comme IE est bizarre et toute sa famille, y compris Edge !
Marx était un charlatan, mais Engels était un bon camarade. La dialectique de la nature et le matérialisme historique sont de bonnes choses. Nous pouvons voir cela d’un point de vue historique. La source ultime de l’émergence et du développement des CSS, DOM et JavaScript est le HTML, Hypertext Markup Language. Les besoins des utilisateurs en matière de Web convergent finalement vers le HTML. Ainsi, chaque fois que l'histoire crée de nouvelles demandes, les changements finaux se produiront d'abord dans la spécification HTML.
Alors que l'interactivité ne peut pas répondre aux besoins des gens, le Web a introduit une nouvelle demande : la webapp. Pour répondre aux nouveaux besoins, la première chose à changer est la spécification HTML. À l'heure actuelle, le HTML4.0 existant ne peut plus répondre aux besoins croissants des gens. Par conséquent, HTML5 répond aux besoins de l'histoire. il est finalement sorti en 2014. Officiellement finalisé cette année ! HTML5 ajoutera certainement de nouvelles balises, mais pour le HTML traditionnel, HTML5 est une rébellion. Toutes les versions précédentes ne décrivaient l'interface JavaScript qu'en quelques mots, et l'espace principal était utilisé pour définir les balises, et tout le contenu lié à JavaScript était défini par la spécification DOM. La spécification HTML5 définit un grand nombre d'API JavaScript autour de la façon d'utiliser de nouvelles balises (de sorte que certaines API se chevauchent avec DOM et définissent les extensions DOM que les navigateurs doivent prendre en charge. De là, nous pouvons voir que HTML5 est certainement pas la version finale de HTML).
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!