コードをセマンティックにする HTML のヒント

コードをセマンティックにする HTML のヒント

HTML のセマンティクスはありふれた問題のようです。Google で検索すると、セマンティクスに関する記事がたくさん見つかります。なぜセマンティック タグが必要なのでしょうか。HTML の各タグにはそれぞれ特定の意味があり、セマンティクスとは、適切なタグを適切な場所で使用することであり、人間と機械 (機械はブラウザーと検索エンジンとして考えることができます) が一目で理解しやすいようにすることを意味します。私の説明がわかりにくい場合は、Google で検索してください。

適切なラベルを適切な場所で使用するにはどうすればよいでしょうか?

これは単純な理解の論理です。例えば、h1~h6 タグはタイトルに、ul は順序なしリストに、ol はコンテンツ付きリストに、dl はリストの定義に、em と strong タグは強調に使用します... 端的に言うと、HTML タグのそれぞれの英語の解釈によって、そのセマンティクスが決まります (この記事の後半で、よく使われる HTML タグの英語の解釈の比較表を参考として掲載します)。

人間と機械の両方にとって明らかなことは何でしょうか?

HTML ページがセマンティックかどうかを確認する最良の方法は、ページから CSS リンクを削除して、ページ構造が適切かどうか、またページがまだ読み取り可能であるかどうかを確認することです。なぜそう言えるのでしょうか? ブラウザにはデフォルトのスタイルがあることは誰もが知っています (Chrome の Web 開発者ツールを使用することをお勧めします)。  プラグイン、またはFirefox Web Developer  たとえば、h1~h6 には、太字/縮小フォント サイズ、上下の余白、ul、ol、dl にはデフォルトの箇条書き、strong にはデフォルトで太字スタイルなどのデフォルト スタイルがあります... したがって、同じページの場合、ページ CSS が削除されても、意味的に整形式の HTML は引き続き適切に機能します。

もう 1 つのポイントは、適切なセマンティック コーディングは検索エンジンにとってより使いやすいということです。検索スパイダーは CSS を認識しませんが、HTML タグは認識できます。

以下に簡単な例を示します。

未語義化語義化后的效果差異

コードをコピー
コードは次のとおりです。

<!--意味不明-->
<div id="ヘッダー">
<div class="h1">Mr.Think のブログ</div>
<div class="h2">Web フロントエンド テクノロジーに重点を置き、PHP を愛し、シンプルな生活を提唱しています。</div>
</div>
<!--セマンティクス化後-->
<div id="ヘッダー">
<h1>Mr.Thinkのブログ</h1>
<h2>Web フロントエンド テクノロジーに重点を置き、PHP を愛し、シンプルな生活を提唱しています。</h2>
</div>

上記の簡単な例と、CSS 定義のない効果図から、2 つの違いを理解できるはずです。Html5 を学習している場合、ヘッダー、フッター、サイドバー、記事などの要素はすべて新しく追加されたセマンティック タグです。
HTML コーディングのセマンティック化は、高品質のフロントエンド開発への第一歩です。Web 標準への準拠が向上し、スタイルを削除した後もページが整然とした状態を保つことができます。セマンティック化のより詳しい紹介については、Google で検索するか、Adam の「Web フロントエンド開発の実践方法」をお読みください。  第3章。
付録: 中国語と英語のタグ意味の比較表

タグ名英語の綴り中国語翻訳
1つのアンカーアンカー
略語略語略語
頭字語頭字語略語
住所住所住所
b大胆な大胆な
大きい大きい大きくなる
引用ブロックブロック引用参照ブロック
br壊す改行
キャプションキャプションタイトル
中心中心中心
dd定義説明定義の説明
デル消去消去
分割分割分離
ダウンロード定義リスト定義リスト
dt定義用語用語の定義
それら強調した悪化
フィールドセットフィールドセットドメインセット
フォントフォントフォント
h1〜h6ヘッダー1〜ヘッダー6タイトル1~タイトル6
時間水平線レベル
イタリックイタリック
イン挿入された入れる
伝説伝説アイコン
リスト項目リスト項目
オール順序付きリスト並べ替えリスト
p段落段落
フォーマット済み定義済みフォーマット
s取り消し線取り消し線
小さい小さい小さい
スパンスパン範囲
強い強い悪化
サブ下付き下の表
すする上付き上付き文字
あなた下線付き下線
ウル順序なしリスト未ソートリスト
var変数変数

以下を付け加えておきます

1. HTML セマンティクスとは何ですか?

適切な HTML タグを選択すると、開発者はより洗練されたコードを読み書きしやすくなり、ブラウザのクローラーやマシンはコードを適切に解析できるようになります。

2. なぜセマンティクス化なのか?

CSS がなくてもページをそのままの状態で見栄え良くするために、ページは適切なコンテンツ構造とコード構造を示すこともできます。
ユーザーエクスペリエンス: たとえば、title と alt は名詞や画像情報を説明するために使用され、label タグは柔軟に使用されます。
SEO に最適: 検索エンジンとの良好な通信を確立すると、クローラーがより有効な情報を取得できるようになります。クローラーはタグを使用して各キーワードのコンテキストと重みを判断します。
他のデバイス (スクリーン リーダー、視覚障害者用リーダー、モバイル デバイスなど) による解析を容易にし、Web ページを意味のある方法でレンダリングします。
チーム開発とメンテナンスを容易にし、セマンティクスをより読みやすくすることは、Web ページの次のステップにおける重要なトレンドです。W3C 標準に従うチームはすべて、差異を減らすためにこの標準に従います。

3. HTML コードを書くときに注意すべきことは何ですか?

