[转]Responsive Tables Demo
本文转自:http://elvery.net/demo/responsive-tables/
A quick and dirty look at some techniques for designing responsive table layouts. This was put together in haste (and with the aid of Twitter Bootstrap) for What Do You Know Brisbane hosted by Web Directions.
I work for a really great little web design agency in Brisbane, and you should say hello.
The Unseen Column
This technique, first described by Stuart Curry (@irishstu) involves simply hiding less important columns on smaller screen sizes.
Example
| Code | Company | Price | Change | Change % | Open | High | Low | Volume |
|---|---|---|---|---|---|---|---|---|
| AAC | AUSTRALIAN AGRICULTURAL COMPANY LIMITED. | $1.38 | -0.01 | -0.36% | $1.39 | $1.39 | $1.38 | 9,395 |
| AAD | ARDENT LEISURE GROUP | $1.15 | +0.02 | 1.32% | $1.14 | $1.15 | $1.13 | 56,431 |
| AAX | AUSENCO LIMITED | $4.00 | -0.04 | -0.99% | $4.01 | $4.05 | $4.00 | 90,641 |
| ABC | ADELAIDE BRIGHTON LIMITED | $3.00 | +0.06 | 2.04% | $2.98 | $3.00 | $2.96 | 862,518 |
| ABP | ABACUS PROPERTY GROUP | $1.91 | 0.00 | 0.00% | $1.92 | $1.93 | $1.90 | 595,701 |
| ABY | ADITYA BIRLA MINERALS LIMITED | $0.77 | +0.02 | 2.00% | $0.76 | $0.77 | $0.76 | 54,567 |
| ACR | ACRUX LIMITED | $3.71 | +0.01 | 0.14% | $3.70 | $3.72 | $3.68 | 191,373 |
| ADU | ADAMUS RESOURCES LIMITED | $0.72 | 0.00 | 0.00% | $0.73 | $0.74 | $0.72 | 8,602,291 |
| AGG | ANGLOGOLD ASHANTI LIMITED | $7.81 | -0.22 | -2.74% | $7.82 | $7.82 | $7.81 | 148 |
| AGK | AGL ENERGY LIMITED | $13.82 | +0.02 | 0.14% | $13.83 | $13.83 | $13.67 | 846,403 |
| AGO | ATLAS IRON LIMITED | $3.17 | -0.02 | -0.47% | $3.11 | $3.22 | $3.10 | 5,416,303 |
Code
The approach I've presented here assumes you know the index of the columns to be hidden. This probably isn't always appropriate, and isn't all that semantic. Another option is to give the <th> and <td> classes based on importance level and code your CSS accordingly.
- <table>
- <thead>
- <tr>
- <th>Code</th>
- <th>Company</th>
- <th class="numeric">Price</th>
- <th class="numeric">Change</th>
- <th class="numeric">Change %</th>
- <th class="numeric">Open</th>
- <th class="numeric">High</th>
- <th class="numeric">Low</th>
- <th class="numeric">Volume</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>AAC</td>
- <td>AUSTRALIAN AGRICULTURAL COMPANY LIMITED.</td>
- <td class="numeric">$1.38</td>
- <td class="numeric">-0.01</td>
- <td class="numeric">-0.36%</td>
- <td class="numeric">$1.39</td>
- <td class="numeric">$1.39</td>
- <td class="numeric">$1.38</td>
- <td class="numeric">9,395</td>
- </tr>
- </tbody>
- </table>
- @media only screen and (max-width: 800px) {
- #unseen table td:nth-child(2),
- #unseen table th:nth-child(2) {display: none;}
- }
- @media only screen and (max-width: 640px) {
- #unseen table td:nth-child(4),
- #unseen table th:nth-child(4),
- #unseen table td:nth-child(7),
- #unseen table th:nth-child(7),
- #unseen table td:nth-child(8),
- #unseen table th:nth-child(8){display: none;}
- }
Flip Scroll
This technique was first published by David Bushell (@dbushell). For the full low down on this technique visit his post on the technique, Responsive Tables (2). While you're there, it's also worth checking out his responsive calendar proof of concept.
Example
| Code | Company | Price | Change | Change % | Open | High | Low | Volume |
|---|---|---|---|---|---|---|---|---|
| AAC | AUSTRALIAN AGRICULTURAL COMPANY LIMITED. | $1.38 | -0.01 | -0.36% | $1.39 | $1.39 | $1.38 | 9,395 |
| AAD | ARDENT LEISURE GROUP | $1.15 | +0.02 | 1.32% | $1.14 | $1.15 | $1.13 | 56,431 |
| AAX | AUSENCO LIMITED | $4.00 | -0.04 | -0.99% | $4.01 | $4.05 | $4.00 | 90,641 |
| ABC | ADELAIDE BRIGHTON LIMITED | $3.00 | +0.06 | 2.04% | $2.98 | $3.00 | $2.96 | 862,518 |
| ABP | ABACUS PROPERTY GROUP | $1.91 | 0.00 | 0.00% | $1.92 | $1.93 | $1.90 | 595,701 |
| ABY | ADITYA BIRLA MINERALS LIMITED | $0.77 | +0.02 | 2.00% | $0.76 | $0.77 | $0.76 | 54,567 |
| ACR | ACRUX LIMITED | $3.71 | +0.01 | 0.14% | $3.70 | $3.72 | $3.68 | 191,373 |
| ADU | ADAMUS RESOURCES LIMITED | $0.72 | 0.00 | 0.00% | $0.73 | $0.74 | $0.72 | 8,602,291 |
| AGG | ANGLOGOLD ASHANTI LIMITED | $7.81 | -0.22 | -2.74% | $7.82 | $7.82 | $7.81 | 148 |
| AGK | AGL ENERGY LIMITED | $13.82 | +0.02 | 0.14% | $13.83 | $13.83 | $13.67 | 846,403 |
| AGO | ATLAS IRON LIMITED | $3.17 | -0.02 | -0.47% | $3.11 | $3.22 | $3.10 | 5,416,303 |
Code
The biggest trick to getting this working is to use display: inline-block; on the table rows and white-space: nowrap; on the table body. You'll also need to make use of your favourite float clearing method.
- <table>
- <thead>
- <tr>
- <th>Code</th>
- <th>Company</th>
- <th class="numeric">Price</th>
- <th class="numeric">Change</th>
- <th class="numeric">Change %</th>
- <th class="numeric">Open</th>
- <th class="numeric">High</th>
- <th class="numeric">Low</th>
- <th class="numeric">Volume</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>AAC</td>
- <td>AUSTRALIAN AGRICULTURAL COMPANY LIMITED.</td>
- <td class="numeric">$1.38</td>
- <td class="numeric">-0.01</td>
- <td class="numeric">-0.36%</td>
- <td class="numeric">$1.39</td>
- <td class="numeric">$1.39</td>
- <td class="numeric">$1.38</td>
- <td class="numeric">9,395</td>
- </tr>
- </tbody>
- </table>
- @media only screen and (max-width: 800px) {
- #flip-scroll .cf:after { visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0; }
- #flip-scroll * html .cf { zoom: 1; }
- #flip-scroll *:first-child+html .cf { zoom: 1; }
- #flip-scroll table { width: 100%; border-collapse: collapse; border-spacing: 0; }
- #flip-scroll th,
- #flip-scroll td { margin: 0; vertical-align: top; }
- #flip-scroll th { text-align: left; }
- #flip-scroll table { display: block; position: relative; width: 100%; }
- #flip-scroll thead { display: block; float: left; }
- #flip-scroll tbody { display: block; width: auto; position: relative; overflow-x: auto; white-space: nowrap; }
- #flip-scroll thead tr { display: block; }
- #flip-scroll th { display: block; text-align: right; }
- #flip-scroll tbody tr { display: inline-block; vertical-align: top; }
- #flip-scroll td { display: block; min-height: 1.25em; text-align: left; }
- /* sort out borders */
- #flip-scroll th { border-bottom: 0; border-left: 0; }
- #flip-scroll td { border-left: 0; border-right: 0; border-bottom: 0; }
- #flip-scroll tbody tr { border-left: 1px solid #babcbf; }
- #flip-scroll th:last-child,
- #flip-scroll td:last-child { border-bottom: 1px solid #babcbf; }
- }
No More Tables
This technique was developed by Chris Coyier (@chriscoyier) and described in his post Responsive Data Tables at css-tricks.com. While you're there, you should probably check out the Responsive Tables Roundup post, which showcases all these techniques and more.
Example
| Code | Company | Price | Change | Change % | Open | High | Low | Volume |
|---|---|---|---|---|---|---|---|---|
| AAC | AUSTRALIAN AGRICULTURAL COMPANY LIMITED. | $1.38 | -0.01 | -0.36% | $1.39 | $1.39 | $1.38 | 9,395 |
| AAD | ARDENT LEISURE GROUP | $1.15 | +0.02 | 1.32% | $1.14 | $1.15 | $1.13 | 56,431 |
| AAX | AUSENCO LIMITED | $4.00 | -0.04 | -0.99% | $4.01 | $4.05 | $4.00 | 90,641 |
| ABC | ADELAIDE BRIGHTON LIMITED | $3.00 | +0.06 | 2.04% | $2.98 | $3.00 | $2.96 | 862,518 |
| ABP | ABACUS PROPERTY GROUP | $1.91 | 0.00 | 0.00% | $1.92 | $1.93 | $1.90 | 595,701 |
| ABY | ADITYA BIRLA MINERALS LIMITED | $0.77 | +0.02 | 2.00% | $0.76 | $0.77 | $0.76 | 54,567 |
| ACR | ACRUX LIMITED | $3.71 | +0.01 | 0.14% | $3.70 | $3.72 | $3.68 | 191,373 |
| ADU | ADAMUS RESOURCES LIMITED | $0.72 | 0.00 | 0.00% | $0.73 | $0.74 | $0.72 | 8,602,291 |
| AGG | ANGLOGOLD ASHANTI LIMITED | $7.81 | -0.22 | -2.74% | $7.82 | $7.82 | $7.81 | 148 |
| AGK | AGL ENERGY LIMITED | $13.82 | +0.02 | 0.14% | $13.83 | $13.83 | $13.67 | 846,403 |
| AGO | ATLAS IRON LIMITED | $3.17 | -0.02 | -0.47% | $3.11 | $3.22 | $3.10 | 5,416,303 |
Code
This technique as presented here relies on using HTML5 data attributes and accessing them via CSS to specify the column headings. The other option is to hard code the column headings into the CSS, but as we all know content in CSS is a huge no-no.
- <table>
- <thead>
- <tr>
- <th>Code</th>
- <th>Company</th>
- <th class="numeric">Price</th>
- <th class="numeric">Change</th>
- <th class="numeric">Change %</th>
- <th class="numeric">Open</th>
- <th class="numeric">High</th>
- <th class="numeric">Low</th>
- <th class="numeric">Volume</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td data-title="Code">AAC</td>
- <td data-title="Company">AUSTRALIAN AGRICULTURAL COMPANY LIMITED.</td>
- <td data-title="Price" class="numeric">$1.38</td>
- <td data-title="Change" class="numeric">-0.01</td>
- <td data-title="Change %" class="numeric">-0.36%</td>
- <td data-title="Open" class="numeric">$1.39</td>
- <td data-title="High" class="numeric">$1.39</td>
- <td data-title="Low" class="numeric">$1.38</td>
- <td data-title="Volume" class="numeric">9,395</td>
- </tr>
- </tbody>
- </table>
- @media only screen and (max-width: 800px) {
- /* Force table to not be like tables anymore */
- #no-more-tables table,
- #no-more-tables thead,
- #no-more-tables tbody,
- #no-more-tables th,
- #no-more-tables td,
- #no-more-tables tr {
- display: block;
- }
- /* Hide table headers (but not display: none;, for accessibility) */
- #no-more-tables thead tr {
- position: absolute;
- top: -9999px;
- left: -9999px;
- }
- #no-more-tables tr { border: 1px solid #ccc; }
- #no-more-tables td {
- /* Behave like a "row" */
- border: none;
- border-bottom: 1px solid #eee;
- position: relative;
- padding-left: 50%;
- white-space: normal;
- text-align:left;
- }
- #no-more-tables td:before {
- /* Now like a table header */
- position: absolute;
- /* Top/left values mimic padding */
- top: 6px;
- left: 6px;
- width: 45%;
- padding-right: 10px;
- white-space: nowrap;
- text-align:left;
- font-weight: bold;
- }
- /*
- Label the data
- */
- #no-more-tables td:before { content: attr(data-title); }
- }
[转]Responsive Tables Demo的更多相关文章
- [转]响应式表格jQuery插件 – Responsive tables
本文转自:http://www.shejidaren.com/responsive-tables-for-bootstrap-3.html 这个Responsive tables jQuery插件依赖 ...
- responsive tables
以上内容原本是整理为ppt格式的,贴过来格式有点乱,请见谅. 其他responsive tables参考: http://gergeo.se/RWD-Table-Patterns/ 3种类型的代码参考 ...
- Frontend Development
原文链接: https://github.com/dypsilon/frontend-dev-bookmarks Frontend Development Looking for something ...
- IOS开发--UI进阶之iCarousel学习(待翻译)
前言:先展示这个会被多个项目用到的开源的轮播器的其中一个动画效果: 更多的效果请到github原网址查看:https://github.com/nicklockwood/iCarousel 源码也可以 ...
- .Net程序员学用Oracle系列(19):我知道的导出和导入
1.传统的导出/导入工具 1.1.EXP 命令详解 1.2.IMP 命令详解 1.3.EXP/IMP 使用技巧 2.新的导出/导入工具 2.1.EXPDP/IMPDP 参数说明 2.2.EXPDP/I ...
- .Net程序员学用Oracle系列(19):导出、导入(备份、还原)
1.传统的导出/导入工具 1.1.EXP 命令详解 1.2.IMP 命令详解 1.3.EXP/IMP 使用技巧 2.新的导出/导入工具 2.1.EXPDP/IMPDP 参数说明 2.2.EXPDP/I ...
- 使用Bootstrap 基于MVC输出移动化table 列表
基于Bootrap的列表组及栅格布局来实现 模型定义 public class StreetEvent { public int Id { get; set; } public string Stre ...
- 容器,表格 ,div,元素可左右拖动,滚动 css
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8&quo ...
- amazeui学习笔记--css(HTML元素5)--表格Table
amazeui学习笔记--css(HTML元素5)--表格Table 一.总结 1.基本样式:am-table:直接模块名 <table class="am-table"& ...
随机推荐
- 重温html5的新增的标签和废除的标签
HTML5已经盛行有段时间了,对于标签的使用,按照规范,哪些该用,哪些不该用,你是否都掌握了呢.今天我在这里详细列举下: 新增的结构标签 section元素 表示页面中的一个内容区 块,比如章节.页眉 ...
- 【C#进阶系列】06 类型和成员基础
这些东西是基础中的基础,基本上是本书都会讲这个.但是很多东西到处都有,所以只捡了以下的这些写下来. 关于类型的可见性和可访问性 也就是public,internal这种东西,但是还是有个东西要提一下, ...
- java之内的工具分享,附带下载链接,方便以后自己寻找
class反编译工具:http://pan.baidu.com/s/1geYvX5L redis客户端工具:http://pan.baidu.com/s/1eRJ4ThC mysql客户端-[mysq ...
- linux下的inode记录
我们经常在Linux下可以看到inode,都不知道是什么东东,那么我们现在来慢慢了解下. 一.inode是什么? 理解inode,要从文件储存说起. 文件储存在硬盘上,硬盘的最小存储单位叫做&q ...
- Linux 安装 PHP 环境
使用虚拟机玩linux时,发现CentOS中的php版本是5.1.6.如果要安装新版的php,需要把旧的版本删除. 先查看下php版本:# php -v 如果执行该命令提示该命令不存在,那么可以通过以 ...
- JSON数据解析(转)
上篇随笔详细介绍了三种解析服务器端传过来的xml数据格式,而对于服务器端来说,返回给客户端的数据格式一般分为html.xml和json这三种格式,那么本篇随笔将讲解一下json这个知识点,包括如何通过 ...
- Dom4j 锁竞争性能低下解决
在最近的项目中使用 Dom4j 解析 xml 发现性能低下,有锁竞争的情况,解决如下: SAXParserFactory factory = new org.apache.xerces.jaxp.SA ...
- winform(多窗体、菜单和工具栏)
一.多窗体 1.哪个是主窗体 利用From1的button将From2打开 private void button1_Click(object sender, EventArgs e) { Form2 ...
- Play 可以做的 5 件很酷的事
Play 可以做的 5 件很酷的事 本章译者:@Playframwork 通过 5 个实例,透视 Play 框架背后的哲学. 绑定 HTTP 参数到 JAVA 方法参数 用 Play 框架,在 Jav ...
- Backbone学习笔记一Backbone中的MVC
原文章地址http://bigdots.github.io/2015/12/01/Backbone学习笔记(一)/#more Backbone.js为复杂WEB应用程序提供模型(models).集合( ...