This repository has been archived by the owner. It is now read-only.

Reflow to Single Column #58

Closed
allanj-uaag opened this Issue Nov 28, 2016 · 79 comments

Comments

Projects
None yet
@allanj-uaag
Contributor

allanj-uaag commented Nov 28, 2016

Current versions of SC and Definitions

Open issues and Surveys

Open issues: SC Status page

(Links to surveys require W3C Member access)

SC Shortname

Linearization

SC Text

A mechanism is available to view content as a single column, except for parts of the content where the spatial layout is essential to the function and understanding of the content.

Suggested Priority Level

Level A

Related Glossary additions or changes

none

Relevant Guidelines and Success Criteria

Guideline 1.3 (Flexible Date) is essential for reflow. SC 1.3.2 (Meaningful Sequences) establishes the necessary structure for reflow to occur. Without reflow SC 1.4.4 (Resize Text) could not be extended to enable very large text. Finally, without reflow restriction of column size would be difficult. This allows raising the level of SC 1.4.8(2) (Visual Presentation (width)) to Level A.

Principle 1, Guideline 1.4 (Distinguishable) is the most appropriate location for this new success criteria. This is because it focuses on presentation of content in a single column of elements with all text in single column format.

The final fit for reflow is in Principle 2, Guideline 2.4 (Navigation). Most people with low vision could benefit from a single column view of a page. This is because items get lost in a two dimensional presentation. (See Benefits below)

Description

Content can be viewed in a single column. All text is presented in single column format and the Line Length SC ensures that all lines of text word wrap to fit the available space. Data tables will have a standard tabular display, a two-dimensional matrix. Some user agents do not support active data such as form controls in reflow. In these cases the content author is not responsible for creating content that reflows.

Reflowed HTML
This good reflow of HTML was accomplished by a custom style sheet.

good PDF reflow

Properly reflowed PDF text.

bad PDF relow

Improper characters used by the author for spaces. This causes words to jam together with reflow. This authoring problem occurs frequently with PDF.

Benefits

One important need of most people with low vision is to reconfigure a presentation from a normal two-dimensional page to a one-dimensional organization of data. This is not always the case, but it is a frequent need. For quick scanning the original structure may be useful to scan for recognizable items. This is usually done when the user knows a page and is looking for just one thing. In cases where careful examination of the page is necessary one column presentation is needed. The reasons are given below.

  1. Continuous Reading: Many people, with and without disabilities, find it more difficult to read when they must scroll from the bottom of a column of text to the top of another column. With low vision the need is greater. To go from one column to next frequently requires paging up several screens to get from the bottom of one column to the top of the next. Additionally, using a small scrollbar and cursor is difficult with limited sight. This makes getting from the bottom of a column and finding the top of the next column more difficult. Reading flow degrades and comprehension suffers.
  2. Reliable Searching: (visual navigation of the viewport) Searching for a specific item within a page of information is difficult for almost everyone with low vision. This is because the field of vision is limited either by enlargement requirements, or physical visual field loss due to tunnel vision. The ability to only scroll in one dimension vertical only or horizontal only but not two dimensions, dramatically simplifies this problem. A person can start at the top of the page and move element by element down the page until the bottom, and be certain that every item has been scanned. (TSBVI,Specific Eye Conditions, Corresponding Impact on Vision, And Related Educational Considerations)
  3. Resizing Text on a Large Scale: Two column or more do not support large print text. Even if text stays within column boundaries, multi-column format will not provide enough space for text in large print. Even medium length words will not fit for sizes exceeding 250%. This causes excessive hyphenation and becomes distracting. This criterion is a necessary condition for useful text resize criterion for people with visual acuity worse than 20/70. Many people in this range require print size greater than 1/2 in. (1 cm.). This cannot be sustained with standard formats. content.
User Need: Users can set blocks of text in one continuous block, instead of in multiple columns.

Source: Accessibility Requirements for People with Low Vision, Section 3.2.2

Testability

  1. HTML: Use the Easy Checks - A First Review of Web Accessibility document, Basic Structure check. Check that the sequence of text is in fact a correct reading sequence. Note: These tests remove all style. This means that items that the author did not intend to be seen become visible. It can be useful to display the pages side by side to compare what is intended to be visible and what is not. If this test passes the content can be restructured into an accessible format for low vision using CSS and JavaScript.
  2. PDF: With a user agent that enables reflow, use the reflow option to see content reflowed into one column. No lines should be truncated. If this operation is successful the document passes.

Techniques

Existing Relevant Techniques

New Techniques

  1. HTML: Write content so that the source order of perceivable elements defines a correct reading sequence. It is perfectly appropriate to include items that are not displayed to users in any convenient order. Such elements do not disrupt the correct reading sequence of the entire page. Make sure that elements that are not to be perceived are marked in a standard way like "display: none" or "visibility: hidden" so they can be ignored by a reformatting program. Test your document with no style in your user agent(s). See that it makes sense as a page and is fully operable. After this content is arranged and tested, positioning and other block formatting of the page. Use style sheets for positioning so that it can be removed and the resulting view is readable and operable.
  2. HTML: Use media queries based on em units for reflow to single column. Reason: When the line length shrinks below a certain number of characters, reflow to a single column is triggered whether the reduced character count is caused by shortened lines or increased font size. This makes the reflow to single column accessible on more devices.
  3. Fxx: Text becomes unreadable because of reflow.
  4. Fxx: Failure of Success Criteria Text Colors and Reflow to Single Column due to inserting important information by using the background-image property of CSS.
    Note: This is necessary because non-decorative images cannot be reflowed.

Related Information

Articles

Email

GitHub

Minutes

Surveys

Wiki Pages

@GreggVan

This comment has been minimized.

Show comment
Hide comment
@GreggVan

GreggVan Dec 15, 2016

Great SC except that there are MANY other exeptions you need to make. MAPS, Diagrams, drawings, plans, schematics , etc.

And you can't make them by list -- you will always exclude them.

Before this can advance (and it is a good one ) you need to capture what needs to flow and what does not / can not without destroying the information.

hmmmm

how about

Except where reflow causes distortion or loss of information.

OH another problem
you just said single column. you didnt say REFLOW nor specify column width.

(also wrong form for an SC)

Maybe

All content can be viewed as a single column with reflow
except where reflow would cause distortion or loss of information

GreggVan commented Dec 15, 2016

Great SC except that there are MANY other exeptions you need to make. MAPS, Diagrams, drawings, plans, schematics , etc.

And you can't make them by list -- you will always exclude them.

Before this can advance (and it is a good one ) you need to capture what needs to flow and what does not / can not without destroying the information.

hmmmm

how about

Except where reflow causes distortion or loss of information.

OH another problem
you just said single column. you didnt say REFLOW nor specify column width.

(also wrong form for an SC)

Maybe

All content can be viewed as a single column with reflow
except where reflow would cause distortion or loss of information

@alastc

This comment has been minimized.

Show comment
Hide comment
@alastc

alastc Dec 15, 2016

Contributor

Can we use a similar exception to #77 Resize content?
...unless "the spatial layout of some the content is essential to that contents use, that part of the content is exempt."

It is worth considering these two together, as effectively Resize content is for browser based zoom up to 400%, and this one goes beyond that for people who re-style the content or remove styles from the content.

Contributor

alastc commented Dec 15, 2016

Can we use a similar exception to #77 Resize content?
...unless "the spatial layout of some the content is essential to that contents use, that part of the content is exempt."

It is worth considering these two together, as effectively Resize content is for browser based zoom up to 400%, and this one goes beyond that for people who re-style the content or remove styles from the content.

@awkawk awkawk changed the title from Reflow to Single Column !! Ready for Review to Reflow to Single Column Jan 9, 2017

