我的网站是asp.net 4 / vb。我正在试图找出制作打印机友好页面的最佳方法,该页面仅在顶部包含我们的徽标和相关信息,但省略了诸如导航栏和其他不必要的事情。我有一个点击打印图标,它可以在所有浏览器中正常工作,但它并不总是打印出来适合打印机。
我在这个网站上读过有关制作print.css样式表的内容,但我不确定如何编写样式表代码,或者我是否必须将div属性分配给我想要省略的东西 - 以及这些帖子是较旧的帖子。是否建议省略导航链接等,如果是,那么最好的方法是什么?谢谢你的帮助!
答案 0 :(得分:2)
您可以使用CSS @media
类型。
<p> this should be part of the printed page </p>
<div id="navigation_bar_that_should_not_be printed" class="noprint">.....</div>
上述简单的样式表将是:
@media screen
{
/* whatever styles you have for display */
}
@media print
{
.noprint { display: none; }
}
在上文中,带有<div>
的{{1}}将照常显示在屏幕上,但不会打印。
更新
class="noprint"
中的“C”代表“级联” - 意味着“最后”或最接近的指令获胜。我只能假设CSS
(是 last或最近的)覆盖了div。
ASP.Net控件有一个<span class="bodycontent"...
属性,就是你如何定义它:
CssClass
你甚至可以在任何ASP.Net标签中直接输入<asp:HyperLink NavigateUrl="http://www.google.com" runat="server" CssClass="noprint" Text="foo" />
(而不是使用CssClass) - VS可能会抱怨但它应该没问题:
class="noprint"