Datatables - 更改打印页面标题的字体大小

4
我在尝试更改打印页面标题的字体时遇到了问题。我已经根据此文档中的说明使用了自定义方法。
以下是我的代码:
$(document).ready(function() {
$('#tabelservis').DataTable( {
    "columnDefs": [
            { "type": "numeric-comma", targets: [0, 3] }
    ],
    dom: 'Bfrtip',
    buttons: [
        {
            extend: 'copyHtml5',
            exportOptions: {
                columns: [ 0, ':visible' ]
            }
        },
        {
            extend: 'excel',
            exportOptions: {
                columns: [ 0,1, 2, 3, 4 ]
            }
        },
        {
            extend: 'print',
            title: 'All of Services',
            exportOptions: {
                columns: [ 0,1, 2, 3, 4 ]
            },
            customize: function ( win ) {
                $(win.document.body)
                    .css( 'font-size', '12px' );

                $(win.document.body).find( 'table' )
                    .css( 'font-size', '12px' );
            }

        }
    ]
} );
} );

但是标题字体仍未更改,这是截图:

enter image description here

如您所见,大的 “所有服务” 仍然具有大字体大小。

有什么建议来解决这个问题吗? 谢谢

3个回答

8
标题位于 <h1> HTML 标记中。因此,您可以更改所有 CSS 样式来应用于标记。
例如:
 customize: function ( doc ) {
     $(doc.document.body).find('h1').css('font-size', '15pt');
     $(doc.document.body).find('h1').css('text-align', 'center'); 
 }

Etc. ;) 等等。

1
非常好!谢谢! - MorenajeRD

3

尝试将您的标题用带有样式设置字体大小的 div 包装:

buttons [
 extend: 'print',
 title: function() {
    return "<div style='font-size: 14px;'>My Title</div>";
  } 

]

这个方法可行,但是当我通过 Chrome 打印数据表格时,标题包含了那个 div 标签的信息。不确定其他浏览器会如何处理它。 - MadHenchbot

0

你现在可以试试这样做

$(win.document.body:contains("All of services")).css( 'font-size', '12px' );

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接