【问题标题】:How can I get three columns, sibling divs, each expand to fill its parent?如何获得三列,兄弟 div,每个扩展以填充其父级?
【发布时间】:2009-04-28 20:28:47
【问题描述】:

我一直在寻找。对不起,我现在很绝望,所以我想我会在这里问。下面是一个 HTML 示例。当 B 列长于单个页面(视口,抱歉,我不确定此处的术语是否正确)时,A 和 C 不会在高度上扩展以填充容器 div。它们填满整个页面,但即使 B 列比单页长,它们也会在单页长度处停止。任何想法,我一直在拔头发。我一直在玩 height 和 min-height ,但似乎没有任何效果。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title>Untitled Page</title>
        <style type="text/css">
            html, body 
            {
                height: 100%;
                background-color: gray;
                padding: 0;
                margin: 0;
            }

            #container
            {
                height: 100%;
                margin: auto;
                padding: 0px;
                width: 610px;
            }

            #a
            {
                width: 5px;
                min-height: 100%;
                float: left;
                background-color: yellow;
            }

            #b
            {
                width: 600px;
                background-color: Blue;
                float:left;
                min-height: 100%;
            }

            #c
            {
                width: 5px;
                float:left;
                min-height: 100%;
                background-color: green;
            }
        </style>
</head>
<body>
        <div id="container">
            <div id="a"></div>
            <div id="b">
                <p>more</p>
                <p>more</p>
                <p>more</p>
                <p>more</p>
                <p>more</p>
                <p>more</p>
                <p>more</p>
                <p>more</p>
                <p>more</p>
                <p>more</p>
                <p>more</p>
                <p>more</p>
                <p>more</p>
                <p>more</p>
                <p>more</p>
                <p>more</p>
                <p>more</p>
                <p>more</p>
                <p>more</p>
                <p>more</p>
                <p>more</p>
                <p>more</p>
                <p>more</p>
                <p>more</p>
                <p>more</p>
                <p>more</p>
                <p>more</p>
                <p>more</p>
                <p>more</p>
                <p>more</p>
                <p>more</p>
                <p>more</p>
                <p>more</p>
                <p>more</p>
                <p>more</p>
                <p>more</p>
            </div>
            <div id="c"></div>
    </div>
</body>
</html>

编辑: 在我浪费时间向我解释关于水平抓取一个像素然后平铺之前,设计师给了我一个垂直渐变。顶部开始变暗,结束变浅。那以及阴影效果。阴影水平运行。因此,据我所知,没有办法对其进行切片,然后巧妙地使用平铺。

【问题讨论】:

    标签: html stylesheet


    【解决方案1】:

    到目前为止,最简单的方法是使用单行表而不是 div。表格可能不是超酷的做事方式,但归根结底,它们只需要比尝试使用 css 实现相同目标的代码少得多。

    【讨论】:

    • 我刚刚自己使用了表格。我认为这是一种非常老套的做法,但我现在正在考虑什么都能完成工作。因此,如果没有人可以使用 CSS 和 div 获得解决方案,那么我将选择它作为正确答案。
    【解决方案2】:

    你见过faux columns的把戏吗?

    【讨论】:

    • 是的,我有。我会这样做,但不幸的是设计师给了我一个垂直的渐变填充,所以垂直切片不起作用。我必须水平切片。
    • 那么就不要设置重复了。
    • 但是我将有一个大的背景图像。但我想在当今互联网速度很快的世界里,我下载两张大图有什么关系吗?
    • 这真的取决于你的目标市场。内部公司:通常没有。在堪萨斯州中部跑步的妈妈和爸爸:是的。也就是说,请查看此链接:有关高速渗透率的信息 articlet.com/article791.html
    猜你喜欢
    • 2012-09-11
    • 1970-01-01
    • 2018-06-24
    • 1970-01-01
    • 1970-01-01
    • 2016-06-13
    • 2013-07-19
    • 2012-05-15
    • 1970-01-01
    相关资源
    最近更新 更多