WCAG 2.0 達成方法集

Skip to Content (Press Enter)

-

SCR34: テキストサイズに応じて拡大するように、サイズ及びポジションを定める

達成方法に関する重要な情報

これらの達成方法(参考)の使用法及び、それらがWCAG 2.0 達成基準(規定)とどのように関係するかに関する重要な情報については、WCAG 達成基準の達成方法を理解するを参照のこと。適用(対象)セクションは、その達成方法の範囲について説明しており、特定の技術に関する達成方法があるからといって、WCAG 2.0 を満たすコンテンツを作成する際に、常にその技術が使用可能であるわけではない。

適用(対象)

クライアントサイド・スクリプティング

これは、次の達成基準に関連する達成方法である:

ユーザエージェント及び支援技術によるサポート

SCR34 に関するユーザエージェントサポートノート (英語)を参照のこと。

解説

この達成方法の目的は、文字サイズが縮小・拡大されるのに従って、適切に拡大・縮小するように要素のサイズ及びポジションを定めることである。

ここに要素のサイズとポジションを決めるJavaScriptの4つプロパティがある:

offsetHeightoffsetWidthを用いて高さや幅を定めることは簡単である、しかし、オブジェクトの左とトップの位置を絶対配置の値として定める時、親要素を考える必要がある。下記において、calculatePosition関数は、要素におけるすべての親ノードの最終的な値が決定するまで繰り返されている。 その関数はobjElement(当該の要素の名前)とオフセットプロパティ(offsetLeft又はoffsetTop)の2つの引数を取っている。

事例

事例 1

Javascriptの関数:

コード例:


function calculatePosition(objElement, strOffset)
{
    var iOffset = 0;

    if (objElement.offsetParent)
    {
        do 
        {
            iOffset += objElement[strOffset];
            objElement = objElement.offsetParent;
        } while (objElement);
    }

    return iOffset;
}

次の事例は、上の関数がオブジェクトを、参照オブジェクトの下、かつ、左から同じ距離に配置するために用いられていることを示している:

コード例:


// Get a reference object
var objReference = document.getElementById('refobject');
// Get the object to be aligned
var objAlign = document.getElementById('lineup');

objAlign.style.position = 'absolute';
objAlign.style.left = calculatePosition(objReference, 'offsetLeft') + 'px';
objAlign.style.top = calculatePosition(objReference, 'offsetTop') + objReference.offsetHeight + 'px';

参考リソース

この参考リソースは、あくまでも情報提供のみが目的であり、推薦などを意味するものではない。

検証

チェックポイント

  1. 文字サイズの変更とともにテキストコンテナのサイズを調整するように設計されているページを開く。

  2. ブラウザの文字サイズ調節を使って200%のサイズまで大きくする。(ズーム機能は使用しない)

  3. テキストコンテナのサイズが文字サイズに合わせて調整される。

  4. 文字サイズを大きくした結果、どの文字も「切り取られ」たり、見えなくなっていたりしない。

判定基準

この達成方法が「十分な達成方法」の一つである場合、このチェックポイントや判定基準を満たしていなければ、それはこの達成方法が正しく用いられていないことを意味するが、必ずしも達成基準を満たしていないことにはならない。場合によっては、別の達成方法によってその達成基準が満たされていることもありうる。