Olá Maria! Tudo bem?
Para estilizar um PDF gerado a partir de HTML com CSS, geralmente é mais comum utilizar CSS interno, ou seja, dentro de uma tag <style>
no próprio arquivo HTML que será convertido em PDF. Isso ocorre porque muitas bibliotecas de geração de PDF, como o Dompdf, têm limitações na interpretação de arquivos CSS externos.
No seu caso, se você está usando o Dompdf, você pode incorporar o CSS diretamente no arquivo conteudo-pdf.php
logo após o fechamento da tag PHP. Aqui está um exemplo de como você pode fazer isso:
<?php
// seu código PHP
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Relatório de Produtos</title>
<style>
.container-table {
display: flex;
justify-content: center;
width: 80%;
margin: 20px auto;
font-size: 14px;
text-align: center;
font-family: Arial, sans-serif;
}
table {
width: 100%;
border-collapse: collapse;
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}
th {
background-color: rgb(49, 7, 88);
color: #fff;
padding: 12px 8px;
font-weight: bold;
text-transform: uppercase;
border-bottom: 3px solid #ddd;
}
td {
padding: 10px;
background-color: #f4f4f9;
color: #333;
border-bottom: 1px solid #ddd;
}
tr:nth-child(even) td {
background-color: #e9e9f3;
}
tr:hover td {
background-color: #dcdce0;
color: #000;
}
table, th, td {
border-left: none;
border-right: none;
}
</style>
</head>
<body>
<section class="container-table">
<table>
<thead>
<tr>
<th>Produto</th>
<th>Tipo</th>
<th>Descricão</th>
<th>Valor</th>
</tr>
</thead>
<tbody>
<?php foreach ($dataProducts as $product): ?>
<tr>
<td><?= $product->getName() ?></td>
<td><?= $product->getTypeProduct() ?></td>
<td><?= $product->getDescription() ?></td>
<td><?= $product->getPriceFormat() ?></td>
</tr>
<?php endforeach; ?>
</tbody>
</table>
</section>
</body>
</html>
Ao fazer isso, você garante que o estilo será aplicado corretamente quando o HTML for convertido em PDF.
Espero ter ajudado e bons estudos!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.