Jag har ett gäng rutor ca 500px breda med en ram runt som ligger under varandra. I dessa rutor finns olika typer av information med varierande längd. Som det är nu så har jag inte lagt in några css-sidbrytningar någonstans utan när man skriver ut sidan med rutorna så kapas ramen och fortsätter på nästa sida (med texten inuti). Detta är ju inte så snyggt så jag tänkte att man kan lägga sidbrytningar precis före rutor som man vet brukar innehålla mycket information och på så sätt iaf i viss mån kontrollera antalet sidor och sidbrytningar.
Det funkar ok men det optimala vore om de rutor som kapas kunde få en undre border och att det kunde stå typ 'fortsättning på nästa sida' och på nästa sida blir det en ny ruta där texten fortsätter. Finns det någon bra lösning på detta? Jag har funderat på om man kan räkna tecken eller liknande för att räkna ut ungefär när sidan bryts men det känns inget vidare eftersom typsnitt inte fungerar så (beroende på vad man använder för typsnitt så klart).
Alternativet borde ju vara att göra en stor div som är lika hög som ett utskrivet A4 och lägga rutorna i den. Om det går så skulle den då kunna känna av ifall texten blir för lång och i såna fall rita en undre border (så rutan blir 'hel') och lägga till typ 'fortsättning på nästa sida' el dyl.
A List Apart-sidan som alla länkar till ang. såna här frågor (http://www.alistapart.com/stories/goingtoprint/) verkar inte lösa mina problem. Men är det någon som har något bra svar på mitt problem? Går det att lösa öht?
Jag ska försöka förenkla och omformulera min fråga lite. Jag har alltså flera divar som ligger under varandra som innehåller text och har en border. När jag ska skriva ut dessa divar på min skrivare vill jag kolla om texten i rutorna är så lång så det blir en sidbrytning. Blir det det så vill jag skriva typ 'fortsättning nästa sida' och avsluta min div (</div>), skapa en sidbrytning med CSS samt påbörja en ny div på nästa sida där texten fortsätter.
Tänkte då kanske att det skulle gå att trycka in den HTML/CSS/JavaScript-kod som behövs för det med ett stycke JavaScript. Hittade ett script som kollar höjden på en div här:
http://www.jojoxx.net/jscript/libs/#layerlib
Skulle jag kunna använda det på något sätt för att ange den maximala höjden på mina divar så dom passar på ett A4, och ifall de går över den maximala höjden så läggs den kod jag beskrivit ovan till?
Skickar med ett litet kodexempel:
<script type="Javascript">
if (printbox.height > varMaxLength) {
// Gör sidbrytningskoden 'visible'
}
</script>
<div id="printbox">
text text text text text text text text
text text text text text text text text
text osv...
<!-- Här börjar sidbrytningskoden, satt till 'hidden' som default -->
Forts. följer på nästa sida...
</div>
<div style="page-break-before: always"></div>
<div id="printbox">
<!-- Här slutar sidbrytningskoden -->
text text text text text text text text
text text text text
</div>
Maxhöjden för divarna tänkte jag helt enkelt testa mig fram till, alltså testa att skriva ut tills det ser ok ut. Som ni märker är jag dålig på både javascript-syntax och inte helt hundra på hur/om man rent praktiskt kan lösa detta. Men idén känns ändå ganska realistisk, eller?
Kanske ska flytta den här tråden till JavaScript-forumet istället?