我必须打印包含几页的大型 HTML 表格。每个页面都应该有备忘录(页眉和页脚,包含公司名称和内容)。我正在使用jQuery-datatables与TableTools. 这是我的CSS
@media print
{
@page{
margin: 150px 0px 150px 0px !important;
padding: 0px !important;
size: A4 portrait;
}
table { page-break-after:auto;}
tr { page-break-inside:avoid; page-break-after:auto }
td { page-break-inside:avoid; page-break-after:auto }
thead {
display:table-row-group;
}
html{
background-image: url(memo.png) !important;
background-size: 200mm 287mm !important;
}
}
Run Code Online (Sandbox Code Playgroud)
然而,当设置上边距时,@page它会将所有内容(包括)背景向下“移动”。我想知道是否有一种方法可以将边距应用于@page表格,但在设置背景时避免它,或者将背景图像添加到@page
我还尝试将@page边距设置为 0 并将table边距设置为 150px。在第一页上没问题,但由于表格被分成几页,它会忽略其他页面上的边距。
UPDATE
我添加了一些错误和想要的结果的草图。红色为页眉,蓝色为页脚,绿色为表格
我的页面上有几个选项卡,我试图在页面重新加载时保持选项卡处于活动状态。我通过将哈希值推入网址来做到这一点:
$('.nav-tabs a[data-toggle="tab"]').click(function () {
window.history.pushState("", "", $(this).attr('href'));
});
Run Code Online (Sandbox Code Playgroud)
使用上面的代码,即使用户重新加载页面,我也会保持选项卡处于活动状态。
我正在尝试捕获shown.bs.tab事件,但显然事件在页面重新加载时不会触发,但在单击任何其他选项卡时它会起作用
$('.nav-tabs a[data-toggle="tab"]').on('shown.bs.tab', function () {
//do something
});
Run Code Online (Sandbox Code Playgroud)
知道我做错了什么吗?
active类被从li和中删除div.tab-pane
我什至尝试手动调用 tab.show 事件,但没有帮助
var hash = window.location.hash;
if(hash) {
$('.nav-tabs a[href="' + hash + '"]').tab('show'); //or trigger('click')
}
Run Code Online (Sandbox Code Playgroud) 我最近开始使用 Phalcon PHP 框架,有一件事情让我很困惑。
如何设置$di在同一主机上使用多个数据库?例如如何使这个查询工作
SELECT * FROM
DB1.TABLENAME_1 AS t1
LEFT OUTER JOIN DB2.TABLENAME_2 AS t2 ON t1.some_id = t2.other_id
Run Code Online (Sandbox Code Playgroud)
我已经注册了到 DB1 的连接,并且已经加载了所有模型,并且可以轻松访问任何模型中的数据,但是当我尝试从JOIN一个数据库中的表与第二个数据库中的表建立表时,我收到错误模型“TABLENAME_2”无法被加载属于DB2
这是我的$di
$di->setShared('db', function () use ($config) {
return new DbAdapter(array(
'host' => $config->database->host,
'username' => $config->database->username,
'password' => $config->database->password,
'dbname' => $config->database->dbname,
'options' => array(
PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'UTF8'"
)
));
});
Run Code Online (Sandbox Code Playgroud)