From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp10.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms5.migadu.com with LMTPS id SEHMCW2gNWM4DQEAbAwnHQ (envelope-from ) for ; Thu, 29 Sep 2022 15:41:01 +0200 Received: from aspmx1.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp10.migadu.com with LMTPS id GNUOCW2gNWME2QAAG6o9tA (envelope-from ) for ; Thu, 29 Sep 2022 15:41:01 +0200 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 42206A503 for ; Thu, 29 Sep 2022 15:41:00 +0200 (CEST) Received: from localhost ([::1]:33036 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1odtmc-0002XB-N3 for larch@yhetil.org; Thu, 29 Sep 2022 09:40:58 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:55790) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1odrwk-0004t1-MK for emacs-orgmode@gnu.org; Thu, 29 Sep 2022 07:43:19 -0400 Received: from mailbackend.panix.com ([166.84.1.89]:31260) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1odrwi-0001Nq-KO for emacs-orgmode@gnu.org; Thu, 29 Sep 2022 07:43:18 -0400 Received: from panix1.panix.com (panix1.panix.com [166.84.1.1]) by mailbackend.panix.com (Postfix) with ESMTP id 4MdWhK4kWjz443J; Thu, 29 Sep 2022 07:43:13 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=panix.com; s=panix; t=1664451793; bh=ujyNk9hGWTMZ/8pPeTcUUfccid7ThAJz6m/rA1nqjfQ=; h=Date:From:To:cc:Subject:In-Reply-To:References; b=kEmE3D41f4yO3Joe23en7JA+3moqxvgWL3M83+PH+PnJ/IheJoXjR0HVJw6BI61GV xxEgg234nUPyobzkQKOUOJ9vwQYQBHSjekg7TvxO6PfVVUIhqa9ZDuzvfGlRnCLiFF xrdGQcUgd2xeElhyMFft7iV7Tx3HS17pNOQqE/n0= Received: by panix1.panix.com (Postfix, from userid 20712) id 4MdWhK4KLMzcbc; Thu, 29 Sep 2022 07:43:13 -0400 (EDT) Received: from localhost (localhost [127.0.0.1]) by panix1.panix.com (Postfix) with ESMTP id 4MdWhK45q7zcbP; Thu, 29 Sep 2022 07:43:13 -0400 (EDT) Date: Thu, 29 Sep 2022 07:43:13 -0400 From: Jude DaShiell To: Tim Cross , Ihor Radchenko cc: Timothy , emacs-orgmode@gnu.org Subject: Re: Org HTML export accessibility (was: org exported pdf files) In-Reply-To: <86pmfeo4os.fsf@gmail.com> Message-ID: <91c099ef-da41-b84-e1a2-bdc5b6da3dba@panix.com> References: <87a66lpm5p.fsf@localhost> <8735cdpkiz.fsf@localhost> <87y1u5o1ko.fsf@localhost> <87a66k2j5y.fsf@tec.tecosaur.net> <7edd911f-b74-6521-634e-7f30acdb5fad@panix.com> <867d1nj1yn.fsf@gmail.com> <877d1n3ky0.fsf@tec.tecosaur.net> <86tu4ro11c.fsf@gmail.com> <87edvu95yr.fsf@localhost> <86pmfeo4os.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Received-SPF: pass client-ip=166.84.1.89; envelope-from=jdashiel@panix.com; helo=mailbackend.panix.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-orgmode@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+larch=yhetil.org@gnu.org Sender: "Emacs-orgmode" X-Migadu-Flow: FLOW_IN X-Migadu-Country: US ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1664458861; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=ujyNk9hGWTMZ/8pPeTcUUfccid7ThAJz6m/rA1nqjfQ=; b=tmgH/ZlWfX6ALbIrabnYJFvrTRTIHmmUd/p+/tFR2iiMEFi0sQHTO0mMhOe28dmvC5O4uy L0QLYj7gRROFvzceqT5oVTB92kl7032xyaSGreZCPUblgIAFQslf5aZ8qML6Fzgqh4xMw+ exq+tEh6AhoQqh4d63ICYAGUJGBuI8tEw636XSwTJ1hI4pnlGvj3g0+KdSHGuSbSvBcrA5 T9NHiuaQHZVXuzbdsOLfP8u1EhZ9uAB7qG556ynvvVR2dIxn3MfM957hgxjZ5KOsGKIKxU lz4J0SMCIMzqk0v8ql/KrIri8gc+bfmREaQTdE85K7IXzU4wMdwD/XKdeDKvIg== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1664458861; a=rsa-sha256; cv=none; b=sUhOQb51hVa6HDx/9n/GExqgrtv/5SZqITcENasQqlYtxX+XodHzkHrCTjyVVLqI7qn1rJ w2MLK+WrknjMwNl5aio0Q8QAb3xc8qhwpRCX+nol6X/Y6wC28ImM0WcchUVoIuavIoNHyY 4ZY9+ETLjlXW/FpvGKaWC4IzpwO0J/hhYjKwmXd4JIOP18X2R9eyupTZ8n1CJikERQLFCv kmKmgluH5PoX7r/568QJDBAR3/XsEutqa7yM9DMOWXGgMbarm48czq/7Ii2NEpiwn0MUH4 mh+M44L7JqfEIjoVS6ha7Ea3Lii0XjsH5/YNUgfARYHRHGitrb+EFZDprRb02g== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=panix.com header.s=panix header.b=kEmE3D41; dmarc=fail reason="SPF not aligned (relaxed)" header.from=panix.com (policy=none); spf=pass (aspmx1.migadu.com: domain of "emacs-orgmode-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="emacs-orgmode-bounces+larch=yhetil.org@gnu.org" X-Migadu-Spam-Score: 7.86 Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=panix.com header.s=panix header.b=kEmE3D41; dmarc=fail reason="SPF not aligned (relaxed)" header.from=panix.com (policy=none); spf=pass (aspmx1.migadu.com: domain of "emacs-orgmode-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="emacs-orgmode-bounces+larch=yhetil.org@gnu.org" X-Migadu-Queue-Id: 42206A503 X-Spam-Score: 7.86 X-Migadu-Scanner: scn1.migadu.com X-TUID: 4WmSZa+DtGeg One thing I vividly remember doing Navy mandatory trainings was several instances when providers had mouse cursor and keyboard disabled so the only way to proceed was to have a sighted person position and click the physical mouse! Jude "There are four boxes to be used in defense of liberty: soap, ballot, jury, and ammo. Please use in that order." -Ed Howdershelt (Author, 1940) . On Thu, 29 Sep 2022, Tim Cross wrote: > > Ihor Radchenko writes: > > > Tim Cross writes: > > > >> Note that org also lacks any accessibility support for HTML generated > >> documents as well. However, this is less problematic as authors do have > >> some ability to add the necessary attributes that can improve > >> accessibility - an option not available with Latex. > > > > Can we do anything about it? > > Are there any available standards on how accessible HTML document should > > look like? > > > > Unlike PDF where we rely on LaTeX, Org generates the final form of the > > HTML documents. Hence, we have the full control (and responsibility) to > > support accessibility. At least, as a customization. > > Yes, there are 2 standards/guidelines which are probably relevant for > org mode > > - Web Content Accessibility Guide (WCAG v2) https://www.w3.org/WAI/standards-guidelines/wcag/glance/ > > and the > > - Authoring Tools Accessibility Guide (ATAG) https://www.w3.org/WAI/standards-guidelines/atag/ > > The first standard is about ensuring content is as accessible as > possible. The second one is about ensuring authoring tools are > accessible and on how authoring tools can be implemented to assist > people in creating accessible content. It is this last goal which makes > the second standard potentially relevant for org mode. > > There are also a number of tools out there which can be used to evaluate > the accessibility of specific content. However, I find such tools are of > limited benefit. The problem is, such tools rely heavily on conventions > and heuristics. For example, they can alert you to images with no alt > attribute. However, sometimes, not having an alt attribute actually > improves accessibility (there is nothing worse than a web document which > has alt tags on images used solely for formatting purposes!). > > The big difference between PDF and HTML is that HTML is essentially a > 'tagged' format. In many respects, this makes it much easier. However, > it also puts more responsibility on the author. > > From an org-mode perspective, the key things which need to be maintained > (and which perhaps we could make even easier or possibly have > 'defaults') is the ability to add the alt attribute to any non-text > element. For example, images, videos, sound files etc. All such content > should always have some text describing the 'element'. However, it is > also important to be able to not have an alt tag in some situations (for > example, when using images as 'spacers' for formatting etc, we don't > want an alt tag. Things to be aware of are things like using single > characters or symbols (e.g. < and > for previous/next) or using unicode > and other symbols whose meaning/purpose may seem very obvious when > viewed, but is less so when 'spoken'. > > From an authoring perspective, it probably would be good if org mode was > able to alert the user to content which lacks an alt attribute but which > probably should have one e.g. an image with no caption, a link to a > video/audio file etc. > > One area which may need more investigation is with the rendering of > tabular data. Having the correct tags (i.e. for data and for > headings, is very important. Other areas which may need to be verified > as being formatted correctly with adequate ARIA attributes are elements > relating to navigation, indexing and referencing/footnotes. > > The big problems with accessibility in web content tend to come about > from dynamic content, javascript and CSS. Plain HTML documents tend to > be quite good provided the appropriate tags have been used. Where things > become difficult is when you have content which is rendered based on > dynamic variables - for example, content which is hidden/revealed via > mouse clicks etc. > > The other important area often overlooked and which probably does need > some work done is with keyboard navigation. As you can probably imagine, > for blind and vision impaired users, the mouse cursor is a challenge and > any web page which requires you to move the mouse and click on an > element/link can be a challenge. having consistent keyboard navigation > is important. THis is particularly relevant when dealing with data input > via web forms etc. > > Of course, there is one very good way to assess the accessibility of a > web page - use a screen reader and try navigating, browsing and reading > some content with your eyes closed. If, for example, you find when > hitting tab to move through 'elements' in the page that it is impossible > to follow the structure or flow of the content (either because tab > results in focus jumping to some unexpected location or because the > internal link names used are too obscure or because there simply isn't > sufficient contextual information, then there is an issue. The next step > is to determine if this issue is because of how org mode is generating > the output or because the author has used or failed to use appropriate > alt tags etc. > > Note that all major platforms have free screen reader software > available. For Apple and ChromeOS, it is part of the platform and just > needs to be turned on. For windows, there is NVDA and for Linux there > are a number of solutions, but Orca is probably a reasonable > choice. There are also a number of browser extension modules which can > add screen reader type functionality to chrome or firefox. > > I would encourage everyone to at least try using a screen reader to > browse some content. Many of the concepts associated with accessibility > can be difficult to appreciate without more context. Trying to browse a > few web pages with a screen reader and your eyes closed can provide that > context. > >