这是典型的多项选择考试,假设问题格式:
<question qid='1'>
<stem>What is your name?</stem>
<choice value = 'a'>Arthur, King of the Britons</choice>
<choice value = 'b'>There are some who call me ... Tim!</choice>
<choice value = 'c'>He is brave Sir Robin, brave Sir Robin, who-- Shut up! Um, n-- n-- n-- nobody, really. I'm j-- j-- j-- ju-- just, um-- just passing through.</choice>
<choice value = 'd'>Sir Galahad... the Chaste.</choice>
<choice value = 'e'>Zoot... Just Zoot.</choice>
</question>
并且我已将所有这些都映射到具有网络单选按钮的适当样式。
现在,我需要制作测试的可打印版本。这实际上更简单,因为我不需要包括无线电,只需'___'作为复选标记。主要问题是如何防止问题分裂。
答案 0 :(得分:30)
我一直没有幸运地一直阻止这样的事情。它可能有点脏,但如果问题通常是相同的长度,你可以在每X个问题之后强制分页吗?
<style type="text/css">
.pageBreak{
page-break-before: always;
}
</style>
<question>...</question><br class="pageBreak" />
<question>...</question>
(或将该课程应用于问题或任何你想要的内容)
您可以尝试使用page-break-inside属性,但我还没有看到它是一致的,因为浏览器对它的支持现在很乱:
question {
page-break-inside:avoid;
}
答案 1 :(得分:16)
我建议您查看CSS中的page-break-after
,page-break-inside
和page-break-before
规则。
答案 2 :(得分:1)
使用单独的打印样式表,并使用page-break-before
和page-break-after
选择器作为每页的前导和结束问题。
如果测验是静态的,您可以绘制您使用的类,并使其无需CSS。
答案 3 :(得分:1)
使用表格布局。但是为了避免改变语义,请使用CSS。
question {
display: inline-table;
}