मेरे पास मेरे वेब पेज में एक गतिशील तालिका है जिसमें कभी-कभी बहुत सारी पंक्तियां होती हैं। मुझे पता है कि page-break-before
और page-break-after
सीएसएस गुण हैं। यदि आवश्यक हो तो पेज ब्रेकिंग को मजबूर करने के लिए मैं उन्हें अपने कोड में कहां रखूं?सीएसएस पेज-ब्रेक को कितनी पंक्तियों वाली तालिका मुद्रित करने के लिए आवेदन करें?
उत्तर
आप निम्न का उपयोग कर सकते हैं:
<style type="text/css">
table { page-break-inside:auto }
tr { page-break-inside:avoid; page-break-after:auto }
</style>
जानकारी के लिए देखें W3C के CSS Print Profile विनिर्देश।
और Salesforce developer forums भी देखें।
सीएसएस के माध्यम से:
<style>
.my-table {
page-break-before: always;
page-break-after: always;
}
.my-table tr {
page-break-inside: avoid;
}
</style>
या सीधे तत्व पर:
यहाँ एक उदाहरण है
<table style="page-break-before: always; page-break-after: always;">
<tr style="page-break-inside: avoid;">
..
</tr>
</table>
यह सफलतापूर्वक 2 पेज टेबल के लिए 4 पृष्ठों का उपयोग करता है और ऐसा लगता है कि सफारी (6) और क्रोम (24) में कोई सीएसएस नहीं है। – David
आप कहीं भी एक ब्रेक लागू करना चाहते हैं, या तो एक table
या tr
, आपको पूर्व के लिए एक कक्षा देने की जरूरत है। सीएसएस के साथ page-break
नीचे वर्णित के रूप में:
/* class works for table row */
table tr.page-break{
page-break-after:always
}
<tr class="page-break">
/* class works for table */
table.page-break{
page-break-after:always
}
<table class="page-break">
और के रूप में आप
आवश्यक वैकल्पिक रूप से, आप भी उसी के लिए div
संरचना हो सकता है यह काम करेगा:
सीएसएस:
@media all {
.page-break { display: none; }
}
@media print {
.page-break { display: block; page-break-before: always; }
}
डिव :
<div class="page-break"></div>
यह केवल तभी काम करता है यदि आप समय से पहले जानते हैं कि पृष्ठ पर कितनी पंक्तियां फिट होंगी (क्योंकि आपको सीधे अपने मार्कअप में पेज ब्रेक घोषित करना होगा)। यदि यह संभावना है कि तालिका पंक्ति में डेटा दूसरी पंक्ति में लपेट सकता है तो यह मुश्किल (या असंभव) हो सकता है। और एकाधिक पेज आकारों के बारे में क्या (ए 4 बनाम अमेरिकी पत्र बनाम अमेरिकी कानूनी)? – aapierce
बहु-पंक्ति कोशिकाओं और एकाधिक कॉलम का उपयोग करते समय यह समाधान मेरे लिए काम नहीं करता था। मुझे इसका समाधान मिला, हालांकि: https://stackoverflow.com/a/47498775/43615 - यह @Aapierce उल्लेखों के मुद्दे से भी निपटता है। –
क्रोम v64 में या तो काम करने के लिए ब्रेकिंग 'tr' नहीं मिला। –
मैंने इसके लिए एक फिक्स के लिए चारों ओर देखा है। मेरे पास एक jquery मोबाइल साइट है जिसमें अंतिम प्रिंट पेज है और यह दर्जनों पृष्ठों को जोड़ता है। मैं ऊपर सब फिक्स करने की कोशिश की लेकिन केवल एक चीज मैं काम करने के लिए मिल सकता है यह है:
<div style="clear:both!important;"/></div>
<div style="page-break-after:always"></div>
<div style="clear:both!important;"/> </div>
दुर्भाग्य से ऊपर दिए गए उदाहरणों क्रोम में मेरे लिए काम नहीं किया।
मैं नीचे दिए गए समाधान के साथ आया जहां आप प्रत्येक पृष्ठ के पीएक्स में अधिकतम ऊंचाई निर्दिष्ट कर सकते हैं। जब पंक्ति उस ऊंचाई के बराबर होती है तो यह टेबल को अलग-अलग तालिकाओं में विभाजित कर देगी।
$(document).ready(function(){
var MaxHeight = 200;
var RunningHeight = 0;
var PageNo = 1;
$('table.splitForPrint>tbody>tr').each(function() {
if (RunningHeight + $(this).height() > MaxHeight) {
RunningHeight = 0;
PageNo += 1;
}
RunningHeight += $(this).height();
$(this).attr("data-page-no", PageNo);
});
for(i = 1; i <= PageNo; i++){
$('table.splitForPrint').parent().append("<div class='tablePage'><hr /><table id='Table" + i + "'><tbody></tbody></table><hr /></div>");
var rows = $('table tr[data-page-no="' + i + '"]');
$('#Table' + i).find("tbody").append(rows);
}
$('table.splitForPrint').remove();
});
आप भी अपने स्टाइलशीट में नीचे की आवश्यकता होगी
div.tablePage {
page-break-inside:avoid; page-break-after:always;
}
यह मेरे लिए काम कर रहा है:
<td>
<div class="avoid">
Cell content.
</div>
</td>
...
<style type="text/css">
.avoid {
page-break-inside: avoid !important;
margin: 4px 0 4px 0; /* to keep the page break from cutting too close to the text in the div */
}
</style>
इस सूत्र से: avoid page break inside row of table
- 1. postgresql से तालिका संरचना को मुद्रित करने के लिए कैसे?
- 2. COLDFUSION: cfdocument और पेजब्रेक को मजबूर करना
- 3. तालिका का विश्लेषण, तालिका अनुकूलित, कितनी बार?
- 4. प्रारूप - एक तालिका मुद्रित करने में सहायता
- 5. स्लाइड करने के लिए jQuery का उपयोग करना तालिका पंक्तियों के समूह को टॉगल करें
- 6. तालिका के प्रत्येक 3 पंक्तियों को
- 7. सीएसएस: तालिका
- 8. jQuery - कैसे एक ही तालिका में दो तालिका पंक्तियों के बीच सभी तालिका पंक्तियों का चयन करने के
- 9. Jquery तालिका पंक्तियों को छिपाएं
- 10. क्षैतिज रूप से तालिका संरेखित करने के लिए सीएसएस तरीका
- 11. क्या कुछ क्रियाओं को निष्पादित करने वाली नौकरी तालिका स्कैन करने के लिए मानक पैटर्न है?
- 12. विस्तारणीय पंक्तियों के साथ क्रमबद्ध तालिका
- 13. सीएसएस रंग तालिका समस्या
- 14. Grails GORM तालिका से यादृच्छिक पंक्तियों को वापस करने के लिए?
- 15. तालिका शीर्षलेख पंक्तियों को छोड़कर तालिका में पंक्तियों का चयन करें
- 16. MySQL हटाने वाली पंक्तियों पर डेडलॉक्स
- 17. mysql डेटाबेस तालिका में कितनी पंक्तियां?
- 18. लाखों पंक्तियों के साथ Django तालिका
- 19. MySQL क्वेरी पंक्तियों को वापस करने के लिए जिसमें व्हाइटस्पेस
- 20. सरणी चर साझा करने वाली कितनी जानकारी साझा करते हैं?
- 21. अतिरिक्त तालिका पंक्तियों की दृश्यता टॉगल करें
- 22. एचटीएमएल तालिका हेडर कई पंक्तियों
- 23. सीएसएस ओवरफ्लो तालिका पंक्ति स्थिति
- 24. जावास्क्रिप्ट को HTML तालिका की पंक्तियों की संख्या प्राप्त करने के लिए
- 25. डुप्लीकेट पंक्तियों को कैसे हटाएं और तालिका
- 26. तालिका में सभी पंक्तियों को अपडेट करने का कुशल तरीका
- 27. 500,000+ पंक्तियों तालिका में ट्रंकेट तालिका का उपयोग न करने के दौरान पंक्तियों को कुशलता से हटाएं
- 28. जोड़ा तालिका पंक्तियों
- 29. एसपीओजे के लिए यह ज्ञात डीपी तालिका कितनी धीमी है?
- 30. MYSQL - प्रत्येक तालिका में पंक्तियों की संख्या
इस के लिए काम नहीं करता है सफारी (6) या क्रोम (24) :( – David
सफारी या क्रोम के समाधान समाधान के नीचे –
कार्य क्रोम v30 –