Я пытаюсь показать простую кнопку, с изображением на ней, вот так:
Кнопка выглядит прямо в Chrome, но немного выключена в Firefox - она не горизонтально центрирована, а скошена вправо. Ниже приведен снимок экрана FF. Как сделать изображение центрированным (как в Chrome по умолчанию)? Попробовал добавить в имг запас: 0, безуспешно.
-121--1113378-
Я использую код из этого ответа для печати отдельной страницы непосредственно с помощью кнопки печати. Пользователь нажимает кнопку печати, и функция печати получает URL-адрес. Функция печати загружает отдельную страницу на экран : none
iframe и печатает этот iframe onLoad
. Работает в IE, Chrome, но не firefox. В firefox он загружает страницу в div, но никогда не печатает и не открывает диалоговое окно печати. Оказывается, firefox не напечатает iframe, если для него установлено значение дисплеев: none
, как показано ниже:
Это ожидаемое поведение? Все остальные браузеры печатают, я думаю о публикации на Bugzilla. Я попробовал некоторые css «трюки», чтобы сделать div не отображать, где пользователь может видеть его, но это всегда видно каким-то образом. В настоящее время я использую приведенный ниже CSS, чтобы сделать iframe невидимым:
#printerDiv iframe{
width:1px !important;
height:1px !important;
border:0 !important;
margin:0 !important;
}
Но его поля все еще существуют и оставляют 14px промежуток после создания iframe.
Существует ли какой-либо способ сделать iframe невидимым вообще без атрибута дисплея: none
? Еще лучше, есть ли способ сделать это без такого взлома?
Я даже пытался с помощью CSS установить iframe на дисплеи: block
@ print media types и дисплеи: none
for screen, функция JS все равно не будет печататься.