【问题标题】:What's the Logic Behind Pagination?分页背后的逻辑是什么?
【发布时间】:2011-04-21 18:38:20
【问题描述】:

有人知道大文件的分页是如何工作的吗?它的实际逻辑,以编程方式?例如,如果您有一个非常“长”的网站,有没有人知道当用户要求查看打印预览时网站如何分页背后的逻辑?我希望自己做一些基本的分页,但我不知道这是如何发生的。

谢谢!

【问题讨论】:

  • 打印预览由浏览器完成
  • 但是如何?我很好奇浏览器在决定如何分页时使用的逻辑。
  • 嗯,这肯定不容易,但很简单:你知道页面有多大,你知道你的字体大小和文本。计算打印字母/单词/行所需的空间,如果它们超出页面尺寸,请插入分页符。我真的不知道你具体问的是什么(或为什么)。
  • 我在回答中向您解释了这一点。浏览器使用定义的 CSS,并使用 CSS 中的标签来操作布局以进行打印。

标签: html pagination logic print-preview


【解决方案1】:
【解决方案2】:

HTML 在设计时并未考虑到打印。对分页符有一些 CSS 支持...查找以下 CSS 属性:page-break-after 和 page-break-before。但我不会指望它适用于所有浏览器。

【讨论】:

    【解决方案3】:

    这是雅虎一些工程师关于如何优化大型数据集的分页的想法:

    http://www.percona.com/ppc2009/PPC2009_mysql_pagination.pdf

    【讨论】:

    • 分页类型错误。我的意思不是分页,因为我需要显示大量数据并且我想使用多个网页来做到这一点(就像谷歌或雅虎对他们的搜索结果所做的那样)。我的意思是当用户想要将文件实际打印到纸上时,文件(不一定是网站)会发生什么。
    【解决方案4】:

    您只需要为您的打印视图定义一个样式表。浏览器将处理样式表的交换,它会知道,因为在您的 html 中您已将其定义为 media="print" 而不是 "screen"

    <link href="printer.css" rel="stylesheet" media="print" type="text/css">
    

    这就是很多人反对提供整个“切换到打印视图”的方式

    此链接将帮助您了解浏览器用于布局打印页面的逻辑。

    如何优化打印页面 - http://msdn.microsoft.com/en-us/library/dd433064(v=vs.85).aspx

    【讨论】:

    • 很抱歉更改了我的源代码,我之前使用了 w3schools 源代码,这让我有些吃惊!
    猜你喜欢
    • 2014-05-06
    • 2017-10-17
    • 1970-01-01
    • 2022-01-12
    • 2018-06-18
    • 2020-05-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多