Estou usando window.print () para imprimir a página, mas tenho o cabeçalho e o rodapé que contêm o título da página, o caminho do arquivo, o número da página e a data. Como removê-los?
Também tentei imprimir a folha de estilo.
#header, #nav, .noprint
{
display: none;
}
Por favor ajude. Obrigado.
Respostas:
No Chrome é possível ocultar este cabeçalho / rodapé automático usando
Uma vez que o conteúdo se estende até os limites da página, o cabeçalho / rodapé de impressão da página estará ausente. Você deve, é claro, neste caso, definir algumas margens / preenchimentos em seu elemento de corpo para que o conteúdo não se estenda até a borda da página. Como as impressoras comuns simplesmente não conseguem imprimir sem margens e provavelmente não é o que você deseja, você deve usar algo assim:
Como Martin apontou em um comentário, se a página tiver um elemento longo que rola além de uma página (como uma grande mesa), a margem é ignorada e a versão impressa ficará estranha.
Na época original desta resposta (maio de 2013), ela só funcionava no Chrome, não tenho certeza sobre isso agora, nunca precisei tentar novamente. Se você precisar de suporte para um navegador que não pode funcionar, pode criar um PDF em tempo real e imprimi-lo (você pode criar um PDF de impressão automática incorporando JavaScript nele), mas isso é um grande incômodo.
fonte
body { margin: 1.6cm; }
estava ignorando a margem certa para mim (talvez porque eu estava usandotext-align:right
), então, em vez disso, criei um<div class="container">
para o meu conteúdo e usei no.container { margin: 1.6cm; }
lugar.body { margin: 1.6cm; }
- como é uma margem para todo o documento - não respeitará as margens verticais de documentos de várias páginas, exceto a primeira e a última. Infelizmente, não consigo pensar em uma solução alternativa.Tenho certeza de que adicionar este código ao seu arquivo css resolverá o problema
Você pode visitar aqui para saber mais sobre isso
fonte
Raposa de fogo :
moznomarginboxes
atributo em<html>
Exemplo:
fonte
Hoje meu colega topou com o mesmo problema.
Como a solução "margin: 0" funciona para navegadores baseados em cromo, no entanto, o Internet Explorer continua a imprimir o rodapé mesmo se as margens da @page forem definidas como zero.
A solução (mais um hack) foi colocar uma margem negativa na @page.
Observe que a margem negativa não funcionará para o eixo Y, apenas para X
Espero que ajude.
fonte
O padrão CSS permite alguma formatação avançada. Existe uma diretiva @page no CSS que permite alguma formatação que se aplica apenas a mídia paginada (como papel). Consulte http://www.w3.org/TR/1998/REC-CSS2-19980512/page.html .
e para o Firefox use-o
No Firefox, https://bug743252.bugzilla.mozilla.org/attachment.cgi?id=714383 (visualizar código-fonte da página :: tag HTML).
Em seu código, substitua
<html>
por<html moznomarginboxes mozdisallowselectionprint>.
fonte
fonte
Esta será a solução mais simples. Tentei a maioria das soluções na internet, mas só isso me ajudou.
fonte
@page { margin: 0; }
funciona bem no Chrome e Firefox. Não encontrei uma maneira de consertar o IE por meio de css. Mas você pode entrar em Configuração de página no IE em sua própria máquina em e definir as margens como 0. Pressione alt e o menu de arquivo no canto superior esquerdo e você encontrará Configuração de página. Isso só funciona para uma máquina de cada vez ...fonte
1. Para Chrome e IE
Adicione o atributo moznomarginboxes no Exemplo:
fonte
Eu estava tentando remover o cabeçalho e o rodapé de uma página html que imprimi manualmente.
Nenhuma solução nesta página funcionou para mim, mas simplesmente definindo meu próprio rodapé conforme explicado aqui, o Firefox não adicionaria seu próprio cabeçalho e rodapé.
Isso não funciona no Chrome, infelizmente.
Em CSS:
Adicione isto ao seu HTML:
fonte
Se acontecer de você rolar para baixo até este ponto, encontrei uma solução para o Firefox. Ele imprimirá o conteúdo de um div específico sem os rodapés e cabeçalhos. Você pode personalizar como desejar.
Em primeiro lugar, baixe e instale este addon: JSPrintSetup .
Em segundo lugar, escreva esta função:
Em terceiro lugar, em seu código, onde quer que você queira escrever o código de impressão, faça isso (eu usei JQuery. Você pode usar javascript simples):
Obviamente, você precisa do link para clicar:
E seu div para imprimir:
fonte
você não precisa escrever nenhum código. pouco antes de chamar window.print () pela primeira vez, altere as configurações de impressão do navegador. por exemplo no firefox:
e um outro exemplo para o IE (estou usando o IE 11 para versões anteriores, você pode ver isso Impedir que o Firefox ou o Internet Explorer imprima o URL em todas as páginas ):
fonte