【问题标题】:Two columns, fixed fluid with 100% height两列,100% 高度的固定流体
【发布时间】:2011-10-24 13:28:19
【问题描述】:

不使用表格如何实现如下效果?

示例: http://enstar.nl/example.php (该示例目前可能不可见,名称服务器应该已更改,但我的主机更新它们的速度不是那么快。今天晚些时候应该可以工作。对于给您带来的不便,我深表歉意)

所有方法都需要页眉和/或页脚。我不想那样。

我想要的是以下内容:

纯 CSS,没有表格 2 列,固定流体(按此顺序) 如果内容没有到达视口的底部,则将列扩展到它。内容的其他范围(就像一个粘性页脚)

100%x100% 的表格自然而然地做到了这一点。但我真的不想为此使用表格。

有什么想法吗?

编辑:

当前 HTML

<table width="100%" height="100%" cellpadding="0" cellspacing="0">
    <tr>
        <td id="navigation" valign="top" align="left">
        </td>
        <td id="content" valign="top" align="left">
        </td>
    </tr>
</table>

【问题讨论】:

    标签: html css html-table fixed-width


    【解决方案1】:

    如果您不想使用表格,有几个选项可以设置两列

    <div id="wrapper" style="height: 100%;">
        <div style="background-color: green;">
            <div id="leftCol" style="float: left; width: 200px;">testing</div>
            <div style="background-color: red; margin-left: 200px;">
                <div id="rightCol" style="height: 900px;" >testing testing testing testing testing testing testing</div>
            </div>
        <div class="clear"></div>
        </div>
    </div>
    

    只要 rightCol 中的文本比 left col 中的文本长(可以通过元素的最小高度来处理),那么缩放就不会有任何问题。

    这也消除了 Javascript 设置第二个宽度的需要。原因是它被设置为父 div 的宽度,默认情况下为 100%,因为您将红色列的边距设置为 200px,它会将显示部分滑过,这样您就可以看到左列。

    【讨论】:

    • 如果我将 body 和 html 设置为 height 100%;,那似乎可以工作。但是如何让它与固定流体布局一起工作呢?如果我将列左编辑为宽度:200px;,我如何编辑列右宽度?请参阅enstar.nl/example2.php(嗯,我看到我的名称服务器尚未更改,因此如果不将主机文件更改为新 IP,则示例可能不可见。它们应该在几个小时内工作
    • 内容超过首页时会发生什么?
    • @nightfox89 当你想要一个固定的列然后左边是一个可变宽度时,唯一真正的答案是你需要使用javascript。请查看修改
    • @Jleagle 我不确定当内容超过第一页时发生的情况是什么意思。您是在谈论比宽度更多的内容还是在谈论初始渲染或什么?
    • 如果一列中的内容比视口高,是否会使一列比另一列高?
    猜你喜欢
    • 1970-01-01
    • 2013-08-27
    • 2015-11-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-30
    • 2012-07-15
    相关资源
    最近更新 更多