Archive index

A11y Slackers Gitter Channel Archive 21st of September 2015

What fresh hell is THIS now? - Patrick Lauke
  1. zakim-robot
    Sep 21 00:27
    [som, a11y] Hello a11y bots and droids .. Q re. pronunciation: is there a standards way to create a phonetically-spelt label to ensure correct pronunciation?
    For use on things like twitter handles, brand names, and a11y sp33k
  2. zakim-robot
    Sep 21 00:28
    [som, a11y] Assume it’s not good practice to misspell a proper noun
  3. garcialo
    01:23
    It's not really something that's done yet.
  4. garcialo
    01:24
    Screen readers pronounce things the way they do. While a11y people might want to try and ensure consistency between AT pronunciations and human pronunciations, you then have to deal with problems like...which human pronunciation to you.
  5. garcialo
    01:24
    to use*
  6. garcialo
    01:25
    And assuming you're able to get past that, then you have the problem that all of the people that make sites and don't know about a11y yet won't be doing this, so then you have AT pronouncing things one way on a11y sites and another way on the vast majority of the web.
  7. zakim-robot
    02:01

    [som, a11y] @garcialo: agree to the above for the most part .. tho consider most dictionaries also provide a phonetical spelling (see pronunciation on any wiktionary article)

    With regards to AT pronouncing things differently across the web, I don’t know about this. Progressive enhancement is used in most web tech. Shouldn't a user's experience match their experience in every day life, not that of other broken websites?

  8. garcialo
    02:32
    I agree that text to speech and AT should pronounce things according to a selected accent. They currently don't, but more power to them. I also don't think developers should bend over backwards to accommodate these technology failings unless of course they create a barrier to use.
  9. garcialo
    02:34
    Correction, AT should pronounce things in-line with how humans speak them AND according to a selected accent.
  10. garcialo
    02:34
    AT can speak with accents; it was the in-line part that isn't currently done.
  11. zakim-robot
    03:45
    [som, a11y] so long story short, there’s currently no standardised (or somewhat-compliant) way of telling a screen reader how to pronounce a word or (more usefully) an acronym. no problemo. cheers for your help @garcialo
  12. garcialo
    04:06
    Correct. I know Voiceover provides something, and I think JAWS might as well; I don't use those features for what I do. But yeah, nothing standard as far as I know.
  13. zakim-robot
    09:53
    [vcurd, a11y] You can influence the pronunciation in some instances. For example if you use SAT as an abbreviation of Scholastic Achievement Test you probably want each letter pronounced, but NVDA will say "sat". To coerce NVDA to say each letter insert zero-width space entities between each letter. I do the same thing with phone numbers so NVDA says each digit rather than "five million five hundred and fifty six thousand three hundred and thirty three".
  14. zakim-robot
    10:13
    [som, a11y] interesting @vcurd - not exactly what I was after but that will definitely come in handy. thanks
  15. zakim-robot
    10:16
    [callumacrae, a11y] But how can I get it to pronounce "ADD TO BASKET" without saying "A.D.D."? :weary:
  16. zakim-robot
    10:22
    [vcurd, a11y] @callumacrae: I can't replicate that with NVDA, what screen reader are you using? I have heard that text in uppercase can be problematic, if you change the text to sentence case, do you still have the issue?
  17. zakim-robot
    10:23
    [callumacrae, a11y] voiceover. Apparently actual users are used to it and know about it
  18. zakim-robot
    10:23
    [callumacrae, a11y] Changing to title case fixes it, but I can't do that
  19. zakim-robot
    10:24
    [vcurd, a11y] Because you don't have access to the HTML?
  20. stevefaulkner
    10:27
    Suggest as each screen reader has its own method of interpreting uppercase/lowercase etc. There is no standardization, it is not worth trying to bend you code.
  21. zakim-robot
    10:27
    [callumacrae, a11y] Because the conversion rate increase caused by uppercasing the button is more than the total number of people using screenreaders on our site
  22. zakim-robot
    10:29
    [vcurd, a11y] Conversion rate related to the visual appearance of the button could be dealt with using CSS text-transform.
  23. zakim-robot
    10:29
    [callumacrae, a11y] It already is, that affects the screenreader too apparently
  24. zakim-robot
    10:29
    [callumacrae, a11y] The HTML is title case
  25. zakim-robot
    10:29
    [callumacrae, a11y] Uh, sentence case
  26. zakim-robot
    10:34
    [vcurd, a11y] Okay. I can definitely see the frustration.
  27. zakim-robot
    10:36
    [vcurd, a11y] @stevef: Would screen readers be more consistent in their interpretation of lowercase than uppercase?
  28. stevefaulkner
    10:37
    @vcurd I believe so
  29. stevefaulkner
    10:38
    anecdotal reports from SR users indicate that mispronunciation is a problem they deal with, understanding thats its their funky software
  30. garcialo
    11:08
    My recent favorite is how the aXe tool is pronounced. =p
  31. zakim-robot
    12:16
    [Matt Hinchliffe, a11y] Can you prevent changes bubbling up to a live region? We have a live region into which new items are loaded. However, each item also has a live time (E.G. "this was posted 10 minutes ago) so when that time changes the item is read as if it were new!
  32. LjWatson
    12:18
    @Matt do you mean that the content of the live region updates each time the time marker changes - from "10 minutes ago" to "11 minutes ago" for example?
  33. zakim-robot
    12:24
    [Matt Hinchliffe, a11y] That's right
  34. LjWatson
    12:27
    @Matt if it's just a single time marker/message in the live region, and you just want to update the time marker, setting aria-atomic="true" on the live region will cause ATs to speak all the content whenever the time marker is updated.
  35. LjWatson
    12:30
    @Matt if you're asking whether there's a way to stop the time marker updates being announced, I don't think there is.
  36. zakim-robot
    12:32
    [Matt Hinchliffe, a11y] We currently mark up the region as aria-live="assertive" aria-relevant="additions" which we though would avoid the problem but perhaps changing the text from "10 minutes ago" to "11 minutes ago" counts as adding a text node?
  37. LjWatson
    12:32
    @Matt yes, I'd think it probably does count as adding a text node.
  38. zakim-robot
    12:34
    [Pontus Horn af Rantzien, a11y] How are you changing the text? It might work if you explicitly select the text node and change its nodeValue.
  39. zakim-robot
    12:35
    [Matt Hinchliffe, a11y] We are using textContent
  40. zakim-robot
    12:36
    [Matt Hinchliffe, a11y] We'll try changing the existing text node
  41. zakim-robot
    12:54
    [Matt Hinchliffe, a11y] Changing the value of the text node (element.firstChild.nodeValue) seems to do the trick :smile: http://jsbin.com/tekaqigilu/1/edit?html,js,output
  42. zakim-robot
    13:30
    [Matt Hinchliffe, a11y] Thanks @ljwatson and @pontus for your help, we'll do some more testing with this to see if the behaviour is consistent
  43. LjWatson
    13:31
    @Matt good to her you've found a possible solution. Would make a good blog post if you have time/space to write up this technique.
  44. zakim-robot
    15:07
    [Matt Hinchliffe, a11y] I've written this up as an issue on Github for the troublesome component Financial-Times/o-date#43
  45. aardrian
    15:19
    SR users, curious if SRs tell user if there is more than one <main> on a page, particularly after using landmark navigation to jump directly to a <main>. NVDA does not for me, but I am also a novice user and may be PEBKACing it.
  46. stevefaulkner
    15:48
    @aadrian unclear why that is being asked (on issue) only one AT has separate key for main (JAWS) AFAIK
  47. aardrian
    15:54
    @stevefaulkner That explains why I suck at NVDA. I think it's being asked (on issue) to identify whether navigating into a <main>, assuming it is only one, and then navigating to the <nav> would result in missing more <main>s.
  48. stevefaulkner
    16:03
    all regions will be included in navigation regardless of number
  49. stevefaulkner
    16:03
    which is part of the problem
  50. MichielBijl
    16:12
    It bothers me that Hixie defends his point so passionately while he obviously doesn't care for the element…
  51. MichielBijl
    16:12
    It bothers me more than it should.
  52. MichielBijl
    16:13
    “Ideally it wouldn't exist at all, but since it was already implemented, it was cheap to add the semantics for it.”
  53. aardrian
    16:16
    @stevefaulkner But does it ever announce the number of <main> or role="main" elements?
  54. aardrian
    16:18
    @MichielBijl Promotion of multiple <main>s could be an effort to undermine <main>, an element WHATWG never wanted. Down the road a case could be made that its biggest benefit is useless as there are many examples of multiple <main>s.
  55. aardrian
    16:19
    @MichielBijl Of course, that's a tinfoil hat theory that nobody would ever promote or suggest.
  56. garcialo
    16:20
    I haven't bothered reading through the thread. What is even the use case for multiple mains?
  57. MichielBijl
    16:20
    @garcialo nobody know's
  58. MichielBijl
    16:21
    @aardrian could be.
  59. aardrian
    16:21
    @garcialo None? The argument is that there may be many primary content regions. Kind of like a carousel -- all content is the highest priority!
  60. MichielBijl
    16:21
    I like Steve's last comment anyway.
  61. aardrian
    16:21
    @MichielBijl Agreed. That would have been a good place to leave it. But I couldn't control myself.
  62. MichielBijl
    16:22
    Still need to read that one.
  63. MichielBijl
    16:22
    And than that's the last of it.
  64. aardrian
    16:22
    @MichielBijl It's long. Not really worth it. I just wanted to document the failures I see in his arguments (after he laid them out as a clear bullet list).
  65. MichielBijl
    16:23
    Hmm, I'll spend my time on ARIA bugs then.
  66. aardrian
    16:24
    @MichielBijl Good call.
  67. stevefaulkner
    16:24
    @aardrian it never announces the number of specific region elements, JAWS for example tells the user how many regions there are are on a page, but not type
  68. aardrian
    16:25
    @stevefaulkner Ah. Thanks. I take that to mean that ATs that support region navigation don't communicate to the user the presence of multiple regions of the same role.
  69. stevefaulkner
    16:25
    case of for mutliple mains is to identify in a granular fashion, but wel aready have many elements to do that job
  70. aardrian
    16:25
    @stevefaulkner By extension, I take that to mean that just because ATs may support navigating multiple regions of the same role, they do not help the user understand that there are multiple.
  71. stevefaulkner
    16:27
    @aardrian right, and users report they don't like multiple landmarks of same type as it undermines their usefulness (unless an accessible name is provide that differentiates each instance) think in terms of multiple <nav> for example
  72. aardrian
    16:28
    @stevefaulkner Thanks. Going to answer a question on the issue.
  73. garcialo
    16:47
    that would work on main just like it would on nav, right?
  74. zakim-robot
    17:17
    [dylanb, a11y] @stevef: would like your opinion on this
  75. zakim-robot
    17:17

    [dylanb, a11y] ```<label aria-hidden="true" class="credit-card-field-label" id="ccExpDate" for="expirationMonth">Expiration Date</label>
    <span aria-hidden="true" class="required"> *</span>

    <select id="expirationMonth" name="expirationMonth" aria-required="true">
    <option value="" selected="selected">Select Month</option>
    <option value="1">1 - January</option>
    <option value="2">2 - February</option>
    <option value="3">3 - March</option>
    <option value="4">4 - April</option>
    <option value="5">5 - May</option>
    <option value="6">6 - June</option>
    <option value="7">7 - July</option>
    <option value="8">8 - August</option>
    <option value="9">9 - September</option>
    <option value="10">10 - October</option>
    <option value="11">11 - November</option>
    <option value="12">12 - December</option>
    </select>
    ```

  76. zakim-robot
    17:18
    [dylanb, a11y] should this label be read out?
  77. zakim-robot
    17:24
    [Alice Boxhall, a11y] I'm not @stevef but I wouldn't expect it to be read
  78. rodneyrehm
    18:29
    last time we checked something similar, it wasn’t read
  79. zakim-robot
    18:30
    [Alice Boxhall, a11y] "By default, assistive technologies do not relay hidden information, but an author can explicitly override that and include hidden text as part of the accessible name or accessible description by using aria-labelledby or aria-describedby." (that text is no longer in the linked document it refers to)
  80. metaNick
    18:31
    If you were to reference it via aria-labelledby or aria-describedby then, depending on the browser/AT combo, it would read out. I'm encountering something similar right now with error messaging set to aria-hidden="true" but referenced via aria-describedby.
  81. zakim-robot
    18:32
    [Alice Boxhall, a11y] @dylanb However, there's no reason to make it aria-hidden in the first place
  82. zakim-robot
    18:32
    [Alice Boxhall, a11y] the acc tree won't include it by default
  83. rodneyrehm
    18:32
    ok, just checked what I was sort-of remembering. that was <td header=“…”> pointing to <tr hidden><th> - so ignore me.
  84. rodneyrehm
    18:33
    what exactly is the point in hiding something from AT but then linking to it for explicit use in AT?
  85. stevefaulkner
    18:34
    @dylanb yeah what @alice said, same as for hiding via display:none. The relationship is a 'labelfor' one
  86. zakim-robot
    18:34
    [dylanb, a11y] @alice reading this http://www.w3.org/TR/accname-aam-1.1/#mapping_additional_nd_te, I am intrigued by the following language
  87. zakim-robot
    18:35
    [dylanb, a11y] If the current node is hidden and is not referenced by aria-labelledby or aria-describedby, nor referenced by a native host language text alternative element or attribute, return the empty string
  88. zakim-robot
    18:35
    [dylanb, a11y] my emphasis
  89. zakim-robot
    18:36
    [dylanb, a11y] the point is that ATs are reading the label
  90. dylanb
    18:37
    @rodneyrehm this is about supporting this in the aXe ruleset, not about whether this is a best practice, or even "logical"
  91. zakim-robot
    18:37
    [Alice Boxhall, a11y] @dylanb
  92. zakim-robot
    18:37
    [Alice Boxhall, a11y] @stevefaulkner is that new?
  93. rodneyrehm
    18:38
    interesting how the headlines in the aria-in-html document have all been given tabindex=“-1” - that was done to simulate the "focus navigation starting point” in browers that don’t support it, I assume?
  94. zakim-robot
    18:38
    [Alice Boxhall, a11y] @rodneyrehm Yeah, I suspectso
  95. zakim-robot
    18:38
    [Alice Boxhall, a11y] wonders how edits look from gitter
  96. rodneyrehm
    18:39
    nice, I was experimenting with that idea for a possible addition to ally.js
  97. zakim-robot
    18:39
    [dylanb, a11y] @alice: edits do not get reflected in gitter
  98. rodneyrehm
    18:39
    I suspect you edited “suspectso” to “suspect so”, if so, no edit visible
  99. stevefaulkner
    18:39
    @alice maybe,
    all i know is that label elements hidden via display:none do not result in accessible names (in browsers i have looked at)
  100. zakim-robot
    18:40
    [Alice Boxhall, a11y] @stevefaulkner this example uses aria-hidden
  101. zakim-robot
    18:40
    [Alice Boxhall, a11y] (bizarrely)
  102. zakim-robot
    18:40
    [dylanb, a11y] @stevef: yep that is correct
  103. stevefaulkner
    18:40
    i would expect aria-hidden to be same
  104. zakim-robot
    18:41
    [Alice Boxhall, a11y] @stevefaulkner The text @dylanb highlighted suggests otherwise
  105. rodneyrehm
    18:42
    @alice has anything noteworthy happened to/with your input modality proposal?
  106. zakim-robot
    18:43
    [Alice Boxhall, a11y] @rodneyrehm Yep, we're going to move forward with it under WICG
  107. rodneyrehm
    18:43
    (I’ve been mentally disconnected for 3 weeks and only now starting to catch up on things)
  108. zakim-robot
    18:43
    [Alice Boxhall, a11y] https://github.com/WICG/modality
  109. rodneyrehm
    18:44
    oh, nice!
  110. rodneyrehm
    18:45
    has any of the discourse comments made their way in?
  111. rodneyrehm
    18:45
    *have
  112. zakim-robot
    18:46
    [Alice Boxhall, a11y] Not yet :simple_smile:
  113. zakim-robot
    18:46
    [Alice Boxhall, a11y] As in, nothing has changed at all yet
  114. zakim-robot
    18:46
    [Alice Boxhall, a11y] But once we do get to working on it, we'll definitely be taking those into account
  115. rodneyrehm
    18:48
    I’d be interested in a serious discussion about taking some of the learnings from ally.js and creating proper proposals for the hacks I’ve come up with. or is it too early for any of that?
  116. zakim-robot
    18:49
    [Alice Boxhall, a11y] Hm - I'd be really interested in reading about what the learnings were
  117. zakim-robot
    18:50
    [Alice Boxhall, a11y] It sounds like that'd be a great signal for modality direction
  118. powrsurg
    18:50
    This is my first day back at work after taking a vacation. iOS 9 was released while I was out. What is the general feeling towards it: Did it fix any a11y issues, or did it create new ones?
  119. rodneyrehm
    18:51
    well, some drafts are already available to you - and you’ve already improved some stuff in the focus-article/book/thing - I’ll continue with the missing chapters once I got ally.js 1.0 out the door, so I think that’s going to be covered by year’s end (I hope…)
  120. rodneyrehm
    18:51
    (I’m terribly slow, apparently)
  121. stevefaulkner
    18:51
    @alice don't read it that way , will enquire
  122. zakim-robot
    18:51
    [Alice Boxhall, a11y] @rodneyrehm can you point me at the relevant drafts?
  123. rodneyrehm
    18:52
    came by DM
  124. rodneyrehm
    18:57

    interesting how the headlines in the aria-in-html document have all been given tabindex=“-1” - that was done to simulate the "focus navigation starting point” in browers that don’t support it, I assume?

    @stevefaulkner since you’re an editor of that document, was that something you did deliberately? is it provided by whatver tool you use to author the spec? is that a recommended thing to do?

  125. rodneyrehm
    18:57
    wondering what the negative side of making otherwise non-interactive elements focusable could be…
  126. metaNick
    19:09
    @rodneyrehm The only downside would be the default browser focus indicator displaying on click
  127. rodneyrehm
    19:12
    isn’t focus somehow announced in SRs?
  128. metaNick
    19:14
    We're talking about applying tabindex="-1" to elements, correct? If so, you make them programmatically focusable (e.g. a menubar). If you apply tabindex="0" to otherwise non-actionable elements, then there's a problem.
  129. metaNick
    19:18
    I've seen the latter abused, and even folks completely breaking the tab order by applying tabindex="1". It spawns from a misunderstanding of how AT's function.
  130. stevefaulkner
    19:19
    @rodneyrehm habit i guess, in past there has been issue with in page links not moving focus in webkit
  131. rodneyrehm
    19:21
    in the past?
  132. rodneyrehm
    19:22
    Chrome still exhibits that behavior: http://output.jsbin.com/lemirubele#target
  133. rodneyrehm
    19:22
    so does WebKit nightly
  134. rodneyrehm
    19:22
    Focus Link Target (sequential focus navigation starting point) - Blink 454172, WebKit 141136, Trident 1111056
  135. stevefaulkner
    19:48
    @rodneyrehm right, i thought it got fixed, but obviously not
  136. rodneyrehm
    20:01
    @stevefaulkner hm, the JavaScript “fix” for that :target/focus thing is rather simple: http://jsbin.com/daxicoliki/1/edit?html,js - removes the need to add tabindex=“-1” to anything with an id (yes, I know it doesn’t handle a[name] at the moment, besides the point)
  137. zakim-robot
    22:40
    [som, a11y] @alice is modality a valid attribute? Should you not use data-modality instead? I have seen mention of inputmode but I think it’s more of a suggestion/definition for form elements.