各要素の定義を超えて、いくつかの属性がさまざまな要素にどのように使用されるかについて、より深い説明はありません。要素fooが属性zapを持ち、要素barが属性を持っている場合、もちろん同じ意味を持つように定義さzapれていない限り、これらの属性は名前だけを共有します。属性はまったく異なる意味を持つ場合があり、まったく異なる値を取る場合があります。それはすべてそれらの定義に依存します。
実際には、HTML の設計者は、属性の名前がその意味を反映するように、ここである程度の一貫性を保とうとしました。たとえば、align属性は、異なる要素に対して部分的に同じ意味を持ち (たとえば、 alignforはforとh1同じことを意味します)、部分的に類似した意味を持ちます (たとえば、forはforと似ていますが、同じではありません)。しかし、たとえば、属性 forは実際にはforとは何の関係もありません。alignh2alignh1aligntabletypeoltypescript
HTML 4.01 仕様の属性のインデックスは、そのような問題の概要を示しています。nameそこには、要約されたさまざまな要素の属性も表示されます。
HTML 4.01 では、nameが に対して宣言されていますがapplet、これは要素自体が廃止されたためです。しかし、formとaについては、仕様の散文は次のように述べています。この属性は下位互換性のために含まれています。アプリケーションは要素を識別するために id 属性を使用する必要があります。」これ、または同様のステートメントはname、一般的な要素に適用されると誤解されることがよくあります。それはすべて間違っており、ばかげていることさえあります。
nameコントリビューションは属性 (およびエレメントの値) に基づいているため、フォーム フィールド エレメントがフォーム データにコントリビュートするためには、この属性が必要です。また、属性で参照される「ブラウジング コンテキスト」としてそのような要素を指定する場合metaは、要素と同様に要素の 2 つのタイプのいずれかで必須です。iframetarget