@DavidMacDonald

This comment has been minimized.

Show comment
Hide comment
@DavidMacDonald

DavidMacDonald Jan 9, 2017

Contributor

If #57, #58 are not combined, here's a tweak of #58. Don't need the bit about reading order... its already required. SC 1.3.2

Content can be viewed as a single column, except where:

  1. The content is in data tables which have more than one column
  2. Content contains interactive controls that cannot be reflowed
  3. Reflow would cause distortion or loss of information

Gregg raised concern that this list of exceptions could end up endless, and that we should find another way to characterizes the quality of the exceptions and make one generic statement. He suggested "except where reflow would cause distortion or loss of information". I added the third exception to try to address this possible endless list. (the 3rd bullet could also be something like "The layout is essential to the function and understanding of the content")

Contributor

DavidMacDonald commented Jan 9, 2017

If #57, #58 are not combined, here's a tweak of #58. Don't need the bit about reading order... its already required. SC 1.3.2

Content can be viewed as a single column, except where:

  1. The content is in data tables which have more than one column
  2. Content contains interactive controls that cannot be reflowed
  3. Reflow would cause distortion or loss of information

Gregg raised concern that this list of exceptions could end up endless, and that we should find another way to characterizes the quality of the exceptions and make one generic statement. He suggested "except where reflow would cause distortion or loss of information". I added the third exception to try to address this possible endless list. (the 3rd bullet could also be something like "The layout is essential to the function and understanding of the content")

@mbgower

This comment has been minimized.

Show comment
Hide comment
@mbgower

mbgower Jan 9, 2017

Contributor

Okay, last of my broad LVTF comments...
I'd like to assert that IF you make a requirement to Reflow into a single column without horizontal scrolling, it is very difficult to imagine a situation where you would need a more elaborate Resize Text requirement. If I can reach the existing 200% Resize Text and my authoring enables the new requirement to reflow into a single column without horizontal scrolling, then there should be nothing impeding the reflow to the abilities of the user agent, be they 250%, 500% or whatever. Can anyone think of a scenario where this would not be the case?

I think the reverse applies as well: if you don't offer the ability to reflow to a single column, you are going to have great difficulty achieving 400% magnificiation without scrollbars. So I don't see anything gained by creating both new requirements.

Contributor

mbgower commented Jan 9, 2017

Okay, last of my broad LVTF comments...
I'd like to assert that IF you make a requirement to Reflow into a single column without horizontal scrolling, it is very difficult to imagine a situation where you would need a more elaborate Resize Text requirement. If I can reach the existing 200% Resize Text and my authoring enables the new requirement to reflow into a single column without horizontal scrolling, then there should be nothing impeding the reflow to the abilities of the user agent, be they 250%, 500% or whatever. Can anyone think of a scenario where this would not be the case?

I think the reverse applies as well: if you don't offer the ability to reflow to a single column, you are going to have great difficulty achieving 400% magnificiation without scrollbars. So I don't see anything gained by creating both new requirements.

@DavidMacDonald

This comment has been minimized.

Show comment
Hide comment
@DavidMacDonald

DavidMacDonald Jan 9, 2017

Contributor

If #57 and #58 are combined it could be something like this

A mechanism is available to view content as a single column, with blocks of text in this column user adjustable to 25 characters without requiring two dimensional scrolling, except where:

  • The content is in a data table which have more that one column.
  • The content contains interactive controls that that cannot be reflowed.
  • The user-agent fits the layout to the view port, and does not provide a means of re-flowing content.
  • Reflow would cause distortion or loss of information [OR The spatial layout is essential to the function and understanding of the content.]
Contributor

DavidMacDonald commented Jan 9, 2017

If #57 and #58 are combined it could be something like this

A mechanism is available to view content as a single column, with blocks of text in this column user adjustable to 25 characters without requiring two dimensional scrolling, except where:

  • The content is in a data table which have more that one column.
  • The content contains interactive controls that that cannot be reflowed.
  • The user-agent fits the layout to the view port, and does not provide a means of re-flowing content.
  • Reflow would cause distortion or loss of information [OR The spatial layout is essential to the function and understanding of the content.]
@DavidMacDonald

This comment has been minimized.

Show comment
Hide comment
@DavidMacDonald

DavidMacDonald Jan 9, 2017

Contributor

@mbgower I think most modern browsers stop at about 400%. There might be an argument for combining #77 resize one in here with #57 and #58. But I'm thinking we may want to leave them separate in the draft.

Contributor

DavidMacDonald commented Jan 9, 2017

@mbgower I think most modern browsers stop at about 400%. There might be an argument for combining #77 resize one in here with #57 and #58. But I'm thinking we may want to leave them separate in the draft.

@alastc

This comment has been minimized.

Show comment
Hide comment
@alastc

alastc Jan 9, 2017

Contributor

@mbgower For context, the original user-requirement was for the ability for a 1100% increase in sizing without horizontal scrolling!

That was broken down into two:

  1. Resize content (400%), an advance on the current resize text but making use of responsive techniques. This is something content authors should test for as part of normal display with the site CSS, branding etc. Given the spread of mobile compatibility, this is not the same difficulty it used to be.
  2. Reflow, aimed at 400% and above, assuming that the site styles are being over-ridden, so is to enable people to remove the layout and still read content in the correct order.

If you consider SC 1.3.2 to cover reading order in that scenario then arguably it could cover reflow, but previously it hasn't been interpreted that way.

The impact of these could be that the current 1.4.4 is redundant, however, it is still useful for niche cases within the exceptions. E.g. for content which requires 2D and can scroll, the text should be increased by 200%.

A short screencast to show visually how some of that is intended to work.

Contributor

alastc commented Jan 9, 2017

@mbgower For context, the original user-requirement was for the ability for a 1100% increase in sizing without horizontal scrolling!

That was broken down into two:

  1. Resize content (400%), an advance on the current resize text but making use of responsive techniques. This is something content authors should test for as part of normal display with the site CSS, branding etc. Given the spread of mobile compatibility, this is not the same difficulty it used to be.
  2. Reflow, aimed at 400% and above, assuming that the site styles are being over-ridden, so is to enable people to remove the layout and still read content in the correct order.

If you consider SC 1.3.2 to cover reading order in that scenario then arguably it could cover reflow, but previously it hasn't been interpreted that way.

The impact of these could be that the current 1.4.4 is redundant, however, it is still useful for niche cases within the exceptions. E.g. for content which requires 2D and can scroll, the text should be increased by 200%.

A short screencast to show visually how some of that is intended to work.

@lseeman

This comment has been minimized.

Show comment
Hide comment
@lseeman

lseeman Jan 10, 2017

Contributor

merge with merge with visual-presentation wcag issue 51 Or
with support-personalization wcag issue 6

Contributor

lseeman commented Jan 10, 2017

merge with merge with visual-presentation wcag issue 51 Or
with support-personalization wcag issue 6

@DavidMacDonald

This comment has been minimized.

Show comment
Hide comment
@DavidMacDonald

DavidMacDonald Jan 10, 2017

Contributor

Link to Lisa's proposal #51

Contributor

DavidMacDonald commented Jan 10, 2017

Link to Lisa's proposal #51

@mbgower

This comment has been minimized.

Show comment
Hide comment
@mbgower

mbgower Jan 11, 2017

Contributor

@alastc said:

the original user-requirement was for the ability for 1100% increase in sizing without horizontal scrolling!

Can you please explain the rationale for that target?
I'd also like to understand how you approach this target without AT. The most magnification I've seen in a user agent is 500%. Reflow doesn't make that number go any higher.
Reflow gives an author the ability to magnify 4x without scrolling. My admittedly quick assessment of a handful of well-known/used sites suggests that the breakpoint to a single column for most sites is much earlier than 400%. No site I tested with any kind of 'rich' content could achieve a 4x magnification without both scrollbars unless content was reflowed to a single column.

I guess if a user overrode the CSS of a page and made all the text very large THEN magnified it, they could approach 11x, but ultimately there are only 2 things authors need to do to achieve that: Reflow (to single column, no horizontal) and don't impede users' ability to use their own style sheets. I welcome being shown the failure of my logic, but it still seems to me that with just two such SCs in place, we arrive at a place where the limitations are all on the user agent (and beyond the control of the author).

If you consider SC 1.3.2 to cover reading order in that scenario then arguably it could cover reflow,

I was not considering Meaningful Sequence in this discussion. I've normally thought of that as a requirement to ensure the visual order matches the DOM order (as read by an AT, etc). I'd expect less issues with a single column reflow, but I would be surprised if that resolved all meaningful sequence issues.

1.4.4 is redundant, however, it is still useful for niche cases within the exceptions.

Given the need for backward compatibility, as well as to cover the exceptions, absolutely it is useful. I'll be a bit cheeky and suggest the 400% proposal seems to be redundant. If someone can reflow to single column without horizontal scrolling, and they are successfully meeting the 200% requirement, the limitation would seem to me to be the user agent. If folks want to specify 400% I'm not going to lose much sleep, but it seems unnecessary.

Contributor

mbgower commented Jan 11, 2017

@alastc said:

the original user-requirement was for the ability for 1100% increase in sizing without horizontal scrolling!

Can you please explain the rationale for that target?
I'd also like to understand how you approach this target without AT. The most magnification I've seen in a user agent is 500%. Reflow doesn't make that number go any higher.
Reflow gives an author the ability to magnify 4x without scrolling. My admittedly quick assessment of a handful of well-known/used sites suggests that the breakpoint to a single column for most sites is much earlier than 400%. No site I tested with any kind of 'rich' content could achieve a 4x magnification without both scrollbars unless content was reflowed to a single column.

I guess if a user overrode the CSS of a page and made all the text very large THEN magnified it, they could approach 11x, but ultimately there are only 2 things authors need to do to achieve that: Reflow (to single column, no horizontal) and don't impede users' ability to use their own style sheets. I welcome being shown the failure of my logic, but it still seems to me that with just two such SCs in place, we arrive at a place where the limitations are all on the user agent (and beyond the control of the author).

If you consider SC 1.3.2 to cover reading order in that scenario then arguably it could cover reflow,

I was not considering Meaningful Sequence in this discussion. I've normally thought of that as a requirement to ensure the visual order matches the DOM order (as read by an AT, etc). I'd expect less issues with a single column reflow, but I would be surprised if that resolved all meaningful sequence issues.

1.4.4 is redundant, however, it is still useful for niche cases within the exceptions.

Given the need for backward compatibility, as well as to cover the exceptions, absolutely it is useful. I'll be a bit cheeky and suggest the 400% proposal seems to be redundant. If someone can reflow to single column without horizontal scrolling, and they are successfully meeting the 200% requirement, the limitation would seem to me to be the user agent. If folks want to specify 400% I'm not going to lose much sleep, but it seems unnecessary.

@mbgower

This comment has been minimized.

Show comment
Hide comment
@mbgower

mbgower Jan 11, 2017

Contributor

BTW, shouldn't no two-dimensional scrolling (or whatever we're going to call it) be specified in this SC? Just because something is one column, doesn't mean it fits the browser width. I think that has to be clearly stated -- and there may need to be some language around the minimum width supported (or perhaps that's a user agent item).

Contributor

mbgower commented Jan 11, 2017

BTW, shouldn't no two-dimensional scrolling (or whatever we're going to call it) be specified in this SC? Just because something is one column, doesn't mean it fits the browser width. I think that has to be clearly stated -- and there may need to be some language around the minimum width supported (or perhaps that's a user agent item).

@DavidMacDonald

This comment has been minimized.

Show comment
Hide comment
@DavidMacDonald

DavidMacDonald Jan 12, 2017

Contributor

@alastc Here is the consensus proposal from LVTF for this issue.

Content can be viewed as a single column, except where:

  • The content is in data tables which have more than one column
  • Content contains interactive controls that cannot be reflowed

Gregg says: Great SC except that there are MANY other exceptions you need to make. MAPS, Diagrams, drawings, plans, schematics , etc. And you can't make them by list -- you will always exclude them. Before this can advance (and it is a good one ) you need to capture what needs to flow and what does not / can not without destroying the information. The following are possible third bullets. @GreggVan

  • Reflow would cause distortion or loss of information OR
  • The spatial layout is essential to the function and understanding of the content.
Contributor

DavidMacDonald commented Jan 12, 2017

@alastc Here is the consensus proposal from LVTF for this issue.

Content can be viewed as a single column, except where:

  • The content is in data tables which have more than one column
  • Content contains interactive controls that cannot be reflowed

Gregg says: Great SC except that there are MANY other exceptions you need to make. MAPS, Diagrams, drawings, plans, schematics , etc. And you can't make them by list -- you will always exclude them. Before this can advance (and it is a good one ) you need to capture what needs to flow and what does not / can not without destroying the information. The following are possible third bullets. @GreggVan

  • Reflow would cause distortion or loss of information OR
  • The spatial layout is essential to the function and understanding of the content.
@alastc

This comment has been minimized.

Show comment
Hide comment
@alastc

alastc Jan 13, 2017

Contributor

@mbgower I think we're talking at cross purposes here.

Did you see this email to the thread? https://lists.w3.org/Archives/Public/w3c-wai-gl/2017JanMar/0202.html and the screencast? https://alastairc.ac/tests/layouts/resizing-scs.mp4

Reflow is the name of the SC, not necessarily the mechanism, perhaps we need to call it linearisability or something?

Can you please explain the rationale for that [1100%] target?

That is what some people with low vision need, and use when they can. You can get there in a browser, but you have to use both zoom and text size via user-stylesheets or something like that.

If I can reach the existing 200% Resize Text and my authoring enables the new requirement to reflow into a single column without horizontal scrolling, then there should be nothing impeding the reflow to the abilities of the user agent, be they 250%, 500% or whatever. Can anyone think of a scenario where this would not be the case?

It is not the case for most sites (which do get to 400%) under author-styles. At over 400% zoom, author-defined layouts will break down with no easy options available to the author. The branding at the top, the menus (even mobile optimised ones) will start overlapping. You have to take an extreme 'linearise all the things' approach.

Check this example page, and use the link "Linearise page at 20em wide" so see what I mean. That is orthogonal to sizing, some people have little peripheral vision and don't increase the size, but can't see very widely.

Also note how the navigation at the top changes order differently under a reflow and zooming-reflow.

ultimately there are only 2 things authors need to do to achieve that: Reflow (to single column, no horizontal) and don't impede users' ability to use their own style sheets.

Exactly, the first is covered by Resize content, and this is aimed primarily at the second.

I'd expect less [meaningful sequence] issues with a single column reflow, but I would be surprised if that resolved all meaningful sequence issues.

Agreed, and previously meaningful sequence hasn't been applied to the low-vision use case (thus the need for an SC).

If someone can reflow to single column without horizontal scrolling, and they are successfully meeting the 200% requirement, the limitation would seem to me to be the user agent.

The current 200% doesn't prevent horizontal scrolling, so it is not good enough. As soon as you put in a requirement for no horizontal scrolling then you need media queries to reflow, and if you have those, 400% is quite reasonable.

Also, we haven't had much luck with getting the user agents to change...

-Alastair

Contributor

alastc commented Jan 13, 2017

@mbgower I think we're talking at cross purposes here.

Did you see this email to the thread? https://lists.w3.org/Archives/Public/w3c-wai-gl/2017JanMar/0202.html and the screencast? https://alastairc.ac/tests/layouts/resizing-scs.mp4

Reflow is the name of the SC, not necessarily the mechanism, perhaps we need to call it linearisability or something?

Can you please explain the rationale for that [1100%] target?

That is what some people with low vision need, and use when they can. You can get there in a browser, but you have to use both zoom and text size via user-stylesheets or something like that.

If I can reach the existing 200% Resize Text and my authoring enables the new requirement to reflow into a single column without horizontal scrolling, then there should be nothing impeding the reflow to the abilities of the user agent, be they 250%, 500% or whatever. Can anyone think of a scenario where this would not be the case?

It is not the case for most sites (which do get to 400%) under author-styles. At over 400% zoom, author-defined layouts will break down with no easy options available to the author. The branding at the top, the menus (even mobile optimised ones) will start overlapping. You have to take an extreme 'linearise all the things' approach.

Check this example page, and use the link "Linearise page at 20em wide" so see what I mean. That is orthogonal to sizing, some people have little peripheral vision and don't increase the size, but can't see very widely.

Also note how the navigation at the top changes order differently under a reflow and zooming-reflow.

ultimately there are only 2 things authors need to do to achieve that: Reflow (to single column, no horizontal) and don't impede users' ability to use their own style sheets.

Exactly, the first is covered by Resize content, and this is aimed primarily at the second.

I'd expect less [meaningful sequence] issues with a single column reflow, but I would be surprised if that resolved all meaningful sequence issues.

Agreed, and previously meaningful sequence hasn't been applied to the low-vision use case (thus the need for an SC).

If someone can reflow to single column without horizontal scrolling, and they are successfully meeting the 200% requirement, the limitation would seem to me to be the user agent.

The current 200% doesn't prevent horizontal scrolling, so it is not good enough. As soon as you put in a requirement for no horizontal scrolling then you need media queries to reflow, and if you have those, 400% is quite reasonable.

Also, we haven't had much luck with getting the user agents to change...

-Alastair

@DavidMacDonald

This comment has been minimized.

Show comment
Hide comment
@DavidMacDonald

DavidMacDonald Jan 13, 2017

Contributor

@alastc change short name to "Single column:

Single Column: Content can be viewed as a single column, except where:

  • The content is in data tables which have more than one column
  • Content contains interactive controls that cannot be reflowed
  • The spatial layout is essential to the function and understanding of the content.

==OR==

Single Column: A mechanism is available to view content as a single column, except where the spatial layout is essential to the function and understanding of the content.

==OR===

Single Column: Content can be viewed as a single column, except where the spatial layout is essential to the function and understanding of the content.

============
Then in the understanding we could list Tables, Interactive controls, maps, diagrams, drawings, plans, schematics , etc.

Contributor

DavidMacDonald commented Jan 13, 2017

@alastc change short name to "Single column:

Single Column: Content can be viewed as a single column, except where:

  • The content is in data tables which have more than one column
  • Content contains interactive controls that cannot be reflowed
  • The spatial layout is essential to the function and understanding of the content.

==OR==

Single Column: A mechanism is available to view content as a single column, except where the spatial layout is essential to the function and understanding of the content.

==OR===

Single Column: Content can be viewed as a single column, except where the spatial layout is essential to the function and understanding of the content.

============
Then in the understanding we could list Tables, Interactive controls, maps, diagrams, drawings, plans, schematics , etc.

@alastc

This comment has been minimized.

Show comment
Hide comment
@alastc

alastc Jan 13, 2017

Contributor

I'm not sure which option best indicates that the mechanism for making in single column can be done with the UA? What do you think about "Linearisation" as the short name?

Personally, I think data-tables and interactive controls should be covered under:

The spatial layout is essential to the function and understanding of the content.

That can be confirmed in the understanding doc.

Therefore I'm leaning towards:

Linearisation: A mechanism is available to view content as a single column, except where the spatial layout is essential to the function and understanding of the content.

Except that it implies if any of the content relies on spatial layout, the whole page is exempt.

So, how about:

Linearisation: A mechanism is available to view content as a single column, except where the spatial layout is essential to the function and understanding of the content, that part of the content is exempt.

Getting a bit long, but it has the meaning we want...

Contributor

alastc commented Jan 13, 2017

I'm not sure which option best indicates that the mechanism for making in single column can be done with the UA? What do you think about "Linearisation" as the short name?

Personally, I think data-tables and interactive controls should be covered under:

The spatial layout is essential to the function and understanding of the content.

That can be confirmed in the understanding doc.

Therefore I'm leaning towards:

Linearisation: A mechanism is available to view content as a single column, except where the spatial layout is essential to the function and understanding of the content.

Except that it implies if any of the content relies on spatial layout, the whole page is exempt.

So, how about:

Linearisation: A mechanism is available to view content as a single column, except where the spatial layout is essential to the function and understanding of the content, that part of the content is exempt.

Getting a bit long, but it has the meaning we want...

@DavidMacDonald

This comment has been minimized.

Show comment
Hide comment
@DavidMacDonald

DavidMacDonald Jan 13, 2017

Contributor

I'm ok with that.... Word smithing to remove a few redundant words, might look like this:

Linearisation: A mechanism is available to view content as a single column, except for parts of the content where the spatial layout is essential to the function and understanding of the content.

Contributor

DavidMacDonald commented Jan 13, 2017

I'm ok with that.... Word smithing to remove a few redundant words, might look like this:

Linearisation: A mechanism is available to view content as a single column, except for parts of the content where the spatial layout is essential to the function and understanding of the content.

@alastc

This comment has been minimized.

Show comment
Hide comment
@alastc

alastc Jan 13, 2017

Contributor

Ah, better, thanks.

Contributor

alastc commented Jan 13, 2017

Ah, better, thanks.

@DavidMacDonald

This comment has been minimized.

Show comment
Hide comment
@DavidMacDonald

DavidMacDonald Jan 13, 2017

Contributor

OK I'll submit this as ready for group review.

Contributor

DavidMacDonald commented Jan 13, 2017

OK I'll submit this as ready for group review.

@johnfoliot

This comment has been minimized.

Show comment
Hide comment
@johnfoliot

johnfoliot Jan 17, 2017

From WG call of 01/17/17
What would happen if content was laid out in

- would that content pass or fail? Tables can be linearized today, although doing so may break the grid layout being sought by developers who might use code like this.

johnfoliot commented Jan 17, 2017

From WG call of 01/17/17
What would happen if content was laid out in

- would that content pass or fail? Tables can be linearized today, although doing so may break the grid layout being sought by developers who might use code like this.

@alastc

This comment has been minimized.

Show comment
Hide comment
@alastc

alastc Jan 17, 2017

Contributor

I assume that was tables? It would pass if it linearised in an understandable order & was visible, and fail if it did not. It would be exempt if you would lose information from linearising it.

Contributor

alastc commented Jan 17, 2017

I assume that was tables? It would pass if it linearised in an understandable order & was visible, and fail if it did not. It would be exempt if you would lose information from linearising it.

@GreggVan

This comment has been minimized.

Show comment
Hide comment
@GreggVan

GreggVan Jan 18, 2017

GreggVan commented Jan 18, 2017

@LJWatson

This comment has been minimized.

Show comment
Hide comment
@LJWatson

LJWatson Jan 19, 2017

This feedback is based on a collective review by @patrickhlauke @jspellman, @IanPouncey and @LJWatson

The intent of this SC addresses a valid use case (one discussed by @alastc and @LJWatson as far back as Techshare 2005), and incorporates important concepts like horizontal scrolling, but it appears to have quite serious ramifications.

Our reading of this proposal is that it would take current (if not ideal) methods for controlling layout and make them invalid. For example, a layout using
<table role="presentation"> would conform to WCAG2.0, but fail 2.1. It could (and should) be argued that table based layouts are to be discouraged,
but the same concern applies to the far more widespread use of fixed width layouts.

To be clear, we think this SC is a good idea, but the difficulty in meeting it can't be over-emphasised.

LJWatson commented Jan 19, 2017

This feedback is based on a collective review by @patrickhlauke @jspellman, @IanPouncey and @LJWatson

The intent of this SC addresses a valid use case (one discussed by @alastc and @LJWatson as far back as Techshare 2005), and incorporates important concepts like horizontal scrolling, but it appears to have quite serious ramifications.

Our reading of this proposal is that it would take current (if not ideal) methods for controlling layout and make them invalid. For example, a layout using
<table role="presentation"> would conform to WCAG2.0, but fail 2.1. It could (and should) be argued that table based layouts are to be discouraged,
but the same concern applies to the far more widespread use of fixed width layouts.

To be clear, we think this SC is a good idea, but the difficulty in meeting it can't be over-emphasised.

@alastc

This comment has been minimized.

Show comment
Hide comment
@alastc

alastc Jan 19, 2017

Contributor

Thanks @LJWatson,

The intent is that the author wouldn't have to provide the mechanism for reflowing content unless they actively prevent it. I realise, especially reading the exceptions, that this is not clear yet. There has been some confusion in the group about this, and it has manifested in the language.

But to focus on the intent, a user would be over-riding the author styles. I made a little test case to especially tackle tables: https://alastairc.ac/tests/layouts/pixels-tables.html

The page layout is pixel based, and it includes 3 tables. the first two are layout, the last is a data table. The two 'linearise' links on the right are actually bookmarklets that apply a short script. That script linearises the page, over-riding the set styles.

I'm afraid it is a visual example but I'll drop some example code is as well. For tables the (jQuery based script) includes things like:

var layoutTableCells = $('table[role=presentation] td');
$(layoutTableCells).css('display', 'block');

That's a simple method of linearising the table. The method of identifying layout tables could obviously be expanded, but the principle is there.

For data tables it includes this to keep them within the viewport:

var dataTables = $('table:has(th)');
$(dataTables).wrapAll( "<div style='width: 100%; overflow:auto; outline:3px grey solid;padding:3px' />");

It also includes more to remove positioning etc.

So the idea is that a user would have this type of thing as a user-stylesheet, bookmarklet, or browser extension.

There is more work to do in terms of defining techniques, finding out what exactly prevents users from doing this now. There are many reasons why this bookmarklet doesn't work across all sites, but it is working out which can be solved by improving the 'user-agent' script, and which the site author has to do.

There is also plenty of "prior-art" along these lines from things like instapaper, Safari reader, and thankfully an open-source one called Just Read.

Contributor

alastc commented Jan 19, 2017

Thanks @LJWatson,

The intent is that the author wouldn't have to provide the mechanism for reflowing content unless they actively prevent it. I realise, especially reading the exceptions, that this is not clear yet. There has been some confusion in the group about this, and it has manifested in the language.

But to focus on the intent, a user would be over-riding the author styles. I made a little test case to especially tackle tables: https://alastairc.ac/tests/layouts/pixels-tables.html

The page layout is pixel based, and it includes 3 tables. the first two are layout, the last is a data table. The two 'linearise' links on the right are actually bookmarklets that apply a short script. That script linearises the page, over-riding the set styles.

I'm afraid it is a visual example but I'll drop some example code is as well. For tables the (jQuery based script) includes things like:

var layoutTableCells = $('table[role=presentation] td');
$(layoutTableCells).css('display', 'block');

That's a simple method of linearising the table. The method of identifying layout tables could obviously be expanded, but the principle is there.

For data tables it includes this to keep them within the viewport:

var dataTables = $('table:has(th)');
$(dataTables).wrapAll( "<div style='width: 100%; overflow:auto; outline:3px grey solid;padding:3px' />");

It also includes more to remove positioning etc.

So the idea is that a user would have this type of thing as a user-stylesheet, bookmarklet, or browser extension.

There is more work to do in terms of defining techniques, finding out what exactly prevents users from doing this now. There are many reasons why this bookmarklet doesn't work across all sites, but it is working out which can be solved by improving the 'user-agent' script, and which the site author has to do.

There is also plenty of "prior-art" along these lines from things like instapaper, Safari reader, and thankfully an open-source one called Just Read.

@DavidMacDonald

This comment has been minimized.

Show comment
Hide comment
@DavidMacDonald

DavidMacDonald Jan 22, 2017

Contributor

and if it is not a simple table…. You are pretty much hosed.

@GreggVan Wouldn't the exception cover it.

Linearisation: A mechanism is available to view content as a single column, except for parts of the content where the spatial layout is essential to the function and understanding of the content.

Contributor

DavidMacDonald commented Jan 22, 2017

and if it is not a simple table…. You are pretty much hosed.

@GreggVan Wouldn't the exception cover it.

Linearisation: A mechanism is available to view content as a single column, except for parts of the content where the spatial layout is essential to the function and understanding of the content.

@GreggVan

This comment has been minimized.

Show comment
Hide comment
@GreggVan

GreggVan Jan 22, 2017

GreggVan commented Jan 22, 2017

@awkawk

This comment has been minimized.

Show comment
Hide comment
@awkawk

awkawk Jan 28, 2017

Member

Closing since the Pull request was created for this SC. New comments go there: #89

Member

awkawk commented Jan 28, 2017

Closing since the Pull request was created for this SC. New comments go there: #89

@awkawk awkawk closed this Jan 28, 2017

@joshueoconnor

This comment has been minimized.

Show comment
Hide comment
@WayneEDick

This comment has been minimized.

Show comment
Hide comment
@WayneEDick

WayneEDick Mar 4, 2017

Contributor
Contributor

WayneEDick commented Mar 4, 2017

@FionaHolder

This comment has been minimized.

Show comment
Hide comment
@FionaHolder

FionaHolder Mar 4, 2017

@WayneEDick I can see a page failing this but not 1.3.2 if it used tables for layout. That was raised as a concern above, the criterion essentially makes tables for layout invalid. Not that I'd be sorry to see them go though, but I'm sure there are other examples.

FionaHolder commented Mar 4, 2017

@WayneEDick I can see a page failing this but not 1.3.2 if it used tables for layout. That was raised as a concern above, the criterion essentially makes tables for layout invalid. Not that I'd be sorry to see them go though, but I'm sure there are other examples.

@WayneEDick

This comment has been minimized.

Show comment
Hide comment
@WayneEDick

WayneEDick Mar 6, 2017

Contributor
Contributor

WayneEDick commented Mar 6, 2017

@alastc

This comment has been minimized.

Show comment
Hide comment
@alastc

alastc Mar 6, 2017

Contributor

I agree, we can build on 1.3.1 (Info and Relationships) and apply the linearisation to non-data tables. E.g. check for role=presentation, or lack of THs. A layout table that fails this would probably fail 1.3.2 (Meaningful Sequence) already.

Contributor

alastc commented Mar 6, 2017

I agree, we can build on 1.3.1 (Info and Relationships) and apply the linearisation to non-data tables. E.g. check for role=presentation, or lack of THs. A layout table that fails this would probably fail 1.3.2 (Meaningful Sequence) already.

@WayneEDick

This comment has been minimized.

Show comment
Hide comment
@WayneEDick

WayneEDick Mar 6, 2017

Contributor
Contributor

WayneEDick commented Mar 6, 2017

@alastc

This comment has been minimized.

Show comment
Hide comment
@alastc

alastc Mar 6, 2017

Contributor

Hi Wayne, I'm not clear what the 'fallacy' is you are referring to?

ask developers to do what is needed, after doing our best to determine exactly what that is.

Indeed.

Contributor

alastc commented Mar 6, 2017

Hi Wayne, I'm not clear what the 'fallacy' is you are referring to?

ask developers to do what is needed, after doing our best to determine exactly what that is.

Indeed.

@awkawk

This comment has been minimized.

Show comment
Hide comment
@awkawk

awkawk Mar 20, 2017

Member

The main problems I see with this generally good idea are:

  1. Clarity - where do we draw the line with what does and does not need to reflow? I think that it is clear that an image that is wider than the screen wouldn't need to magically wrap (and how would it?) but tables are a big topic in the discussion, and there are other structure types that we need to feel confident that we aren't causing problems for.
  2. Implementability - this is going to limit the acceptable development strategies for regular content, and on top of that there are questions about the support for this in mobile browsers and in mobile apps - how achievable is this today?
Member

awkawk commented Mar 20, 2017

The main problems I see with this generally good idea are:

  1. Clarity - where do we draw the line with what does and does not need to reflow? I think that it is clear that an image that is wider than the screen wouldn't need to magically wrap (and how would it?) but tables are a big topic in the discussion, and there are other structure types that we need to feel confident that we aren't causing problems for.
  2. Implementability - this is going to limit the acceptable development strategies for regular content, and on top of that there are questions about the support for this in mobile browsers and in mobile apps - how achievable is this today?
@alastc

This comment has been minimized.

Show comment
Hide comment
@alastc

alastc Mar 20, 2017

Contributor

Elements which cannot reflow such as image can still 'fit', it is easy to use something like img { max-width:100%;} like this test page, as an author or user-script.

Tables are the only group-container that is 2D and contains text. I suggest we rely on 1.3.1 for requiring a data-table for data, and say that they are exempt (under the 'spatial layout') but that layout tables should be linearisable.

The user-side script I started with included:

// Wrap data tables in a div that allows for horizontal scrolling
var dataTables = $('table:has(th)');
$(dataTables).wrapAll( "<div style='width: 100%; overflow:auto; outline:3px grey solid;padding:3px' />");

// Reflow presentational tables
var layoutTableCells = $('table[role=presentation] td');
$(layoutTableCells).css('display', 'block');

That could be more robust and elegant, but it worked as a starting point.

I can't think of anything else that isn't either a text element that linearises easily, or an image/svg/object type thing that would be exempt?

For Implementability, arguably it isn't asking for more that 1.3.1, except that SC (crucially) hasn't been interpreted as making sure the user could linearise the page. The initial test-script works pretty well on quite a few sites, e.g. BBC, Wikipedia, Microsoft. Any responsive site starts from a linearised point of view so that is fairly easy, but there methods that people use that really disrupt user-driven linearisation.

The things that are currently difficult tend to be the really aggressive layouts, where scripting is used to position things (or we haven't found the right CSS to nullify the layout yet).

For mobile, arguably some devices have that built in already (with the Reader view in Safari for example), but no-one tests against that and the rules/heuristics behind it are a mystery.
You can use bookmarklets (like the example) on mobile, so it is possible.

Contributor

alastc commented Mar 20, 2017

Elements which cannot reflow such as image can still 'fit', it is easy to use something like img { max-width:100%;} like this test page, as an author or user-script.

Tables are the only group-container that is 2D and contains text. I suggest we rely on 1.3.1 for requiring a data-table for data, and say that they are exempt (under the 'spatial layout') but that layout tables should be linearisable.

The user-side script I started with included:

// Wrap data tables in a div that allows for horizontal scrolling
var dataTables = $('table:has(th)');
$(dataTables).wrapAll( "<div style='width: 100%; overflow:auto; outline:3px grey solid;padding:3px' />");

// Reflow presentational tables
var layoutTableCells = $('table[role=presentation] td');
$(layoutTableCells).css('display', 'block');

That could be more robust and elegant, but it worked as a starting point.

I can't think of anything else that isn't either a text element that linearises easily, or an image/svg/object type thing that would be exempt?

For Implementability, arguably it isn't asking for more that 1.3.1, except that SC (crucially) hasn't been interpreted as making sure the user could linearise the page. The initial test-script works pretty well on quite a few sites, e.g. BBC, Wikipedia, Microsoft. Any responsive site starts from a linearised point of view so that is fairly easy, but there methods that people use that really disrupt user-driven linearisation.

The things that are currently difficult tend to be the really aggressive layouts, where scripting is used to position things (or we haven't found the right CSS to nullify the layout yet).

For mobile, arguably some devices have that built in already (with the Reader view in Safari for example), but no-one tests against that and the rules/heuristics behind it are a mystery.
You can use bookmarklets (like the example) on mobile, so it is possible.

@jnurthen

This comment has been minimized.

Show comment
Hide comment
@jnurthen

jnurthen Mar 20, 2017

jnurthen commented Mar 20, 2017

@alastc

This comment has been minimized.

Show comment
Hide comment
@alastc

alastc Mar 20, 2017

Contributor

Yep, presumably at the same level, so exempt anything within that block.

Contributor

alastc commented Mar 20, 2017

Yep, presumably at the same level, so exempt anything within that block.

@alastc

This comment has been minimized.

Show comment
Hide comment
@alastc

alastc Mar 22, 2017

Contributor

Noting another comment about the mechanism language:

this requirement sounds like it's asking for websites to place a "linearize" button on the page.

Contributor

alastc commented Mar 22, 2017

Noting another comment about the mechanism language:

this requirement sounds like it's asking for websites to place a "linearize" button on the page.

@joshueoconnor

This comment has been minimized.

Show comment
Hide comment
@joshueoconnor

joshueoconnor Mar 28, 2017

Contributor

@alastc Could people who needed content linearised or single-column formatted - like this, not have a plug in etc that did this? So the dev has to code things in a way that just facilitates this functionality? That to me is reasonable, rather then the dev themselves having to have a 'mechanism'?

Contributor

joshueoconnor commented Mar 28, 2017

@alastc Could people who needed content linearised or single-column formatted - like this, not have a plug in etc that did this? So the dev has to code things in a way that just facilitates this functionality? That to me is reasonable, rather then the dev themselves having to have a 'mechanism'?

@alastc

This comment has been minimized.

Show comment
Hide comment
@alastc

alastc Mar 28, 2017

Contributor

@joshueoconnor Yep, that's the primary aim. It is in the same category (in customisation levels) as adapting text - let the user do it. Maybe we can import the note from adapting text.

Contributor

alastc commented Mar 28, 2017

@joshueoconnor Yep, that's the primary aim. It is in the same category (in customisation levels) as adapting text - let the user do it. Maybe we can import the note from adapting text.

@joshueoconnor

This comment has been minimized.

Show comment
Hide comment
@joshueoconnor

joshueoconnor Mar 28, 2017

Contributor

@alastc Sounds good to me :-)

Contributor

joshueoconnor commented Mar 28, 2017

@alastc Sounds good to me :-)

@jake-abma

This comment has been minimized.

Show comment
Hide comment
@jake-abma

jake-abma May 5, 2017

Contributor

Trying to get grip on this SC here some small remarks:

At “Relevant Guidelines and Success Criteria” I’m wondering if guideline 1.3 will be renamed as I see “Guideline 1.3 (Flexible Date) is essential for reflow.” I didn’t think 2.0 text would be changed and the current name is “Adaptable”.

