提问人:bootsy 提问时间:10/12/2019 更新时间:10/12/2019 访问量:55
Div 使用不显眼的 javascript 打印
Div Print using unobtrusive javascript
问:
我有一个“打印”链接,我想在其中打印“查看”页面的打印机友好部分。我不想打印菜单,而只是使用不显眼的 javascript 打印某个 div id。我该怎么做?
打印友好链接:
<a class="list-group-item"
asp-area="Admin"
asp-controller="Employee"
asp-action="View"
asp-route-id="@currentId" title="Print">Printer-Friendly Version</a>
查看我要打印的页面:
<div id="divPrint" class="col-md-8">
<h2>Administration</h2>
<h4>View the Document</h4>
<div class="card">
<div class="card-body">
<div class="col-md-12">
<span><b>@Model.Current.Title</b> as of <b>@Model.Current.AsOf.ToString("dddd,
dd MMMM yyyy")</b></span>
</div>
</div>
</div>
</div>
答:
0赞
thebc
10/12/2019
#1
使用 css 隐藏所有你不想打印的元素,为了安全起见,你可以指定你想打印的内容。@media print
visibility: hidden;
visibility: visible;
在 中,还可以指定仅用于打印的样式。如果您在深色背景上有白色文本,则可以添加,使其更适合打印。@media print
p { color: #000000; }
@media print {
.classes-to-not-print, div, nav {
visibility: hidden;
}
.classes-to-print, #divPrint {
visibility: visible;
}
}
评论
0赞
bootsy
10/12/2019
好的,我把它添加到了我的css中。我猜如何获得打印机友好链接来调用 css?
0赞
thebc
10/12/2019
以上内容只需要从它正在打印的页面链接。您可能需要将此链接添加到打印链接中,以便链接如下所示:@media print
onclick="window.print()"
<a class="list-group-item" onclick="window.print()" asp-area="Admin" asp-controller="Employee" asp-action="View" asp-route-id="@currentId" title="Print">Printer-Friendly Version</a>
0赞
bootsy
10/12/2019
我不能使用 onclick。我需要使用不显眼的javascript。
0赞
thebc
10/12/2019
这将取决于 your 的生成方式。只要您可以设置样式,我就会将其放在同一个 .css 文件中,或者如果您在页面中有 css,请将其放在标签中。#divPrint
#divPrint
@media print
<style></style>
<style>@media print{}</style> <div id="divPrint" class="col-md-8">
评论