【问题标题】:Splitting a long page into a number of pages将长页面拆分为多页
【发布时间】:2011-05-02 23:05:12
【问题描述】:

我想将包含一些图像的长文本输入拉入一个具有固定宽度(300 像素)和高度(1000 像素)的 div 中,挑战是我不能使用溢出:css 中的自动内容的长度超过了 div 的高度(1000px),相反,我被要求将长内容分成带有分页的页面。

是否可以使用 PHP 来实现,还是必须使用 javascript (jquery)?

本来想统计字符数并拆分,但内容带有不同大小的图像时似乎不正确...

有什么想法吗??

【问题讨论】:

    标签: php pagination long-integer


    【解决方案1】:

    您可以使用 PHP。找出每行可以获得多少个字符,以及有多少行字符适合您的 div。然后,使用 PHP,计算字符数,除以字符/行,然后您将获得文本占用的行数。然后您可以使用 getimagesize() 获取图像尺寸,然后从那里开始。

    请参阅PHP function 了解更多信息。

    【讨论】:

      【解决方案2】:

      在服务器端执行此操作可能非常复杂(我想说“不可能”),因为无法计算的客户端效果太多(用于边距、填充的浏览器默认设置, line-height、font-size 和用户设置缩放),我更喜欢在客户端执行此操作。

      我用 jQuery 做了一个小例子:http://jsfiddle.net/doktormolle/XwUuA/

      它获取目标元素的子节点,并将它们包装成与目标元素具有相同尺寸的新元素(只要包装器的高度不超过目标元素的高度) .

      也许它对你有用(这是一个草稿,当然还有待改进以满足你的需求)

      【讨论】:

      • 如果您在单个段落标签中没有很长的文本以致该段落无法放入单个容器中,则此解决方案非常有效。
      【解决方案3】:

      我想在 C# Windows 窗体应用程序中对 HTML 做类似的事情。 我想做的是根据一些数据库表生成一些内容并将它们发送到打印机。内容必须适合 A4 纸。

      经过大量试验和错误后,我根据内容的大小、位置等测量了内容的最大大小,并在我的 HTML 的 CSS 部分中写入了数字。 这样我就能得到一个不错的结果。一些输入仍有一些小错误,但这对我有用!

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-04-18
        • 2014-06-29
        • 1970-01-01
        • 2015-11-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多