我有<table>
用户自定义元素数量,字体和字体大小,用户经常打印表格。如果表太宽而无法放在单个打印页面上,则某些列会被切断,用户可能直到稍后才意识到,此时用户会感到不安。
是否有一种很好的方法来检测表格何时溢出打印宽度,以便我可以警告用户?我知道正确的答案是“网页浏览器不是为打印设计的,你不能这样做”,所以我对黑客很满意。现在我使用jQuery outerWidth()
来查看宽度是否大于700px。还有更好的方法吗?
答案 0 :(得分:1)
最好的方法是使用media print
css样式表,在其中指定表的最大宽度,并确保使用table-layout:fixed;
。另外,你可以设置自动换行,这样当你处理大量输入时,一切都会很好地破坏。
@media print {
html{
width: 100%;
max-width: 700px;
}
.toprinttable {
font-size: 11px;
max-width: 700px;
border: 0;
table-layout:fixed; /*This is important*/
word-wrap:break-word;
border-collapse:collapse;
}
}