使用Javascript调整文本大小的“最佳实践”是什么?

时间:2009-07-30 12:36:38

标签: javascript usability accessibility

使用Javascript调整文本大小的“最佳实践”(可访问性/可用性)是什么?

我目前的解决方案是,当用户点击调整大小链接时,它会向body标签添加一个额外的类。

它还设置了一个cookie,然后在页面加载时 - onLoad() - 它会读取cookie并在需要时再次重新应用body类标记。

唯一不理想的是它加载然后应用 - 之前的解决方案是在加载页面之前编辑CSS文件,但如果CSS文件位于不同的目录中则会引发安全警告。

那么,基本上我的解决方案是合理的还是有更好的方法?

亚当

4 个答案:

答案 0 :(得分:4)

  

什么是“最佳做法”   (可访问性/可用性)   使用Javascript调整文本大小?

最佳做法是“不要”。

以相对单位指定字体大小,如果用户愿意,让本机浏览器控件更改它。

尝试复制此功能很少会提供用户需要的字体大小(通常最终会提供原子,微观和微小的选择)。是的,一些用户需要72pt文本(或更大)。

内置的浏览器控件适用于大多数(如果不是全部)网站。你不需要用掉帆布房地产来复制它们。

答案 1 :(得分:2)

您的解决方案听起来不错,只需添加一个:您可以在页面加载时读取cookie,并在生成标记时将类添加到body元素。大多数服务器端语言都支持这一点:PHP,JSP,RoR等。 除此之外,你有一个坚实的解决方案。

答案 2 :(得分:0)

通过JavaScript将HTML样式添加到HTML

我认为您的建议是一种很好的方式。

这意味着您可以灵活地将CSS类添加到任何子元素而不是正文,以便您可以根据需要更改特定元素的文本大小。

在页面加载时读取cookie

要解决您描述的问题,我会在您的服务器端语言(php / asp / ruby​​等)中查找cookie,并在页面加载时显示cookie指定的内容。

在PHP中,CSS类定义可能如下所示:

echo '<div class=\"'.($_COOKIE['text_size']!='' ? $_COOKIE['text_size'] : 'normal'). '\">';

答案 3 :(得分:0)

  

使用Javascript调整文本大小的“最佳实践”(可访问性/可用性)是什么?

“Web Accessibility Gone Wild”sums it up相当不错:

  

如果您的默认字体大小对于网站访问者来说可能太小,请将其设置为足够的大小。

  

所有浏览器都允许调整页面内容的大小或缩放 - 为什么要复制此浏览器功能?

另外,Care With Font Size

  

这里的问题是基本的可用性和可访问性问题:好的设计应该看起来不错,而不需要用户放大或缩小文本大小。

但是,如果您有有效的原因 - 请随意忽略这一点。