Safari and Chrome (on macOS) read system accessibility preferences and convert the user's preferred caption settings into CSS styles. These styles are then applied to the WebVTT cues rendered by the UA. Attached are examples of Chrome and Safari rendering with various accessibility preferences set.
Firefox (on macOS, at least) does not read system accessibility preferences.
Additionally, Safari and Chrome implement WebVTT rendering within the media element Shadow DOM, which is closed, and therefore inaccessible from the rest of the page. Queries of the type getComputedStyle(video, "::cue") fail to apply styles defined inside the Shadow DOM, which includes both system accessibility derived styles, as well as styles applied by the WebVTT file itself.
Concerns have been raised in PR #520 that UAs which apply users' system accessibility preferences to WebVTT rendering may cause fingerprinting issues due to exposing those users' distinguishing preferences to web content. Safari and Chrome's implementation details are intended to prevent that exposure, but they also introduce an interop issue.
Questions:
- Should the specification include a note regarding system accessibility preferences?
- Should the specification suggest or require those preferences to be hidden from the page?
Examples:
Default Caption Settings, Chrome Rendering, Safari Rendering:



Classic Caption Settings, Chrome Rendering, Safari Rendering:

Chrome Classic Caption Rendering:

Safari Classic Caption Rendering:

Custom Caption Settings, Chrome Rendering, Safari Rendering:



Safari and Chrome (on macOS) read system accessibility preferences and convert the user's preferred caption settings into CSS styles. These styles are then applied to the WebVTT cues rendered by the UA. Attached are examples of Chrome and Safari rendering with various accessibility preferences set.
Firefox (on macOS, at least) does not read system accessibility preferences.
Additionally, Safari and Chrome implement WebVTT rendering within the media element Shadow DOM, which is closed, and therefore inaccessible from the rest of the page. Queries of the type
getComputedStyle(video, "::cue")fail to apply styles defined inside the Shadow DOM, which includes both system accessibility derived styles, as well as styles applied by the WebVTT file itself.Concerns have been raised in PR #520 that UAs which apply users' system accessibility preferences to WebVTT rendering may cause fingerprinting issues due to exposing those users' distinguishing preferences to web content. Safari and Chrome's implementation details are intended to prevent that exposure, but they also introduce an interop issue.
Questions:
Examples:
Default Caption Settings, Chrome Rendering, Safari Rendering:



Classic Caption Settings, Chrome Rendering, Safari Rendering:



Chrome Classic Caption Rendering:
Safari Classic Caption Rendering:
Custom Caption Settings, Chrome Rendering, Safari Rendering:


