四个高度和宽度相等的div

时间:2012-05-28 21:16:19

标签: html css tablelayout

问题似乎很简单,但我没有完成。

我正在处理一个Web项目,正在将body的溢出设置为隐藏。所以我不能在页面中放置超过可用空间高度的内容,否则它们将被隐藏。

现在我有四个图表/图表显示在每个占用相等空间的页面上。我试图把每个放在一个2行2列的表中。但无论你尝试什么,表的高度总是溢出页面高度,内容变得隐藏。我可以通过给出每个50%的宽度并设置table-layout:fixed;

来控制单元格的宽度

我该如何实施?使用div还是使用表?请帮我创建高度和宽度完全相同的div或table单元格;并且不会溢出页面高度。

2 个答案:

答案 0 :(得分:4)

您可以使用列表:

<ul>
    <li>1</li>
    <li>2</li>
    <li>3</li>
    <li>4</li>
</ul>

CSS:

html, body, ul {
    width: 100%;
    height: 100%;
}

li {
    float: left;
    width: 50%;
    height: 50%;
}

现场演示: http://jsfiddle.net/U7WJ4/1/show/light/

答案 1 :(得分:0)

解决方案 - 根据自己的需要进行调整。

<style type="text/css">
    #container {
        height:200px;
        width:400px;
        overflow:hidden;
        border:1px solid #000;
    }
    .item {
        float:left;
        height:100px;
        width:50%
    }
    .item-a { background-color: #CCC; }
    .item-b { background-color: #AAA; }
    .item-c { background-color: #900; }
    .item-d { background-color: #9CC; }
    .clear {
        clear:left;
    }
</style>

<div id="container">
    <div class="item item-a">abc</div>
    <div class="item item-b">abc</div>
    <div class="item item-c">abc</div>
    <div class="item item-d">abc</div>
    <div class="clear"></div>
</div>

这是与div方法具有相同CSS的等效表方法

<div id="container">
    <table cellpadding="0" cellspacing="0" border="0" width="100%">
        <tr>
            <td class="item item-a">a</td>
            <td class="item item-b">b</td>
        </tr>
        <tr>
            <td class="item item-c">c</td>
            <td class="item item-d">d</td>
        </tr>
    </table>
</div>