Ir ao conteúdo
  • Cadastre-se

CSS Minha tabela perde a borda na hora da impressão.


Posts recomendados

Boa noite a todos. Galera estou tentando imprimir uma 'div' que contém uma tabela com bordas. Porém a tabela perde a borda na tela de impressão. tentei usar '@media print', porém sem sucesso. Criei uma função para imprimir a div, ela é chamada através do botão imprimir.

<!DOCTYPE html>
<html>
<head>
	<title>Imprimir</title>
	
	<style type="text/css">
		table{
			border-collapse: collapse;
		}
		table td{

			border: 1px solid black;
		}
		@media print{
			table td{
				border: 1px solid black;
			}
		}
		.pp{
			width: 30px;
		}
	</style>
</head>
<body>
	<input type="button" onclick="cont('print');" value="Imprimir">
<div id="print">
	<table>
		
			
				<th>nome</th>
				<th>email</th>
				<th>telefone</th>
				<th>P</th>
				<th>F</th>
				<th>FJ</th>
			
		
		
			<tr>
				<td>Allan da costa</td>
				<td>[email protected]</td>
				<td>(21)97339-1150</td>
				<td class="pp"></td>
				<td class="pp"></td>
				<td class="pp"></td>
			</tr>
			<tr>
				<td>Allan da costa</td>
				<td>[email protected]</td>
				<td>(21)97339-1150</td>
				<td></td>
				<td></td>
				<td></td>
			</tr>
			<tr>
				<td>Allan da costa</td>
				<td>[email protected]</td>
				<td>(21)97339-1150</td>
				<td></td>
				<td></td>
				<td></td>
			</tr>
			<tr>
				<td>Allan da costa</td>
				<td>[email protected]</td>
				<td>(21)97339-1150</td>
				<td></td>
				<td></td>
				<td></td>
			</tr>
			<tr>
				<td>Allan da costa</td>
				<td>[email protected]</td>
				<td>(21)97339-1150</td>
				<td></td>
				<td></td>
				<td></td>
			</tr>

		
	</table>
</div>
</body>
</html>
<script>
function cont(div){
   var conteudo = document.getElementById(div).innerHTML;
   tela_impressao = window.open('about:blank');
   tela_impressao.document.write(conteudo);
   tela_impressao.window.print();
   tela_impressao.window.close();
}
</script>


 

Link para o comentário
Compartilhar em outros sites

@cisneiro Bom o que falta é você passar o CSS para a página/Janela, que você cria para fazer a impressão.

 

Não é a melhor forma de fazer, mas funciona:

   let 
        conteudo = document.getElementById(div).innerHTML,
        style = document.getElementsByTagName('style'),
        tela = window.open('about:blank');


    tela.document.write(conteudo);
    tela.document.body.append(style[0]);
    tela.print();
    tela.close();

 

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!