2017-12-05 9 views
0

他の人がテーブルをソートしているのを見ていて、見ていて、aria-sortがハイパーリンクに広告することができます。これは私のオリジナルソースコードです:テーブルの代わりにハイパーリンクのアリアソート

<th scope="col" role="columnheader" aria-sort="none" aria-controls="data-form-table">Name</th> 

これはこの方法で使用できますか?

<th scope="col" role="columnheader"><a href="products.php?sort=name&mode=asc" aria-sort="none" aria-controls="data-form-table">Name</a></th> 
+0

なぜリンクに指定しますか? – unor

+0

私の考えでは、ユーザーがハイパーリンクにすべての属性をハイパーリンクに移動する必要があります。 –

+0

しかし、 'aria-sort'は現在のソートが何であるかを説明しています。作者が 'a'にそれを適用できるとすれば、リンクをクリックするとどのようなソートが変更できるかを記述していると思うかもしれません。 – unor

答えて

0

多分、私はそれをお勧めしません。

W3C HTMLバリデーターは、このプロパティーでアンカー要素に失敗します。

エラー:属性aria-sortこの時点で要素a上で許可されていません。 WAI-ARIA 1.1の仕様を1として

、著者はth要素可能な限り上aria-sortを使用する必要があります。「著者のみテーブルヘッダやグリッドヘッダにこのプロパティを適用する必要があります。」

https://www.w3.org/TR/wai-aria/states_and_properties#aria-sort

ここで注意すべき点は、RFC 2119によって、この文脈で定義される "べきである" という言葉がある:

  • 、このワードSHOULDまたは形容詞「推奨」は、 が特定の状況で特定の状況で有効な理由が存在する可能性があることを意味しますが、 の特定の項目を無視する必要がありますが、完全な意味を理解してからdifを慎重に検討してからdif未来のコース。だから、

    https://tools.ietf.org/html/rfc2119

  • 、それは今のいずれか、私はW3Cバリの失敗は、これは支援技術の問題を提示することができると信じる十分な理由であると信じて、完全に禁止ではありませんしながら、または将来は。

    +0

    ジョシュさん、ありがとう、私を助けてくれました。あなたが非JavaScript対応の機能をサポートする必要がある場合は、並べ替えを変更できるようにアンカー/ハイパーリンクを追加する必要があるため、これは実際はちょっと混乱しています。 JavaScriptを有効にしました。私は 'click'ハンドラを' th'要素にフックし、サーバからコンテンツを動的に取り出し、 'aria-sort'プロパティを変更しました。とにかく私はこれを残して、フォールバックも提供します。ありがとうございました。 –

    関連する問題