textual corrections: “Flexible Date” should be “Flexible Data” and “(Meaningful Sequences)” should be “(Meaningful Sequence)”

Contributor

jake-abma commented May 5, 2017

Trying to get grip on this SC here some small remarks:

At “Relevant Guidelines and Success Criteria” I’m wondering if guideline 1.3 will be renamed as I see “Guideline 1.3 (Flexible Date) is essential for reflow.” I didn’t think 2.0 text would be changed and the current name is “Adaptable”.

textual corrections: “Flexible Date” should be “Flexible Data” and “(Meaningful Sequences)” should be “(Meaningful Sequence)”

@jake-abma

This comment has been minimized.

Show comment
Hide comment
@jake-abma

jake-abma May 5, 2017

Contributor

About raising the level of SC 1.4.8(2) to Level A: I do understand there is a relation between 1.4.8(2) and Reflow to Single Column but restricting column size seems not appropriate. It could be that I do want to make a very wide column with big text for a web application shown on a large screen. So I’m wondering if 1.4.8(2) is relevant here as restricting to 80 characters for a Level A seems too strict.

Contributor

jake-abma commented May 5, 2017

About raising the level of SC 1.4.8(2) to Level A: I do understand there is a relation between 1.4.8(2) and Reflow to Single Column but restricting column size seems not appropriate. It could be that I do want to make a very wide column with big text for a web application shown on a large screen. So I’m wondering if 1.4.8(2) is relevant here as restricting to 80 characters for a Level A seems too strict.

@jake-abma

This comment has been minimized.

Show comment
Hide comment
@jake-abma

jake-abma May 5, 2017

Contributor

The most appropriate location to me seems Principle 1, Guideline 1.3 (Adaptable) and not as suggested Principle 1, Guideline 1.4 (Distinguishable). This because 1.3 is about “Create content that can be presented in different ways (for example simpler layout) without losing information or structure.” Especially if we expect user to linearize content themselves. Guideline 1.4 is concerned with making the default presentation as easy to perceive as possible although I realize SC 1.4.4 Resize Text sits in 1.4.

Extending on this (Adaptable) I see we need to fix the concerns as Leonie mentioned when she brings on a valid issue when tables are used for layout: #58 (comment) This must be addressed.

And also Fiona has a point #58 (comment) for show/hide content and turning off CSS but this is inherent if we take the comment of Alastair into account at: #58 (comment) nr.2

So when Linearization is about adaptable content as Alastair says “but to make sure that if someone does forcibly reflow the content, the reading order makes sense.” It seems to me the content author only needs to be sure there is meaningful sequence in the DOM for web (HTML) .

Contributor

jake-abma commented May 5, 2017

The most appropriate location to me seems Principle 1, Guideline 1.3 (Adaptable) and not as suggested Principle 1, Guideline 1.4 (Distinguishable). This because 1.3 is about “Create content that can be presented in different ways (for example simpler layout) without losing information or structure.” Especially if we expect user to linearize content themselves. Guideline 1.4 is concerned with making the default presentation as easy to perceive as possible although I realize SC 1.4.4 Resize Text sits in 1.4.

Extending on this (Adaptable) I see we need to fix the concerns as Leonie mentioned when she brings on a valid issue when tables are used for layout: #58 (comment) This must be addressed.

And also Fiona has a point #58 (comment) for show/hide content and turning off CSS but this is inherent if we take the comment of Alastair into account at: #58 (comment) nr.2

So when Linearization is about adaptable content as Alastair says “but to make sure that if someone does forcibly reflow the content, the reading order makes sense.” It seems to me the content author only needs to be sure there is meaningful sequence in the DOM for web (HTML) .

@jake-abma

This comment has been minimized.

Show comment
Hide comment
@jake-abma

jake-abma May 5, 2017

Contributor

The suggestion that reflow if covered by SC 1.3.2. seems valid especially when reading the text in the thread https://lists.w3.org/Archives/Public/w3c-wai-gl/2017JanMar/0202.html “2. Reflow to single column [2] is to enable people to go beyond 400% and have a correct reading order. It is NOT intended to be the authors responsibility to make the reflow happen (in HMTL), but to make sure that if someone does forcibly reflow the content, the reading order makes sense.”

In SC 1.3.2 we also have “For clarity: Providing a particular linear order is only required where it affects meaning.” And this covers linearization, not?

As Wayne already says in #58 (comment) “We can already produce a linearized accessibility API. Why is that so difficult in the browser?” isn’t this already true in the case of the DOM which must have a meaningful sequence (SC 1.3.2) and thus fits the condition for linearization?

Contributor

jake-abma commented May 5, 2017

The suggestion that reflow if covered by SC 1.3.2. seems valid especially when reading the text in the thread https://lists.w3.org/Archives/Public/w3c-wai-gl/2017JanMar/0202.html “2. Reflow to single column [2] is to enable people to go beyond 400% and have a correct reading order. It is NOT intended to be the authors responsibility to make the reflow happen (in HMTL), but to make sure that if someone does forcibly reflow the content, the reading order makes sense.”

In SC 1.3.2 we also have “For clarity: Providing a particular linear order is only required where it affects meaning.” And this covers linearization, not?

As Wayne already says in #58 (comment) “We can already produce a linearized accessibility API. Why is that so difficult in the browser?” isn’t this already true in the case of the DOM which must have a meaningful sequence (SC 1.3.2) and thus fits the condition for linearization?

@jake-abma

This comment has been minimized.

Show comment
Hide comment
@jake-abma

jake-abma May 5, 2017

Contributor

As John says #58 (comment) “Tables can be linearized today“ and Alastair at #58 (comment) and #58 (comment) this is true from a CSS perspective if this is what you mean but not from an accessibility perspective as playing with the display property for a table removes the role from the accessibility API and causing screen readers to not recognize them as tables anymore. This means if you’re zoomed in and using a screen reader the tables are not read properly anymore. Also using the arrow keys cause strange behaviour skipping / jumping around.

Contributor

jake-abma commented May 5, 2017

As John says #58 (comment) “Tables can be linearized today“ and Alastair at #58 (comment) and #58 (comment) this is true from a CSS perspective if this is what you mean but not from an accessibility perspective as playing with the display property for a table removes the role from the accessibility API and causing screen readers to not recognize them as tables anymore. This means if you’re zoomed in and using a screen reader the tables are not read properly anymore. Also using the arrow keys cause strange behaviour skipping / jumping around.

@jake-abma

This comment has been minimized.

Show comment
Hide comment
@jake-abma

jake-abma May 5, 2017

Contributor

For “A mechanism is available to view content…” I wonder if this is something a content author should / could provide or that it is a function of a user / user agent for instance and I see this was also mentioned by Paul and referenced by Alastair: #58 (comment). And Jared at #249
Seems like we’re steering at making it possible for users to do the linearization themselves and not providing a mechanism (to be available).

Contributor

jake-abma commented May 5, 2017

For “A mechanism is available to view content…” I wonder if this is something a content author should / could provide or that it is a function of a user / user agent for instance and I see this was also mentioned by Paul and referenced by Alastair: #58 (comment). And Jared at #249
Seems like we’re steering at making it possible for users to do the linearization themselves and not providing a mechanism (to be available).

@GreggVan

This comment has been minimized.

Show comment
Hide comment
@GreggVan

GreggVan May 5, 2017

GreggVan commented May 5, 2017

@DavidMacDonald

This comment has been minimized.

Show comment
Hide comment
@DavidMacDonald

DavidMacDonald Jun 5, 2017

Contributor

Comment on linearization. I've accommodated and trained employees with low vision in banks and government for about 15 years. My experience is that once we need more than 400% (4x zoom), we are really into screen reader territory. I generally say "OK lets start thinking about migrating to learning a screen reader."

