Включение или выключение заголовков и нижнего колонтитула по умолчанию при печати в браузере Edge? - PullRequest
0 голосов
/ 02 мая 2018

Я много искал, но не нашел способа включить верхний и нижний колонтитулы на каждой странице печати по умолчанию в браузере Edge.

В Chrome и IE заголовок и нижний колонтитул отображаются по умолчанию, но в Edge по умолчанию он выключен. Есть ли какое-либо свойство CSS, которое необходимо установить, чтобы браузер Edge отображал верхний и нижний колонтитулы по умолчанию на каждой странице печати?

Вот JS и CSS, используемые для печати страницы:

private createIframe() {
        let oldFrame: any = document.getElementsByClassName('e-ngx-print-frame');
        if (oldFrame.length > 0) {
            oldFrame[0].parentNode.removeChild(oldFrame[0]);
        }
        try {
            let printIframe: any = document.createElement('iframe');
            document.body.appendChild(printIframe);
            printIframe.style.position = 'absolute';
            printIframe.style.border = '0';
            printIframe.style.width = '0';
            printIframe.style.height = '0';
            printIframe.style.left = '0';
            printIframe.style.top = '0';
            printIframe.style.zIndex = '-1';
            printIframe.className = 'e-ngx-print-frame';
            this.printWindow = printIframe.contentWindow;
            this.printDoc = printIframe.contentDocument ? printIframe.contentDocument : (printIframe.contentWindow ? printIframe.contentWindow.document : printIframe.document);
        }
        catch (e) {
            throw e + '. iframes may not be supported in this browser.';
        }

        if (!this.printWindow) {
            throw 'Cannot find window.';
        }

        if (!this.printDoc) {
            throw 'Cannot find document.';
        }
    }

    private getPrintWindow() {
        if (this.mode === this.modes.iframe) {
            this.createIframe();
        } else if (this.mode === this.modes.popup) {
            this.createPopup();
        }
    }

public print(printHTML?: any) {
        this.printHTML = printHTML ? printHTML : this.printHTML;
this.oldBtnText = this.btnText;
        this.btnText = 'Print';
        let timeoutId: number = window.setTimeout(() => {
            window.clearTimeout(timeoutId);
            this.getPrintWindow();
            this.write();
            this.startPrint();
        }, 500);
    }

**CSS**:
 @media print 
    {
@page 
      {
        size: auto;   /* auto is the initial value */
       margin-top:0mm; /* this affects the margin in the printer settings */
      }
}
...