jquery 如何在2列中显示多个HTML表格

jchrr9hc  于 2023-11-17  发布在  jQuery
关注(0)|答案(7)|浏览(117)

我有一个在jQuery上运行的应用程序,它获取一些数据,并通过将新创建的表附加到div元素中来创建htmltables
这些表显示得很好,但我希望它们彼此相邻,这样用户就可以看到它们2乘2,避免一直上下滚动。
代码结构:

<div id=example>
 <table id=1>
  <tr>
   <td>..</td><td>..</td>
  </tr>
 <table>
 <table id=2>
  <tr>
   <td>..</td><td>..</td>
  </tr>
  more rows..
 <table>
</div>

字符串
表格具有动态行数,某些行具有不同的单元格数。
想要的结果是:
表1|表2
表3|表4
表5|表6

我如何在html中(在构造表时)或之后使用jQuery选择器和过滤器来实现这一点?

wqnecbli

wqnecbli1#

如果你使用的是bootstrap,你可以使用他们的网格系统:Bootstrap Grid System
如果你不这样做,那么你可以把你的表放在一个宽度为50%的父div中,然后把两个父div放在另一个宽度为100%的div中。
我强烈建议你使用css框架,如果你还没有使用的话。

8ftvxx2r

8ftvxx2r2#

既然你已经在创建表格了,那么你也可以创建嵌套表格。当然,你可以根据自己的意愿来设置样式和对齐。

table       { border: solid 1px black }
table table { border: solid 1px red }

个字符

6tqwzwtp

6tqwzwtp3#

在尝试了不同的方法之后,最简单的解决方案是使用Flexbox
我的解决方案是基于Jan Derk在这个post中的回答。
因为我只需要2列,所以我在表上使用了float: left/right属性:

jQuery("table").each(function(index, value) {

    if(index%2===0){

        jQuery(this).css({"float": "center","width": "45%"});

    }else {

        jQuery(this).css({"float": "left","width": "45%"});

    }

});

字符串
然后在周围的Div元素上,我分配了这些CSS属性:

jQuery("#div_id").css({"display":"flex","flex-wrap":"wrap", "justify-content": "center"});


此解决方案也是响应式的,当您调整窗口大小或使用移动的屏幕时,它会动态调整大小。

sgtfey8w

sgtfey8w4#

#wrap {
   width:600px;
   margin:0 auto;
}
#left_col {
   float:left;
   width:300px;
}
#right_col {
   float:right;
   width:300px;
}

个字符
确保列宽之和等于换行宽度。或者,您也可以使用宽度的百分比值。
有关使用CSS的基本布局技术的更多信息,请查看此tutorial

oxalkeyp

oxalkeyp5#

选项I -使用Float CSS。

示例如下:

<div style="float: left;width: 49%;">
    <!--table 1-->
</div>
<div style="float: right;width: 49%;">
    <!--table 2-->
</div>

字符串

选项二-将您的table放在另一个table内

示例如下:

<table>
    <tbody>
        <tr>
            <td>table 1</td>
            <td>table 2</td>
        </tr>
        <tr>
            <td>table 3</td>
            <td>table 4</td>
        </tr>
        <tr>
            <td>table 5</td>
            <td>table 6</td>
        </tr>
    </tbody>
</table>

ubbxdtey

ubbxdtey6#

你可以用Bootstrap来管理网格系统,或者用css来管理。我不能给你举个例子,因为你还没有发布你的代码。

qnakjoqk

qnakjoqk7#

很简单,你可以用css来做。使用css选择器,它会选择div中的所有表格,并将它们设置为宽度的50%。像这样使用css:

<style>
    #example table{
        width: 50%;
    }
</style>

字符串
如果这不能完美地工作,那么像这样添加float left:

<style>
    #example table{
        float: left;
        width: 50%;
    }
</style>

相关问题