图像Alt和标题属性

时间:2011-06-22 17:23:02

标签: javascript html tooltip accessibility image

我有一个客户讨厌浏览器中显示的工具提示,其中包含图片的alt和title属性。他们要求将他们删除。显然这是SEO和辅助功能的问题。

虽然可访问性对我来说不是什么大问题,但SEO因素是。我最初的想法是使用快速JS脚本删除图像的alt和title属性。有人看到任何问题吗?

4 个答案:

答案 0 :(得分:6)

alttitle属性是两回事。

alt属性用于可访问性原因,并且是W3C设置的标准所要求的。在美国,它也是Section 508法律法规的一部分。 alt属性在旧版Internet Explorer中通过工具提示显示其内容时表现不佳。我知道Internet Explorer 9不再有这种行为。

title属性用于强制浏览器显示带有内容的工具提示。

我的建议是使用alt属性而不是title属性。建议您的客户将其浏览器更新为更符合标准的浏览器,如果工具提示让他们烦恼那么多。

现代屏幕阅读器读取生成的DOM。这意味着如果您通过JavaScript删除标签,您不仅会在事后使代码无效,还可能会伤害那些将使用辅助技术访问该网站的人。

我强烈建议你不要这样做。

更多信息
由于alt属性http://www.sitepoint.com/target-settles-accessibility-lawsuit-for-6-million/

,目标被起诉并已解决

由于这一具有里程碑意义的案例,可以说第508节不会仅适用于联邦和政府网站。

答案 1 :(得分:2)

如果可访问性不是问题,我发现使用JavaScript删除内容没有任何问题。假设您使用jQuery是正常的,这是我认为最简单的方法:

$(document).ready(function()
{
    $('[title]').removeAttr('title');
});

您还可以删除onmouseover事件中的标题内容,然后将其添加回onmouseout事件,以便进行搜索引擎优化。

答案 2 :(得分:2)

在vanilla JavaScript中,您可以使用:

var images = document.getElementsByTagName('img');

for (i=0; i<images.length; i++){
    images[i].removeAttribute('title');
    images[i].removeAttribute('alt');
}

JS Fiddle demo

参考:

答案 3 :(得分:0)

您应该考虑是否只在某些情况下删除这些功能。我在日常业务中经历了很多类似的想法,因为有些人不喜欢理解某些有益的东西,也许他们自己处理它们......

...这让我想到最终添加一个Greasemonkey脚本,它提供了所需的功能,而不是通过可访问性等来恶化网站。至少它应该是一个额外的可配置选项,可能通过设置一个饼干或类似的东西。

也许你可以说服客户,这比摆脱某些东西更好,让每个人都可以选择自己的东西,并激活默认设置以获得最佳搜索引擎优化和可访问性。