HTML5 とは何かを学ぶ

怪我咯
リリース: 2017-04-05 15:06:50
オリジナル
1564 人が閲覧しました

技術者ではない人に、HTML5 とは何ですかと尋ねられたら、どう答えますか?

新しいHTML仕様。 。 。

以前はできなかったことを実行するための素晴らしい機能をブラウザーに提供します。 。 。 (正確に言うと、ブラウザー向けの多くの新しい インターフェース 標準を規定し、ブラウザーに素晴らしい機能を実装することを要求する必要があります...Hong Maple Leaf に感謝します)

多くの新しいインターフェースをブラウザーに公開しました。 。 。

新しいエフェクトがたくさん追加されました。 。 。

質問した人は実際に聞きたかった本当の質問を理解していませんでした。 答えた人は理解しているように見えましたが、何かが欠けているようでした。素晴らしい機能、新しいインターフェイス、クールなエフェクト、最初に答えた人はめまいを感じました。 HTML とは、CSS とは、DOM とは、JavaScript とは、ほとんどのフロントエンド開発者はこれらを毎日使用していますが、それらの間の関係について考える人はほとんどいません。

まず、HTMLの正式名称はHypertext Markup Languageといい、マークアップ形式のコンピュータ言語です。このマークアップ言語を特殊なパーサーに与えることにより、特定のインターフェイス効果を解析できます。ブラウザは、このマークアップ言語の解析に特化したパーサーです。最終的な効果は特定のインターフェイスを画面上に表示することであり、ブラウザは各マークを内部データ構造に変換する必要があり、このデータ構造は DOM 要素です。たとえば、 タグは、ブラウザの内部世界の HTMLAnchorElement タイプのインスタンスです。

HTMLファイルはハイパーテキストマークアップ言語で書かれた記事のようなもので、記事は通常構造を持ち、ブラウザから見るとDOMになります。 DOM は一連の階層ノード ツリーを記述します。 (ただし、この時点では、DOM はまだブラウザー内に存在し、C++ 言語で書かれていました)

歴史の発展に伴い、人々がテキストの単純な表示に満足しなくなると、一部のテキストには特別な強調や特別な追加が必要になります。徐々に現れてきたフォーマット。表示効果を制御する必要がある場合、最初に考えられる最も簡単な方法は、マーカーを追加することです。いくつかのスタイル制御タグを追加します。このとき、

などのスタイル制御タグが登場しました。しかし、このようにして、すべてのマークは 2 つのカテゴリに分類されます。1 つは私が何であるかを示し、もう 1 つは私がどのように表示されるかを示します。これは大きな問題ではありません。マークアップは単純ですが、ブラウザがマークアップを解析するのはそれほど単純ではありません。考えてみてください。こうすると、DOM は大きく 2 つのカテゴリに分けられます。1 つは要素を記述する DOM ノード に属し、もう 1 つは表示効果を記述する DOM ノードに属します。 DOM ノードは要素または表示効果を表す場合があります。どう見ても不気味な感じがします。

最終的に、人々は style タグを放棄し、要素タグに style 属性を追加することにしました (元のスタイル宣言構文は非常に単純でなければなりません)。スタイル タグの元のプロパティはスタイル プロパティの構文になり、スタイル タグはスタイル プロパティになりました。これにより、ロジックがより明確になります。ここで問題が発生します:

  • 記事にレトリックが多すぎると、必然的に読者の嫌悪感を引き起こすことになります。要素と表示効果の両方を 1 つのファイルに入れると、間違いなく読みにくくなります。

  • すべてに効果が必要な要素が 10 個ある場合、スタイルを 10 回記述する必要がありますか?

  • 親要素の設定効果は子要素に影響を与えませんか?知ってます

  • 。 。 。 。 。 。 。 。 。

