2017-07-24 7 views
0

J'utilise mpdf pour générer un pdf à partir d'une page HTML mais la feuille de style ne fonctionne pas. Voici mon HTML:mpdf ne restitue pas les styles de la feuille de style liée

<!DOCTYPE html> 
<html lang="en"> 
<head> 
    <meta charset="utf-8" /> 
    <link rel="stylesheet" type="text/css" href="http://swiftdigital.ltd.uk/pdf.css"> 
</head> 
<!-- END HEAD --> 

<body id="the_pdf"> 

<div id="wrapper"> 
    <img src="http://via.placeholder.com/350x150" alt="Logo" id="logo"> 
</div> 

</body> 

</html> 

Si vous faites défiler vers le bas du CSS, vous verrez quelques modèles qui doivent être appliqués, par exemple emballage devrait avoir une bordure rouge et ainsi si le logo, mais aucun des ceux-ci sont appliqués.

Je suis engendraient le même PDF comme ceci:

$mpdf = new Mpdf; 
$mpdf->SetDisplayMode('fullpage'); 
$mpdf->WriteHTML($html, 0); 
$mpdf->Output(pdf.pdf','F'); 

Quelqu'un sait ce que le problème est?

+0

Définir "ne fonctionne pas". Est-il cassé, ou n'est-il pas appliqué du tout? Je vois que vous utilisez bootstrap dans votre CSS, le support Bootstrap dans mPDF n'est pas génial. – Finwe

+0

Le pdf est généré mais aucun des styles de la feuille de style n'a été appliqué – geoffs3310

Répondre

1

mPDF ne prend pas en charge id sur l'élément body. Supprimez body#the_pdf et body#the_pdf de vos sélecteurs CSS et vos styles seront appliqués.

D'autres styles de bootstrap (spécifiquement font-family) de votre feuille de style sont appliqués correctement lorsque j'ajoute par ex. un titre et un paragraphe à votre exemple de code. Voir la page supported HTML attributes dans le manuel en ligne mPDF.