Saya menggunakan Twitter-Bootstrap dan saya harus dapat mencetak halaman seperti yang terlihat di browser. Saya dapat mencetak halaman lain yang dibuat dengan Twitter-Bootstrap, tetapi sepertinya saya tidak dapat mencetak halaman saya yang menggunakan murni Twitter-Bootstrap. Apakah saya kehilangan tag di suatu tempat?
Halaman TB resmi saat dicetak:
Halaman saya saat dicetak:
Seperti apa sebenarnya halaman saya:
printing
twitter-bootstrap
Jay Q.
sumber
sumber
Jawaban:
Pastikan memiliki lembar gaya yang ditetapkan untuk dicetak.
Ini bisa berupa stylesheet yang terpisah:
atau yang Anda bagikan untuk semua perangkat:
Kemudian, Anda dapat menulis gaya Anda untuk printer di stylesheet yang terpisah atau yang dibagikan menggunakan kueri media:
sumber
media="screen"
, yang tidak akan terlihat oleh printer. Anda dapat beralih kemedia="all"
, atau hanya menghapusmedia
seperti yang disarankan jawaban di atas.Pembaruan Bootstrap 3.2: (rilis saat ini)
Versi Bootstrap stabil saat ini adalah 3.2.0 .
Dengan versi 3.2-cetak sudah usang, jadi Anda harus menggunakan seperti ini:
Pembaruan Bootstrap 3:
Kelas cetak sekarang dalam dokumen: http://getbootstrap.com/css/#responsive-utilities-print
Versi Bootstrap 2.3.1:
Setelah menambahkan file bootstrap.css ke HTML Anda,
Temukan bagian-bagian yang tidak ingin Anda cetak dan tambahkan
hidden-print
kelas ke dalam tag. Karena file css termasuk ini:sumber
body
) tidak terlihat.hidden-print
, tetapi ingin menimpa elemen tertentu yang akan ditampilkan?Ganti setiap
col-md-
dengancol-xs-
misalnya: ganti setiap
col-md-6
kecol-xs-6
.Ini adalah hal yang berhasil bagi saya untuk menyingkirkan saya dari masalah ini, Anda dapat melihat apa yang harus Anda ganti.
sumber
div
digunakan untuk pergi di bawah yang sebelumnya. Jawaban ini memberi saya petunjuk, saya menambahkancol-xs-*
sebelum masingcol-md-*
- masing dan ini memperbaiki masalah. PENOLAKAN: Saya tidak mencoba menambahkan wadah karena<div class="row"></div>
mungkin juga telah memecahkan masalah (tampak jelas).Ada bagian
@media print
kode dalam file css (Bootstrap 3.3.1 [UPDATE:] ke 3.3.5), ini melucuti hampir semua gaya, sehingga Anda mendapatkan hasil cetak yang cukup hambar bahkan ketika sedang bekerja.Untuk saat ini saya harus menggunakan stripping
@media print
bagian dari bootstrap.css - yang saya benar-benar tidak senang tetapi pengguna saya ingin langsung ambil layar jadi ini harus dilakukan untuk saat ini. Jika ada yang tahu cara menekannya tanpa perubahan pada file bootstrap saya akan sangat tertarik.Inilah blok kode 'menyinggung', dimulai pada baris # 192:
sumber
Pilihan terbaik yang saya temukan adalah http://html2canvas.hertzen.com/
http://jsfiddle.net/nurbsurf/1235emen/
sumber
Jika seseorang mencari solusi untuk Bootstrap v2.XX di sini. Saya meninggalkan solusi yang saya gunakan. Ini tidak sepenuhnya diuji pada semua browser namun ini bisa menjadi awal yang baik.
1) pastikan atribut media
bootstrap-responsive.css
adalahscreen
.2) buat
print.css
dan pastikan atribut medianyaprint
3) di dalam
print.css
, tambahkan "lebar" situs web Anda di html & tubuh4.) mereproduksi kelas kueri media yang diperlukan
print.css
karena ada di dalambootstrap-responsive.css
dan kami telah menonaktifkannya saat mencetak.Ini adalah versi lengkap dari
print.css
:sumber
2 hal FYI -
sumber
Untuk membuat tampilan cetak terlihat seperti tablet atau desktop, sertakan bootstrap sebagai .less, bukan sebagai .css dan kemudian Anda dapat menimpa kelas respons bootstrap di akhir file bootstrap_variables misalnya seperti ini:
Jangan khawatir tentang menempatkan variabel ini di akhir file. KURANG mendukung malas memuat variabel sehingga mereka akan diterapkan.
sumber
Jika Anda ingin menjaga kolom pada cetakan A4 (yaitu sekitar 540px) ini adalah ide yang bagus
Anda bisa menggunakannya seperti ini:
<div class="col-sm-4 col-print-A4-4">
sumber