似たような問題はたくさんあるはずなので、CSS とカスケード スタイル シートが登場し、CSS ルール、CSS セレクター、CSS 宣言、CSS 属性などをもたらし、上記の問題点を解決しました。マークアップ言語層は解決されましたが、ブラウザーはただ座ってプレイするだけではなく、サポートを提供する必要があります。そのため、ブラウザーは statichtml ファイルを解析するときに、html ドキュメント 全体を走査して DOM ツリーを生成します。すべてのスタイル リソースが読み込まれると、ブラウザーはレンダリング ツリーの構築を開始します。プレゼンテーション ツリーは、一連の CSS 宣言に基づいて、カスケード後に各 DOM 要素をどのように描画するかを決定します。この時点では、実際にはページにインターフェイスは表示されず、レンダリング ツリーもブラウザのメモリ内のデータ構造になります。レンダリング ツリーが完了したら、レイアウトが始まります。これは、長方形の幅と高さを知るのと同じで、キャンバス上のどこに描画するか、どのくらいのスペースを占めるかを測定する必要があります。このプロセスが完了すると、描画プロセスが行われ、表示されるインターフェイスが完成します。

マークに何らかの効果を加えるという問題は解決され、歴史の歯車は再び動き始めました。徐々に、人々は単純な表示効果に満足できなくなり、何らかのインタラクションを求めます。当時、HTML を書いた人のほとんどはソフトウェア開発を理解していませんでした。私がアクティビティ ページを作成したときに、C++ を使用するように要求したのは冗談ですか? C++ が行っていることは、まさに蚊をたたくための対空砲であり、過大評価と過小活用です。正規軍が軽蔑することをゲリラにやらせましょう。当時、JavaScript 言語は現在ほど普及していませんでした。宇宙。

JavaScriptはブラウザ内で動作する言語です。HTMLテキストは静的です。JavaScriptでは静的なファイルを変更することはできませんが、ブラウザ内での処理は可能です。ただし、この時点の DOM は現在の DOM ではありません。これらは C++ オブジェクトであり、これらの C++ オブジェクトを操作するために JavaScript が C++ 命令に変換されるか、これらの C++ オブジェクトが JavaScript ネイティブ オブジェクトにパッケージ化されます。歴史は後者を選択し、今回が現代の DOM の正式な誕生となりました。ただし、歴史は時として逆行することがあり、IE が奇妙で、Edge を含む彼の家族全員が奇妙であるなど、歴史には常に奇妙なことがいくつかあります。 マルクスはペテン師だったが、エンゲルスは良き同志だった。自然弁証法と史的唯物論は良いことだ。これは歴史的な観点から見ることができます。 CSS、DOM、および JavaScript の出現と発展の究極の源は、HTML (ハイパーテキスト マークアップ言語) です。 Web に対する人々のニーズは最終的に HTML に集まります。したがって、歴史が新たな要求を生み出すたびに、最終的な変更は最初に HTML 仕様に発生します。

インタラクティブ性が人々のニーズを満たせないとき、ウェブはウェブアプリという新たな需要をもたらしました。新しいニーズに対応するには、まず HTML 仕様を変更する必要があります。現時点では、既存の HTML4.0 では人々のニーズに応えることができなくなり、8 年間の努力を経て HTML5 がそのニーズに応えます。 2014年についにリリースされました。今年正式に完成しました! HTML5 では間違いなく新しいタグが追加されますが、従来の HTML にとって HTML5 は反逆です。以前のすべてのバージョンでは、JavaScript インターフェイスを数語で説明するだけで、メイン スペースはタグの定義に使用され、JavaScript 関連のコンテンツはすべて DOM 仕様によって定義されていました。 HTML5 仕様では、新しいタグの使用方法に関して多数の JavaScript

API

が定義されています (そのため、API の一部は DOM と重複しており、ブラウザーがサポートする必要がある DOM 拡張機能を定義しています。このことから、HTML5 は明らかに HTML ではないことがわかります。バージョン)。

以上がHTML5 とは何かを学ぶの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート