如何创建打印机友好的HTML页面?

时间:2014-05-21 19:28:07

标签: html css ruby-on-rails printing

如何在特定的Rails视图中更改或删除应用程序中的布局,以便让我的用户获得更愉快的打印体验? (没有导航栏或其他额外数据)

我一直在敲桌子几个小时,试图解决这个问题。我尝试使用render layout: false但没有成功。

我尝试过创建一个类似下面的动作,但它对我来说也不起作用:

def print
  respond_to do |format|
    format.html { render layout: false } 
  end
end

我尝试使用以下内容链接到此操作:

<%= link_to 'Printer Friendly Version', product_path(@product), :action => 'print', target: '_new' %>

我刚刚离开这里吗?我怎样才能更好地接近这个障碍? 我不想使用PDF或Javascript,我只想渲染打印机友好的HTML。

1 个答案:

答案 0 :(得分:19)

您可以使用这样的CSS来执行此操作:请参阅full article here.

<style type="text/css">
@media print{
  body{ background-color:#FFFFFF; background-image:none; color:#000000 }
  #ad{ display:none;}
  #leftbar{ display:none;}
  #contentarea{ width:100%;}
}
</style>

当它检测到页面正在发送到打印机时,它使用简化的CSS。

-- W3Schools link --

另见this article

  

摘要:如何制作适合打印的网页

     

如果您的网站为您的受众群体带来了价值,那么他们很有可能   想要打印出来的页面。确保桌面打印机处理   你的网站是建立一个伟大的另一个方面   用户体验。

     

本文快速介绍如何使用层叠样式表   设计印刷网页。