下の画像の 2 行目のようなフォームの 3 列をレイアウトしようとしています。
ラベル テキストとフォーム要素はサイズとタイプが異なる可能性があるため、必要に応じてクロス ブラウザーで機能するように配置するのは難しいことがわかっています。いくつかの解決策を試していますが、1 つの可能性は、ラベル用に別の行を、入力要素用に別の行を用意することです。次に、ラベルを下に垂直方向に揃え、入力要素を上に揃えます。
ラベルと入力要素がソース内で隣り合っていなくても、ラベルに必要な 'for' および 'aria' 属性を入力要素に関連付けるために含めた場合、スクリーン リーダーにとって十分でしょうか? アクセシビリティは、私たちが考慮しなければならないものです。
アドバイスありがとうございます。下のフィドル
<div class="container_12" style="background:green;">
<div class="grid_4 lbl" >
<label for="firstName">TR 1 TD 1</label>
</div>
<div class="grid_4 lbl">
<label for="lastName" >Bonorum Fermentum Tortor Adipiscing Pharetra</label>
</div>
<div class="grid_4 lbl">
<label>Bonorum Fermentum Tortor Adipiscing Pharetra Bonorum Fermentum Tortor Adipiscing Pharetra</label>
</div>
<div class="clear"></div>
</div>
<div class="container_12" style="background:yellow;">
<div class="grid_4">
<input type="text" id="firstName"/>
</div>
<div class="grid_4"><textarea id="lastName"></textarea>
</div>
<div class="grid_4">
<input type="text" id="phone" />
</div>
</div>