a11yTO Conf: CSS Display Properties versus HTML Semantics

If you attended my pre-recorded remote CSUN 2020 talk, then this talk will be familiar. I updated with the latest browsers, since February was six Chrome and nine Firefox versions ago.

This talk was also only fifteen minutes, so I cut the videos and some other materials. Go check the original slides if you need that context.

Or visit them directly at SlideShare: a11yTO CONF 2020: CSS Display Properties v. HTML Semantics

Tables

There were a few slides of tables showing browser and screen reader support. The structure is lost in the SlideShare embed, so I have re-created them here.

This time I am linking the test cases so you can try them yourself:

Chrome 86 / Windows 10
CSS <table>, etc. <ul>, <ol>, <dl> <h#> <button>
display: flex
display: grid
display: block
display: inline-block
display: contents
Slide 13
Firefox 82 / Windows 10
CSS <table>, etc. <ul>, <ol>, <dl> <h#> <button>
display: flex 1
display: grid 1
display: block
display: inline-block 2
display: contents 2 3
Slide 14
  1. <th>s with flex and grid are announced as cells, not column or row header;
  2. Inserts text leaf between each one;
  3. Issues a keyboard use warning.
Safari / macOS 10.15.6
CSS <table>, etc. <ul>, <ol>, <dl> <h#> <button>
display: flex 1 4
display: grid 1 4
display: block 2
display: inline-block 2
display: contents 3
Slide 15
  1. Recognizes <table> and <caption> only;
  2. Can navigate in VoiceOver with table commands, but column/row headers are not conveyed;
  3. Can navigate by row in VoiceOver, but only hear a string of text;
  4. VoiceOver will break up any text that wraps when using virtual cursor.
Chrome 86 / Android 11
CSS <table>, etc. <ul>, <ol>, <dl> <h#> <button>
display: flex
display: grid
display: block
display: inline-block
display: contents 1
Slide 16
  1. TalkBack will not announce the list item count, position, start, or end, but it will announce when you exit the list.
Safari / iOS 14
CSS <table>, etc. <ul>, <ol>, <dl> <h#> <button>
display: flex
display: grid
display: block 1 2
display: inline-block 1 2
display: contents 1 2 3
Slide 17
  1. Treats all cells as column 1;
  2. Recognizes <dl>s overall, which likely came with the addition of <dl> support in iOS 14;
  3. Still fires on double-tap with VO.

References

No comments? Be the first!

Leave a Comment or Response

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>