導入

導入 --  HTML_QuickForm_Renderer_Tableless の導入

概要

HTML_QuickForm_Renderer_Tableless は、HTML_QuickForm のデフォルトのレンダラを置き換えるものです。目標は次の二点です。

アクセシビリティ: table タグを廃止してその代わりに label タグの for 属性やフォーム要素タグの id 属性を用いることで、 出力結果はアクセシビリティの高いものになります。 体の不自由な方はスクリーンリーダを使用されることもあるでしょうし、 そうでない人にとっても、ラベルをクリックすることで、 関連するフォーム要素にフォーカスを移動させられるという利点があります。

妥当性: このレンダラが生成する出力は、妥当な XHTML 1.1 形式となります。

使用法

このレンダラを使用するには、スタイルシートをコピーし (そして必要に応じて書き換え)、そして次のように書くだけです。

require_once 'HTML/QuickForm.php';
require_once 'HTML/QuickForm/Renderer/Tableless.php';

$form =& new HTML_QuickForm();
$renderer =& new HTML_QuickForm_Renderer_Tableless();

// ここに通常のコードを書きます。
// たとえばフォームのフィールドや規則など……。

$form->accept($renderer);
echo $renderer->toHtml();

完全に妥当な XHTML を生成させるには、次の行をコードに追加する必要があります。

$form->removeAttribute('name');