Ich habe erfolgreich eine Liste mit der folgenden Antwort mit Flexbox auf meiner HTML-Seite erstellt. Wie zeige ich 3 Elemente pro Zeile in Flexbox an?
Ich muss mit diesen Daten ein PDF erstellen und verwende wkhtmltopdf (https://wkhtmltopdf.org/), was auch gut funktioniert, aber das generierte PDF hat alle meine Listenelemente in 1 langen Spalte statt 3 pro Zeile.
Es sieht so aus, als ob das CSS nicht verarbeitet wird, wenn die PDF-Generierung stattfindet, jeder Einblick wird geschätzt.
Das hat bei mir funktioniert:
.row {
display: -webkit-box; /* wkhtmltopdf uses this one */
display: flex;
-webkit-box-pack: center; /* wkhtmltopdf uses this one */
justify-content: center;
}
.row > div {
-webkit-box-flex: 1;
-webkit-flex: 1;
flex: 1;
}
.row > div:last-child {
margin-right: 0;
}
Guter Anruf! webkit-box war die fehlende Komponente, die ich nicht herausfinden konnte.
– Sprengung
7. April 2020 um 18:16 Uhr
Das hat bei mir auch funktioniert!
– Agus Sapurta Sijabat
15. November 2021 um 7:03 Uhr
Dies ist zwar eine Lösung, aber bei weitem nicht die Lösung. webkit-box ist nicht einmal in der nähe von flex. Hoffe, dass wkhtmltopdf Flex bald akzeptiert, aber ich bezweifle das wirklich, da Flex seit 2013 auf dem Markt ist 🙁
– Bengala
13. Dezember 2021 um 23:40 Uhr
@Bengala – wkhtmltopdf verwendet das ursprüngliche QtWebKit, das aufgegeben wird. Die Entwickler haben um Hilfe beim Wechsel zu etwas Neuerem gebeten, aber es gab nicht genug/keine Freiwilligen. Siehe wkhtmltopdf.org/status.html für die ganze Geschichte.
– Ben Scott
5. Oktober um 16:18 Uhr
Ich habe dieses Problem gelöst mit:
Äquivalent von display:flex; ==> display: -webkit-box;
Äquivalent von justify-content: space-between; ==> -webkit-box-pack: justify;
Ich habe Autoprefixer in meiner Anwendung verwendet, um Präfixe automatisch hinzuzufügen. Sie müssen nur aktualisieren browsersList mit ie >= 9.
Versuchen Sie, die Breite der flexiblen Spalten zu verringern. Als ich beispielsweise versuchte, 50/50-Spalten zu erstellen, musste ich eine Breite von 49,8 % anstelle von 50 % eingeben. Ich hoffe es hilft.
Rohit Singh
Um Flex oder Boxen beim Konvertieren in PDF zu verwenden, benötigen Sie ein Webkit-Beispiel: –
display: flex;
display: -webkit-flex;
für Justify-Content und Align-Items müssen Sie verwenden