使用CSS动态调整表格中的div

时间:2013-08-08 16:35:14

标签: html css asp.net-mvc twitter-bootstrap html-table

我搜索了这个网站,似乎动态调整组件大小的最佳方法是通过CSS“position”和“width / height”参数。

我有一个部分看起来像这样的应用程序:

my graphs

目前正在通过Javascript($(window).width(), $(window).height())调整大小,我想通过CSS正确地完成它。

这是我的表格布局:

<table class="table">
    <tr >
        <td >
            <div id="chartdiv1" ></div>
        </td>
        <td rowspan="3">
            <div id="Simulation" ></div>
            <div id="SimLabels" style="border: dashed; z-index: 1; width: 190px; position: relative; ">
                <input type="checkbox" onchange="redrawSim()" checked="checked" id="BedMassLabel"><strong style="color: #4bb2c5;">Bed Mass (kg)</strong><br />
                <input type="checkbox" onchange="redrawSim()" checked="checked" id="H2OBedLabel"><strong style="color: #EAA228;">H2O in Fluid Bed (kg)</strong><br />
                <input type="checkbox" onchange="redrawSim()" checked="checked" id="BedTempLabel"><strong style="color: #c5b47f;">Temperature of Bed (C)</strong><br />
                <input type="checkbox" onchange="redrawSim()" checked="checked" id="evapRateLabel"><strong style="color: #579575;">Evaporation Rate (?)</strong>
            </div>
        </td>
    </tr>
    <tr >
        <td>
            <div id="chartdiv2" ></div>
        </td>
    </tr>
    <tr >
        <td >
            <div id="chartdiv3" ></div>
        </td>
    </tr>    
</table>

我已经尝试了许多位置,宽度和高度的组合,但很多时候看起来无论我为宽度/高度放下什么百分比,布局都有自己的想法。

应该提到我同时使用MVC和Twitter Bootstrap,所以也许我的html会受此影响。有人可以帮我修复我的HTML,以便它通过动态大小调整复制上面的设计吗?

1 个答案:

答案 0 :(得分:1)

最好使用<div>元素而不是表格来进行布局。查看此SO Post了解其背后的原因。

由于您使用的是Twitter Bootstrap,因此您最好的选择是使用Bootstrap的优秀(和核心功能)grid system

以下是使用Bootstrap 2.3的快速设置:

<div class="row">
    <div class="span3">
        <div class="row">
            <div class="span12">
                <div id="chartdiv1" ></div>
            </div>
        </div>
        <div class="row">
            <div class="span12">
                <div id="chartdiv2" ></div>
            </div>
        </div>
        <div class="row">
            <div class="span12">
                <div id="chartdiv3" ></div>
            </div>
        </div>
    </div>
    <div class="span9">
       <div id="Simulation" ></div>
    </div>
</div>

或使用Bootstrap 3 RC1:

<div class="row">
    <div class="col-lg-3">
        <div class="row">
            <div class="col-lg-12">
                <div id="chartdiv1" ></div>
            </div>
        </div>
        <div class="row">
            <div class="col-lg-12">
                <div id="chartdiv2" ></div>
            </div>
        </div>
        <div class="row">
            <div class="col-lg-12">
                <div id="chartdiv3" ></div>
            </div>
        </div>
    </div>
    <div class="col-lg-9">
       <div id="Simulation" ></div>
    </div>

</div>