1. div や span など、意味的に無意味なタグはできる限り使用しないでください。
2. セマンティクスが明らかでない場合、div または p のどちらかを使用できる場合は、p を使用するようにしてください。p はデフォルトで上下のスペースを持っているため、特殊な端末との互換性に役立ちます。
3. 純粋なスタイル タグや、仕様でサポートされていないタグ (b、font、u、center、strike、menu など) は使用しないでください。代わりに CSS 設定を使用してください。
4. 強調する必要があるテキストは、strong タグまたは em タグに含めることができます (ブラウザのデフォルト スタイルです。CSS で指定できる場合は使用しないでください)。strong のデフォルト スタイルは太字 (b は使用しないでください)、em は斜体 (i は使用しないでください) です。
5. 表を使用する場合は、タイトルには caption、ヘッダーには thead、本文には tbody、フッターには tfoot を使用します。表のヘッダーと一般セルは区別する必要があり、表のヘッダーには th を使用し、セルには td を使用します。
6. フォーム フィールドは fieldset タグで囲み、フォームの目的は legend タグで説明する必要があります。
7. 各入力タグに対応する説明文はラベルタグを使用する必要があり、入力にid属性を設定し、ラベルタグにfor=someldを設定することで、説明文を対応する入力に関連付けることができます。
8. 特定のタグの属性を省略しないでください。<img> タグの alt 属性は、画像が正常に表示できない場合に代替テキストとして使用されます。<a> タグの title 属性は説明情報として使用でき、マウスをホバーするとプロンプトメッセージが表示されます。

Yahoo からのインタビューの質問:

<P> 私が書くのはHTMLではなく、孤独です。 <br><br> 私は言った:<br>私に執着しないで、私はただの伝説よ

問題には次のようなものがあります:

1. html と xhtml 標準の違いは、xhtml は厳密な構造を持ち、タグは閉じる必要があり、単一のタグは末尾に / を追加して閉じる必要があり、タグは小文字でなければならないことです。
2. 構造とスタイルの分離。スタイルを制御するために <br/> を使用しないでください。構造を合理的に設計します。改行するには各段落に p を追加します。スタイルは CSS を使用して実装する必要があります。
3. タグを合理的に使用し、タグの意味に注意してください。略語は <abbr> でマークでき、「I」は <cite> でマークでき、引用されたスピーチの内容は <q> でマークできます。

//コード参照は以下のとおり
<p>私が書いているのは <abbr title="Hypertext Markup Language">HTML</abbr> ではなく、孤独です。 </p>
<p><cite>私は</cite>こう言いました: <q>私に執着しないでください。私はただの伝説です</q></p>

上記は、コードをセマンティック化する HTML テクニックの詳細な内容です。HTML セマンティック化の詳細については、123WORDPRESS.COM の他の関連記事をご覧ください。

<<:  Nodeはバックエンドの実装手順を素早く構築します

>>:  MySQL ステートメントの概要

推薦する

表示しているページのスナップショットを Baidu が保存できないように設定する方法

今日、Baidu でページを検索したところ、ページが削除されていたため、当然 Baidu スナップシ...

dockerでマウントされたディレクトリが読み書きできない問題を解決する

次のコマンドを使用してコンテナを作成し、ローカルの /home/dock/Downloads ディレ...

MySQL の自動インクリメント主キーが連続していないのはなぜですか?

目次1. はじめに2. 自己増分ストレージの説明3つの自己付加価値修正メカニズム4. 自己評価を修正...

選択ドロップダウンボックスの値をIDに渡してコードを実装する方法

完全なコードは次のとおりです。 HTMLコード:コードをコピーコードは次のとおりです。 <!-...

Vue の基本リスナーの詳細な説明

目次Vueのリスナーとは何かリスナーの使い方vue リスナーウォッチVue リスナー - ディープリ...

VMware 仮想マシン ブリッジ モードでインターネットにアクセスできない問題を解決する方法

ステップ1: ローカルイーサネットプロパティをチェックして、VMwareブリッジプロトコルがインスト...

Windows システムに mysql5.7.21 をインストールするための詳細なチュートリアル

MySQL インストーラーは、MySQL ソフトウェアのあらゆるニーズに対応する、使いやすいウィザー...

VMware Workstation Pro でサーバー仮想マシンを構築する (グラフィック チュートリアル)

私が使用している VMware Workstation Pro のバージョンは次のとおりです。 1....

純粋なCSSで立体的な画像配置効果を実現するサンプルコード

1. 要素の幅/高さ/パディング/マージンのパーセンテージ基準要素の幅/高さ/パディング/マージンの...

win10 64 ビット システムに複数の JDK バージョンをインストールする際の切り替え問題と解決策の概要

コンピューターにmyeclipse2017とidea2017がインストールされているため、ideaが...

入力ボックスのプレースホルダーアニメーションと入力検証を実現する純粋なCSS

さらに興味深いコンテンツについては、https://github.com/abc-club/free...

Ubuntu でホームディレクトリを新しいパーティションに移行する詳細なチュートリアル

ユーザーのホーム ディレクトリがどんどん大きくなってきたら、ホーム ディレクトリを新しいパーティショ...

MySQLからClickHouseに移行する5つの方法

データ移行は、MySQL から ClickHouse にインポートする必要があります。概要プランは以...

Linux ファイルディレクトリ管理コマンドの概要

タッチコマンドこれには 2 つの機能があります。1 つは、既存のファイルの時間タグを現在のシステム時...

axiosのシンプルなカプセル化と使用例コード

序文最近、プロジェクトを構築しているときに、リクエストのカプセル化について考え、どのようにカプセル化...