【问题标题】:Is there a way in HTML to set horizontal absolute positioning and vertical static positioning?HTML中有没有办法设置水平绝对定位和垂直静态定位?
【发布时间】:2011-03-11 22:36:17
【问题描述】:

我在一个绝对位于视口中的网站中有数量不定的“小工具”。我将它们定位为“顶部”和“左侧”属性。这些小工具是用户可以通过将它们从一个小配置面板拖动到视口本身来任意添加的元素。小工具绝对位置是在用户放下小工具时确定的。该位置保存在数据库中。

当我尝试生成打印布局并垂直扩展小工具时出现了问题。事实上,我想这样做是因为大多数小工具都是表格(jqGrids),我希望它们在可打印模式下比在正常屏幕模式下显示更多的行。所以问题是当我垂直扩展网格时,它们可能会重叠(几乎总是它们会重叠)。

想要的结果将是标题中的结果,保持左侧位置绝对和顶部静止。我不知道这个问题的任何直接解决方案,有吗?

这是一种可能的排列方式(当 gadget1 和 2 展开时,它们将与 gadget3 重叠)

    +---------+
    |         |       +--------------------------------+
    |    1    |       |                                |
    +---------+       |                2               |
                      +--------------------------------+

            +------------------+
            |        3         |
            +------------------+

谢谢!

【问题讨论】:

  • 您能否描述一下它们在打印输出上的外观?显然它们应该有更多的行,但是它们应该如何定位呢?

标签: javascript html css layout positioning


【解决方案1】:

在您的打印样式表中用position: static 覆盖position: absolute,并使用margin-left: Npx 代替left: Npx 进行水平定位。

【讨论】:

  • 嗯,我会试试这个方法。我不知道它是否会在以下情况下工作。假设我有 3 个绝对按此顺序放置的小工具:
  • 嗯,我会试试这个方法。我不知道它是否会在以下情况下工作。假设我有 3 个小工具按此顺序绝对定位:
    ...
    ... 。所以html中的第一个div是最底层渲染的,第二个在中间,最后一个就是第一个!这不是假设的情况,这实际上发生在我的代码中,我认为我应该按顶部位置对 div 进行排序,也许?
  • 是的,您可以在生成 HTML/动态添加新小部件时按小部件的顶部位置对小部件进行排序,它在屏幕上看起来与以前一样,并且也可以用于打印。
猜你喜欢
  • 1970-01-01
  • 2011-03-19
  • 1970-01-01
  • 1970-01-01
  • 2011-06-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多