Skip to content

[Problem/Bug]: Why are page-breaks not working? #5264

Closed
@ajtruckle

Description

@ajtruckle

What happened?

Try this HTML in WebView2. You'll need your own dummy graphic at the right size and tweak the path accordingly:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="en" dir="ltr" xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
    <title>
        Assignment Slips
    </title>
    <style type="text/css">
        @import url('2023-11/s-89-eng.css');

        @media print {
            .containerPage {
                page-break-before: always;
            }

                .containerPage:first-child {
                    page-break-before: avoid;
                }

            .breakBefore {
                page-break-before: always;
            }
        }
    </style>
</head>
<body>
    <div class="containerPage">
        <div class="containerSlip">
            <img alt="s89" width="323px" height="429px" src="2023-11\s-89-eng.jpg" />
            <div class="fieldName">Student A</div>
            <div class="fieldAssisant"></div>
            <div class="fieldDate">05/06/2025</div>
            <div class="fieldPartNo">3. Bible Reading</div>
            <div class="fieldCounsel">#12</div>
            <div class="checkMainHall"></div>
        </div>
    </div>
    <div class="containerPage breakBefore">
        <div class="containerSlip">
            <img alt="s89" width="323px" height="429px" src="2023-11\s-89-eng.jpg" />
            <div class="fieldName">Student B</div>
            <div class="fieldAssisant"></div>
            <div class="fieldDate">05/06/2025</div>
            <div class="fieldPartNo">3. Bible Reading</div>
            <div class="fieldCounsel">#12</div>
            <div class="checkAuxClass1"></div>
        </div>
    </div>
    <div class="containerPage breakBefore">
        <div class="containerSlip">
            <img alt="s89" width="323px" height="429px" src="2023-11\s-89-eng.jpg" />
            <div class="fieldName">Student C</div>
            <div class="fieldAssisant">Assistant A</div>
            <div class="fieldDate">05/06/2025</div>
            <div class="fieldPartNo">4. Starting a Conversation</div>
            <div class="fieldCounsel">#2-#5</div>
            <div class="checkMainHall"></div>
        </div>
    </div>
    <div class="containerPage breakBefore">
        <div class="containerSlip">
            <img alt="s89" width="323px" height="429px" src="2023-11\s-89-eng.jpg" />
            <div class="fieldName">Student D</div>
            <div class="fieldAssisant">Assistant B</div>
            <div class="fieldDate">05/06/2025</div>
            <div class="fieldPartNo">5. Following Up</div>
            <div class="fieldCounsel">#9-#5</div>
            <div class="checkMainHall"></div>
        </div>
    </div>
    <div class="containerPage breakBefore">
        <div class="containerSlip">
            <img alt="s89" width="323px" height="429px" src="2023-11\s-89-eng.jpg" />
            <div class="fieldName">Student E</div>
            <div class="fieldAssisant"></div>
            <div class="fieldDate">05/06/2025</div>
            <div class="fieldPartNo">6. Talk</div>
            <div class="fieldCounsel">#8</div>
            <div class="checkMainHall"></div>
        </div>
    </div>
    <div class="containerPage breakBefore">
        <div class="containerSlip">
            <img alt="s89" width="323px" height="429px" src="2023-11\s-89-eng.jpg" />
            <div class="fieldName">Student F</div>
            <div class="fieldAssisant">Assistant C</div>
            <div class="fieldDate">05/06/2025</div>
            <div class="fieldPartNo">4. Starting a Conversation</div>
            <div class="fieldCounsel">#2-#5</div>
            <div class="checkAuxClass1"></div>
        </div>
    </div>
    <div class="containerPage breakBefore">
        <div class="containerSlip">
            <img alt="s89" width="323px" height="429px" src="2023-11\s-89-eng.jpg" />
            <div class="fieldName">Student G</div>
            <div class="fieldAssisant">Assistant D</div>
            <div class="fieldDate">05/06/2025</div>
            <div class="fieldPartNo">5. Following Up</div>
            <div class="fieldCounsel">#9-#5</div>
            <div class="checkAuxClass1"></div>
        </div>
    </div>
    <div class="containerPage breakBefore">
        <div class="containerSlip">
            <img alt="s89" width="323px" height="429px" src="2023-11\s-89-eng.jpg" />
            <div class="fieldName">Student H</div>
            <div class="fieldAssisant"></div>
            <div class="fieldDate">05/06/2025</div>
            <div class="fieldPartNo">6. Talk</div>
            <div class="fieldCounsel">#8</div>
            <div class="checkAuxClass1"></div>
        </div>
    </div>
</body>
</html>

Importance

Important. My app's user experience is significantly compromised.

Runtime Channel

Stable release (WebView2 Runtime)

Runtime Version

136.0.3240.92

SDK Version

3240.44

Framework

Win32

Operating System

Windows 11

OS Version

10.0.26100

Repro steps

When I print preview (to save as PDF or to a printer) it should show one slip per page. But doesn't. Why?

Repros in Edge Browser

Yes, issue can be reproduced in the corresponding Edge version

Regression

No, this never worked

Last working version (if regression)

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions