0

jQuery 移动表格重排适用于带有 THEAD 的表格。但是对于具有名称/值列的表,例如没有 THEAD 的 4 列

Name:   John                ID:     00002
Age:    22                  Date:   2015-2-3

如何让它响应?在智能手机上像下面这样

Name:   John                
ID:     00002
Age:    22                  
Date:  2015-2-3

或者

Name:   
John                
ID:     
00002
Age:    
22                  
Date:  
2015-2-3
4

1 回答 1

0

您想要的是响应式网格而不是表格。您可以使用 jQM 列表视图和一些 CSS 媒体查询来更改不同设备宽度的布局。

标记将遵循以下原则:

<ul data-role="listview" data-inset="true">
    <li>
        <div class="ui-grid-a">
            <div class="ui-block-a">Name:</div>
            <div class="ui-block-b">John</div>
        </div>
    </li>
    <li>
        <div class="ui-grid-a">
            <div class="ui-block-a">ID:</div>
            <div class="ui-block-b">00002</div>
        </div>
    </li>
    <li>
        <div class="ui-grid-a">
            <div class="ui-block-a">Age:</div>
            <div class="ui-block-b">22</div>
        </div>
    </li>
    <li>
        <div class="ui-grid-a">
            <div class="ui-block-a">Date:</div>
            <div class="ui-block-b">2015/2/3</div>
        </div>
    </li>
</ul>

然后使用 CSS 使列表项在不同的断点处向左浮动:

html {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}
*, *:before, *:after {
  box-sizing: inherit;
}

.my-page .ui-listview li .ui-block-a{
    color: #999;
}
.my-page .ui-listview li .ui-block-b{
    color: #111;
}

/* First breakpoint is 48em (768px). 2 column layout.  */
 @media (min-width: 48em) {
    .my-page .ui-listview li {
        float: left;
        width: 50%;
        margin: 0;
        border-radius: 0;
        border: rgb(221, 221, 221) solid 1px;
    }
}
/* Second breakpoint is 63.75em (1020px). 4 column layout.  */
 @media (min-width: 63.75em) {
    .my-page .ui-listview li {
        width: 25%;
    }
}

这是一个带有 3 个断点的DEMO

显然你应该调整断点以适应你的内容......

于 2015-02-18T15:06:47.103 回答