【问题标题】:Remove space for css position:relative删除css位置的空间:相对
【发布时间】:2011-10-03 23:46:45
【问题描述】:

我有一个链接和一个 iframe 并排。我希望链接出现在 iframe 上。这发生在 td 元素内部。这种模式迭代了几行。当我使用相对 css 定位时,我可以在 iframe 上显示链接,但链接所在的空间仍然出现。它不必要地增加了列高。我想消除这个空间。我该怎么做?

我查看了this,但似乎该解决方案仍会提高 tr/td 高度。我的问题也有sample

【问题讨论】:

  • 我还要指出,我在一个专有框架内工作,有些解决方案不可用。
  • 你说的是#donotwant的高度吗?
  • 您是否尝试过将#topposition:relative 更改为position:absolute。这将删除上面的额外空间,我不知道这会如何影响您的页面,因为您只显示了一个 sn-p。
  • 看看更新的链接,我不是故意给你一个sn-p的。

标签: css position css-position


【解决方案1】:

不需要的空间来自您包裹在链接周围的 DIV 元素。删除它。

http://jsfiddle.net/saad/grs53/12/

【讨论】:

    【解决方案2】:

    只需折叠保存链接的<div />(例如,将高度设置为 0)。跨浏览器可能需要额外的样式,但这里是在 Chrome 中测试的 an example

    【讨论】:

    • 谢谢,但我只更改了原始演示的 css。此后,OP 也修改了他们的样本
    【解决方案3】:

    把你的 HTML 改成这个

    <table>
        <tbody>
            <tr>
                <td class="donotwant">
                    <div class="top">
                        <a href="bing.com">link</a>
                    </div>
                    <iframe src="http://www.google.com" ></iframe>
                </td>
            </tr>
            <tr>
                <td class="donotwant">
                    <div class="top">
                        <a href="bing.com">link</a>
                    </div>
                    <iframe class="bottom" src="http://www.wikipedia.com" ></iframe>
                </td>
            </tr>
        </tbody>
    </table>
    

    你 CSS 到这个:

    .donotwant {
        border:2px dotted green;
        position:relative;
        height:180px;
        width:300px;
    }
    .top {
        top:80px;
        left:120px;
        position:absolute;
        z-index:2;
    }
    .bottom {
        position:relative;
        z-index:1
    }
    

    相对位置对象保持其初始位置,但显示在别处。一个绝对定位的元素实际上被移动到一个新的位置。您可以在相对定位的顶部移动绝对定位的元素。

    在上面的示例中,我创建了一个相对定位的 div,其中任何绝对位置元素都可以从相对定位元素的左上角移动。如果相对定位的元素被移动到页面上的任何其他位置,那么绝对定位的元素将会跟随。

    【讨论】:

    【解决方案4】:

    折叠线高应该可以做到。一定要进行测量,而不仅仅是“0”,这样它就可以在 ie6 中工作。我将.collapse 类添加到包含锚点的divs 中。 http://jsfiddle.net/grs53/20/

    HTML

    <table>
        <tbody>
            <tr>
                <td class="donotwant">
                    <div class="collapse">
                        <a class="top" href="bing.com">link</a>
                    </div>
                    <div>
                        <iframe class="bottom" src="http://www.google.com" ></iframe>
                    </div>
                </td>
            </tr>
            <tr>
                <td class="donotwant">
                    <div class="collapse">
                        <a class="top" href="bing.com">link</a>
                    </div>
                    <div>
                        <iframe class="bottom" src="http://www.wikipedia.com" ></iframe>
                    </div>
                </td>
            </tr>
        </tbody>
    </table>
    

    CSS

    .donotwant {
        border:2px dotted green;
    }
    .top {
        top:80px;
        left:120px;
        position:relative;
        z-index:2;
        background:red;
    }
    .bottom {
        position:relative;
        z-index:1
    }
    .collapse {
        line-height:0px;
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-03-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多