Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

What is fully supported for CSS page-break properties? #7045

Closed
ddbeck opened this issue Apr 26, 2024 · 2 comments
Closed

What is fully supported for CSS page-break properties? #7045

ddbeck opened this issue Apr 26, 2024 · 2 comments

Comments

@ddbeck
Copy link

ddbeck commented Apr 26, 2024

On https://caniuse.com/css-page-break, no (contemporary) browser is shown as fully supporting page-break properties. Some of that data is out-of-date however, so I'm not sure how to change the data to be more accurate.

By inference with Presto Opera's full support, only page-break-* properties are required and to disregard the break-* properties for finding whether something is fully supported. Likewise, I know that avoid is required because IE is also shown as partially supported (despite the lack of the note about left and right).

That leaves one ambiguity: is support for left and right required for full support? Or is it avoid alone that prevents full support?

@Fyrd
Copy link
Owner

Fyrd commented Apr 28, 2024

Great question, I just did a deep-dive into these properties and have updated the support with my latest findings.

Here's what's changed + an answer to your question:

  1. As this feature is specific to page-break properties, I don't think the new break-* properties support is required, developers can still achieve the desired effect with these original properties.
  2. Chromium started supporting page-break-before/page-break-after: avoid since Chromium 108. IMO This is the most notable support failure, so "fully supported" hinges on this functionality.
  3. The spec mentions "A conforming user agent may interpret the values 'left' and 'right' as 'always'. " so I also believe this should not be required for "full support".

So I've updated support for Chromium browsers to reflect this, plus updated the notes to highlight that note no. 2 is the only one that's the cause of the "partial support" definition.

And if anyone's curious, here's my test suite I used to do the testing (+Print Preview in each browser):
https://tests.caniuse.com/page-break/

ddbeck added a commit to ddbeck/browser-compat-data that referenced this issue May 2, 2024
This came up in the course of defining page break features in
web-features. caniuse reports partial support due to lack of support in
Safari and Firefox.

See also:

- web-platform-dx/web-features#331
- Fyrd/caniuse#7045 (comment)
- https://caniuse.com/css-page-break
ddbeck added a commit to ddbeck/web-features that referenced this issue May 2, 2024
@ddbeck
Copy link
Author

ddbeck commented May 2, 2024

@Fyrd Thank you! That cleared up a lot of details for me—I'm especially grateful for the test cases—and led to me fixing the data in BCD as well. I'll close this up now. Thanks again.

@ddbeck ddbeck closed this as completed May 2, 2024
foolip pushed a commit to mdn/browser-compat-data that referenced this issue May 2, 2024
This came up in the course of defining page break features in
web-features. caniuse reports partial support due to lack of support in
Safari and Firefox.

See also:

- web-platform-dx/web-features#331
- Fyrd/caniuse#7045 (comment)
- https://caniuse.com/css-page-break
ddbeck added a commit to web-platform-dx/web-features that referenced this issue May 2, 2024
See also: Fyrd/caniuse#7045 (comment)

---------

Co-authored-by: François Daoust <fd@tidoust.net>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants