<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://www.w3.org/Bugs/Public/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4"
          urlbase="https://www.w3.org/Bugs/Public/"
          
          maintainer="sysbot+bugzilla@w3.org"
>

    <bug>
          <bug_id>23610</bug_id>
          
          <creation_ts>2013-10-23 17:28:45 +0000</creation_ts>
          <short_desc>Change tag cloud example</short_desc>
          <delta_ts>2016-03-28 10:52:38 +0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WHATWG</product>
          <component>HTML</component>
          <version>unspecified</version>
          <rep_platform>Other</rep_platform>
          <op_sys>other</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>MOVED</resolution>
          
          
          <bug_file_loc>http://www.whatwg.org/specs/web-apps/current-work/#tag-clouds</bug_file_loc>
          <status_whiteboard>blocked on css improvements</status_whiteboard>
          <keywords>a11y</keywords>
          <priority>P3</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>Unsorted</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>contributor</reporter>
          <assigned_to name="Ian &apos;Hixie&apos; Hickson">ian</assigned_to>
          <cc>annevk</cc>
    
    <cc>bhawkeslewis</cc>
    
    <cc>ian</cc>
    
    <cc>jackalmage</cc>
    
    <cc>michael</cc>
    
    <cc>mike</cc>
    
    <cc>zcorpan</cc>
          
          <qa_contact>contributor</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>95210</commentid>
    <comment_count>0</comment_count>
    <who name="">contributor</who>
    <bug_when>2013-10-23 17:28:45 +0000</bug_when>
    <thetext>Specification: http://www.whatwg.org/specs/web-apps/current-work/multipage/common-idioms.html
Multipage: http://www.whatwg.org/C#tag-clouds
Complete: http://www.whatwg.org/c#tag-clouds
Referrer: http://www.whatwg.org/specs/web-apps/current-work/multipage/links.html

Comment:
In the tag cloud example, the inline counts of the tags should be &quot;hidden&quot;
off-screen (e.g. position: relative; left: -3000em) rather than using display:
none. This way, the information will not be hidden from screen readers, whose
users would benefit from this descriptive information.

Posted from: 128.174.73.23
User agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.69 Safari/537.36</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>95211</commentid>
    <comment_count>1</comment_count>
    <who name="Michael McKelvey">michael</who>
    <bug_when>2013-10-23 17:46:39 +0000</bug_when>
    <thetext>Just a follow-up comment to associate my user account with this report, since I wasn&apos;t logged in when I submitted the original comment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>95212</commentid>
    <comment_count>2</comment_count>
    <who name="Ian &apos;Hixie&apos; Hickson">ian</who>
    <bug_when>2013-10-23 18:28:39 +0000</bug_when>
    <thetext>The &quot;(popular)&quot;, &quot;(very rare)&quot; bits are only hidden for visual UAs (screen, print, handheld, tv media). Screen readers should be using the &quot;speech&quot; media. If they&apos;re using the &quot;screen&quot; media, that&apos;s a bug.

The information is also given in the title=&quot;&quot; attribute, which should be available to screen reader users; again, if it&apos;s not, that&apos;s a bug in the screen readers.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>95289</commentid>
    <comment_count>3</comment_count>
    <who name="Simon Pieters">zcorpan</who>
    <bug_when>2013-10-24 10:00:50 +0000</bug_when>
    <thetext>Hixie, I think your view of how media queries should work don&apos;t match up with reality.

UAs have exactly two mutually exclusive media, screen and print. Screen readers need to use the screen media because the Web is like that. (It appears that the MQ spec doesn&apos;t reflect reality yet.)

So the right thing is to remove the handheld and tv media, so you get

@media screen, print { ... }

but then that&apos;s equivalent to

@media all { ... }

and then if you want to hide something from visual users but not from non-visual users, you can&apos;t use display:none but have to do something else as suggested in comment 0.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>95299</commentid>
    <comment_count>4</comment_count>
    <who name="Benjamin Hawkes-Lewis">bhawkeslewis</who>
    <bug_when>2013-10-24 12:09:23 +0000</bug_when>
    <thetext>(In reply to Ian &apos;Hixie&apos; Hickson from comment #2)
&gt; Screen readers should be using the &quot;speech&quot; media. If they&apos;re using the &quot;screen&quot; media, that&apos;s a bug.

No, not only is that not implemented, but even if it were specified it would be unimplementable.

A user agent attempting a speech-only rendering would be unable to display content that was not &quot;display: none&quot; in the &quot;screen&quot; media type but not &quot;speech&quot; indiscriminately, because &quot;display: none&quot; is widely (ab)used in the web corpus to hide irrelevant content from all users (e.g. error messages for toggling into view if an error occurs). Presenting irrelevant content to the listener would render the user agent useless.

Moreover, this fantasy about speech-only user agents has nothing to do with the real software (&quot;screen readers&quot;) that this bug report concerns.

No media types aligns directly with screen readers as an application class.

Screen readers are not &quot;non-visual browsers&quot;.

They provide access to system applications and as such use the accessibility APIs exposed by the browser. Where screen readers try to interpret HTML or CSS themselves, they are working around for deficiencies in the accessibility architecture.

Media types don&apos;t align well with real patterns of human access. People with sight problems still use &quot;handheld&quot; devices which is one of the media types where the advocated code applies &quot;display: none&quot;. 

People with sight problems aren&apos;t necessarily best served by a speech-only rendering. It&apos;s common for screen readers to be used by people with some degree of sight, and for magnification, highlighting or other visual enhancements to be part of their functionality. It&apos;s also common for them to use other modalities like braille alongside or even instead of audio.

Browsers have to work with the web we have (where &quot;display: none&quot; generally implies exclusion from the accessibility tree), screen readers have to work with the browsers we have, and authors need to work with the browsers and the screen readers we have.

It&apos;s particularly unfortunate that the spec advocates inaccessible code when this example is partly based on an article that gave better advice by suggesting such text be hidden off-left:

http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2008-December/017864.html

http://24ways.org/2006/marking-up-a-tag-cloud/

Back in 2008 the editor admitted: &quot;The CSS would actually need to be more hacky until such time as screen readers grow up to be real speech browsers instead of following the screen  media, but that&apos;s another problem&quot;.

It would be better to drop this section than mislead people in the pursuit of theoretical purity, even if you think the theory is justifiable rather than at odds with the reality of human computer interactions.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>96270</commentid>
    <comment_count>5</comment_count>
    <who name="Ian &apos;Hixie&apos; Hickson">ian</who>
    <bug_when>2013-11-13 23:56:12 +0000</bug_when>
    <thetext>The current reality sucks. We should do what we can to move away from it. I don&apos;t intend to put horrible hacks like &quot;left: -3000em&quot; into the spec. If there&apos;s still no better solution, then we should fix that first. In particular, if there are media types that Media Queries specs but that have no bearing on reality, then we should fix Media Queries.

In the meantime, what is the right non-hacky markup to expose content to screen readers but not to screens?

(The author of comment 4 (since apparently we can&apos;t refer to each other by name but must refer to each other by our responsibilities!) refers to people using magnifiers, but those people aren&apos;t the people who would suffer from not getting the &quot;popular&quot; vs &quot;very rare&quot; labels.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>96294</commentid>
    <comment_count>6</comment_count>
    <who name="Simon Pieters">zcorpan</who>
    <bug_when>2013-11-14 06:17:55 +0000</bug_when>
    <thetext>(In reply to Simon Pieters from comment #3)
&gt; UAs have exactly two mutually exclusive media, screen and print. Screen
&gt; readers need to use the screen media because the Web is like that. (It
&gt; appears that the MQ spec doesn&apos;t reflect reality yet.)

http://dev.w3.org/csswg/mediaqueries4/#media-types does reflect the above but also has &apos;speech&apos; (which isn&apos;t mutually exclusive?). I don&apos;t know how it&apos;s intended to be used, though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>97424</commentid>
    <comment_count>7</comment_count>
    <who name="Ian &apos;Hixie&apos; Hickson">ian</who>
    <bug_when>2013-12-10 22:26:17 +0000</bug_when>
    <thetext>Maybe @media reader, then?

   https://bugzilla.mozilla.org/show_bug.cgi?id=946370</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>125639</commentid>
    <comment_count>8</comment_count>
    <who name="Anne">annevk</who>
    <bug_when>2016-03-28 10:52:38 +0000</bug_when>
    <thetext>https://github.com/whatwg/html/pull/950</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>