Almost all users I've worked at were extremely relieved to transition to screen reader at anything over 400%. One employee was nervouse to go to screen reader and hung onto zooming til it was 20x. (about 5 letters on a 27"screen) When we finally went to screen reader she was extremely relieved and wish she had done it sooner.

I don't think WCAG 2.1 should try to accommodate more than 400% without assistive technology. I think the ask upon the developer is disproportionate to the benefit to most end users.

I think after 400% the end user either needs AT like ZoomText's docreader app which reflows content, a screen reader, or other other means. I don't think it should be the author's responsibility at this point in history.

Contributor

DavidMacDonald commented Jun 5, 2017

Comment on linearization. I've accommodated and trained employees with low vision in banks and government for about 15 years. My experience is that once we need more than 400% (4x zoom), we are really into screen reader territory. I generally say "OK lets start thinking about migrating to learning a screen reader."

Almost all users I've worked at were extremely relieved to transition to screen reader at anything over 400%. One employee was nervouse to go to screen reader and hung onto zooming til it was 20x. (about 5 letters on a 27"screen) When we finally went to screen reader she was extremely relieved and wish she had done it sooner.

I don't think WCAG 2.1 should try to accommodate more than 400% without assistive technology. I think the ask upon the developer is disproportionate to the benefit to most end users.

I think after 400% the end user either needs AT like ZoomText's docreader app which reflows content, a screen reader, or other other means. I don't think it should be the author's responsibility at this point in history.

@joshueoconnor

This comment has been minimized.

Show comment
Hide comment
@joshueoconnor
Contributor

joshueoconnor commented Jun 7, 2017

@alastc

This comment has been minimized.

Show comment
Hide comment
@alastc

alastc Jun 7, 2017

Contributor

My experience is that once we need more than 400% (4x zoom), we are really into screen reader territory

Perhaps that is because there haven't been any good intermediate options? (I think Wayne and others would say magnification isn't a good option, at least for reading.)

I don't think WCAG 2.1 should try to accommodate more than 400% without assistive technology.

Do we consider user-side scripts/extensions AT? It is adapting the interface in a way that the author doesn't specify, so I would have thought so.

An important point about this SC is that we don't expect the author to provide a different interface, we expect them not to prevent the user making one.

Contributor

alastc commented Jun 7, 2017

My experience is that once we need more than 400% (4x zoom), we are really into screen reader territory

Perhaps that is because there haven't been any good intermediate options? (I think Wayne and others would say magnification isn't a good option, at least for reading.)

I don't think WCAG 2.1 should try to accommodate more than 400% without assistive technology.

Do we consider user-side scripts/extensions AT? It is adapting the interface in a way that the author doesn't specify, so I would have thought so.

An important point about this SC is that we don't expect the author to provide a different interface, we expect them not to prevent the user making one.

@kerstinp

This comment has been minimized.

Show comment
Hide comment
@kerstinp

kerstinp Jun 7, 2017

I think that also in this case a note should be added, that the WG is seeking input on PDF.

kerstinp commented Jun 7, 2017

I think that also in this case a note should be added, that the WG is seeking input on PDF.

@alastc

This comment has been minimized.

Show comment
Hide comment
@alastc

alastc Jun 7, 2017

Contributor

I think you mean that for #77?

Contributor

alastc commented Jun 7, 2017

I think you mean that for #77?

@kerstinp

This comment has been minimized.

Show comment
Hide comment
@kerstinp

kerstinp Jun 7, 2017

@alastc Also for this SC cause a PDF reflow is explicitly mentioned.

kerstinp commented Jun 7, 2017

@alastc Also for this SC cause a PDF reflow is explicitly mentioned.

@alastc

This comment has been minimized.

Show comment
Hide comment
@alastc

alastc Jun 7, 2017

Contributor

ok, I just meant this one hasn't gotten as far along yet, I don't think it is up for a CFC yet.

Contributor

alastc commented Jun 7, 2017

ok, I just meant this one hasn't gotten as far along yet, I don't think it is up for a CFC yet.

@DavidMacDonald

This comment has been minimized.

Show comment
Hide comment
@DavidMacDonald

DavidMacDonald Jun 8, 2017

Contributor

(I think Wayne and others would say magnification isn't a good option, at least for reading.)

The docreader pulls out the content and reflows it and does anything with the text the user wants. It's not perfect. It can be heavy on the system, and doesn't pull put controls etc... But I'll stand by my experience with many low vision employees. More than 400% is getting into screen reader territory, and it's a huge ask on developers in today's wild west environment.

https://www.youtube.com/watch?v=6cbYmbeDZyQ
See at around 2:30.

Contributor

DavidMacDonald commented Jun 8, 2017

(I think Wayne and others would say magnification isn't a good option, at least for reading.)

The docreader pulls out the content and reflows it and does anything with the text the user wants. It's not perfect. It can be heavy on the system, and doesn't pull put controls etc... But I'll stand by my experience with many low vision employees. More than 400% is getting into screen reader territory, and it's a huge ask on developers in today's wild west environment.

https://www.youtube.com/watch?v=6cbYmbeDZyQ
See at around 2:30.

@alastc

This comment has been minimized.

Show comment
Hide comment
@alastc

alastc Jun 8, 2017

Contributor

Hi David,

The idea of this SC is to make something like ZoomText's docreader for the web work.

So this:
Gov uk website screenshot

Becomes this (or something like it, the colours and size would be down to preference):
Gov uk website linearised and in black and white

Simply by running a user-side script (that's a real example using bookmarklets).

As I've said above the mechanism is fairly straightforward, the things devs would have to worry about are mixing in layout with JS, and checking that dynamic updates to layout work when the layout has been neutralised.

Contributor

alastc commented Jun 8, 2017

Hi David,

The idea of this SC is to make something like ZoomText's docreader for the web work.

So this:
Gov uk website screenshot

Becomes this (or something like it, the colours and size would be down to preference):
Gov uk website linearised and in black and white

Simply by running a user-side script (that's a real example using bookmarklets).

As I've said above the mechanism is fairly straightforward, the things devs would have to worry about are mixing in layout with JS, and checking that dynamic updates to layout work when the layout has been neutralised.

@mraccess77

This comment has been minimized.

Show comment
Hide comment
@mraccess77

mraccess77 Jun 8, 2017

Contributor

Last time I checked the ZT doc read in PDF (Acrobat) it appeared that i was copying the content from the page using something like the clipboard and inserting it into the doc reader. I could be wrong and maybe on the web it is more complex than that.

Contributor

mraccess77 commented Jun 8, 2017

Last time I checked the ZT doc read in PDF (Acrobat) it appeared that i was copying the content from the page using something like the clipboard and inserting it into the doc reader. I could be wrong and maybe on the web it is more complex than that.

@alastc

This comment has been minimized.

Show comment
Hide comment
@alastc

alastc Jun 8, 2017

Contributor

According to their video the DocReader is for Word/PDF, and it does pull the text into a separate window. (AppReader they suggest for web content, but that reads it out audibly whilst highlighting the location, it doesn't try and re-format the text.)

Contributor

alastc commented Jun 8, 2017

According to their video the DocReader is for Word/PDF, and it does pull the text into a separate window. (AppReader they suggest for web content, but that reads it out audibly whilst highlighting the location, it doesn't try and re-format the text.)

@DavidMacDonald

This comment has been minimized.

Show comment
Hide comment
@DavidMacDonald

DavidMacDonald Jun 8, 2017

Contributor
Contributor

DavidMacDonald commented Jun 8, 2017

@awkawk awkawk added the Defer label Aug 24, 2017

@awkawk awkawk closed this Aug 24, 2017

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.