Responsive design for tables

运用本文的CSS 可以是table变成响应式设计

CSS代码如下:

/* -----------------------------------------

Table - Clickable row fakery

----------------------------------------- */

/* Generic table style - app overwrites */

table {

*border-collapse: collapse; /* IE7 and lower */

border-spacing: 0;

-moz-border-radius: 0px;

-webkit-border-radius: 0px;

border-radius: 0px;

width:100%;

}

table thead tr th {

color: #202020;

height: 30px;

font-size: 15px;

font-weight: bold;

background-color: #FFF;

border-bottom: 1px solid #DDD;

border-right: 1px solid #DDD;

background: -o-linear-gradient(0deg , rgb(238,238,238) 0%, rgb(255,255,255) 60%);

background: -moz-linear-gradient(90deg , rgb(238,238,238) 0%, rgb(255,255,255) 60%);

background: -webkit-linear-gradient(90deg , rgb(238,238,238) 0%, rgb(255,255,255) 60%);

background: -ms-linear-gradient(0deg , rgb(238,238,238) 0%, rgb(255,255,255) 60%);

background: linear-gradient(0deg , rgb(238,238,238) 0%, rgb(255,255,255) 60%);

}

table thead tr th:hover {

color: #989998;

}

table tbody tr td{

color: #444444;

border-right: 1px solid #DDD;

table-layout: collapsed;

}

table tbody tr td {border-bottom: 1px solid #e4e4e4;}

td.noBottomBorder {border-bottom: none;}

table tr td:last-child {border-right: none;}

table tbody tr:hover{

background: #EEF1F2;

cursor: pointer;

}

table tr:hover{

background-color: #EEF1F2;

}

table tbody tr:nth-child(2n):hover {

background-color: #EEF1F2;

}

table tr:hover td {

color: #444444;

}

table.dataGrid {

border: none;

}

table .empty {

background:white ;

}

.table-cell-right {

text-align: right;

}

/*table tbody tr:last-child td {

border-bottom:none;

}*/

/* Show the table header rows */

.responsive-table td,

.responsive-table th,

.responsive-table tbody th,

.responsive-table tbody td,

.responsive-table thead td,

.responsive-table thead th {

display: table-cell;

margin: 0;

}

/* Hide the labels in each cell */

.responsive-table td .ui-table-cell-label,

.responsive-table th .ui-table-cell-label {

display: none;

}

/* Table - Clickable row fakery */

table tr td a {

display:block;

height:100%;

width:100%;

font-weight: 400;

text-decoration: underline;

}

table tr td a:hover {

text-decoration: none;

}

.earn-history-table .col1{

width: 30%;

}

.earn-history-table .col2{

width: 20%;

}

.earn-history-table .col3{

width: 15%;

}

.earn-history-table .col4{

width: 25%;

}

.earn-history-table .col5{

width: 10%;

}

@media only screen and (max-width: 767px) { /* Start screen styles --- */

table tbody tr td {

border-right: none;

color: #444444;

}

/* These apply across all breakpoints because they are outside of a media query */

/* Make the labels light gray all caps across the board */

.responsive-table thead th,

.responsive-table tbody th .ui-table-cell-label,

.responsive-table tbody td .ui-table-cell-label {

color: rgba(0, 0, 0, 0.5);

display: inline-block;

font-weight: normal;

margin: 0 10px 0 0;

width: 33%;

vertical-align: top;

}

/* White bg, large blue text for rank and title */

.responsive-table tbody th {

font-size: 1.2em;

background-color: #fff;

color: #77bbff;

text-align: center;

}

/*  Add a bit of extra left padding for the title */

.responsive-table tbody td.title {

padding-left: .8em;

}

/*  Custom stacked styles for mobile sizes */

/*  Use a max-width media query so we don‘t have to undo these styles */

.ui-table-reflow thead td, .ui-table-reflow thead th {

display: none !important;

}

/*  Negate the margin between sections */

.responsive-table tbody th {

margin-top: 0;

text-align: left;

}

/*  White bg, large blue text for rank and title */

.responsive-table tbody th,

.responsive-table tbody td.title {

display: block;

font-size: 15px;

line-height: 110%;

padding: .5em .5em;

background-color: #EEF1F2;

color: #779665;

}

/*  White bg, large blue text for rank and title */

.responsive-table tbody th,

.responsive-table tbody td.title a{

color: white;

}

/*  Hide labels for rank and title */

.responsive-table tbody th .ui-table-cell-label,

.responsive-table tbody td.title .ui-table-cell-label {

display: none;

}

/*  Position the title next to the rank, pad to the left */

.responsive-table tbody td.title {

margin-top: 0;

padding-left: 10px;

border-bottom: 1px solid rgba(0,0,0,.15);

}

table tbody tr:nth-child(2n) td {

border-bottom: 1px solid rgba(0,0,0,.15);

}

table tbody tr:nth-child(2n) td:last-child {

border-bottom: none;

}

/*  Make the data bold */

.responsive-table th,

.responsive-table td {

font-weight: bold;

}

/* Make the label elements a percentage width */

.responsive-table td .ui-table-cell-label,

.responsive-table th .ui-table-cell-label {

min-width: 20%;

}

}

@media ( max-width: 767px ) {

.responsive-table td,

.responsive-table th {

width: 100%;

-webkit-box-sizing: border-box;

-moz-box-sizing: border-box;

box-sizing: border-box;

float: left;

clear: left;

}

}

.responsive-table td .ui-table-cell-contentInline {

display: inline-block

}

前台HTML代码如下:

<table class="earn-history-table responsive-table ui-table ui-table-reflow" data-role="table" data-mode="reflow">

<thead>

<tr>

<th class="col3" data-priority="1" data-colstart="1">Date</th>

<th class="col1" data-priority="2" data-colstart="2">Description</th>

<th class="col2" data-priority="3" data-colstart="3">Category</th>

<th class="col2" data-priority="4" data-colstart="4">Points</th>

</tr>

</thead>

<tbody>

@foreach (var e in @Model.Events)

{

<tr>

<td class="title">

<b class="ui-table-cell-label">Date</b>

@e.DateForDisplay

</td>

@if (e.HasLink)

{

<td class="col1">

<b class="ui-table-cell-label">Description</b>

<div class="ui-table-cell-contentInline">

<a href="@e.Link">@e.Description</a>

</div>

</td>

}

else

{

<td class="col1">

<b class="ui-table-cell-label">Description</b>

@e.Description

</td>

}

<td class="col1">

<b class="ui-table-cell-label">Category</b>

Earn

</td>

<td class="col1">

<b class="ui-table-cell-label">Points</b>

@e.Value

</td>

</tr>

}

</tbody>

</table>

时间: 2024-10-31 03:32:29

Responsive design for tables的相关文章

Responsive Design常用的媒体查询

(PS:原文写于2012年,本文参照原文作了适当修改,不当之处请指出) 现在Web朝着响应式的趋势发展,媒体查询在创建响应式网站中起到了主要作用. 没有媒体查询几乎不能实现响应式设计,利用媒体查询,我们可以针对特定的设备,如显示器.智能手机和平板,写CSS. 媒体查询是响应式设计的核心 在这篇文章中我将分享一些到目前为止我收集到的常用媒体查询.在一些示例中,我可能是错误的,但是不用担心,因为我针对这个开通了评论功能.我把它们分为显示器媒体查询.智能手机媒体查询和平板媒体查询 显示器媒体查询 显示

FCC学习记录(二)—— Responsive Design with Bootsstrap

1.Bootstrap的基本了解: Bootstrap,来自 Twitter,是目前最受欢迎的前端框架.Bootstrap 是基于 HTML.CSS.JAVASCRIPT 的,它简洁灵活,使得 Web 开发更加快捷.--引用自360百科 Bootstrap将通过调整HTML元素大小来确定屏幕的宽度和响应,因此名称响应式设计(Responsive Design). 代码添加到HTML顶部来将Bootstrap添加到任何应用程序:<link rel="stylesheet" href

Responsive Design ------响应式设计

什么是响应式设计呢?维基百科是这样对响应式作的描述:“Responsive设计简单的称为RWD,是精心提供 各种设备都能浏览网页的一种设计方法,RWD能让你的网页在不同的设备中展现不同的设计风格.”从这一点描述来说,RWD不是流体布局,也不是网格布局, 而是一种独特的网页设计方法. 响应式设计要考虑元素布局的秩序,而且还需要做到“有求必应”,那就需要满足以下三个条件:网站必须建立灵活的网格基础:引用到网站的图片必须是可伸缩的:不同的显示风格,需要在Media Queries上写不同的样式. 要想

响应式和自适应(Responsive design 和 Adaptive design)

前二天做了几个手机端页面,本来用CSS3的@media 但因为对它还不是很了解,调试多次不成功.因为时间比较赶,为了实现最终的页面效果,我用JS去获取了屏幕的大小去控制了最终的字体大小. 做完后闲下来我查了一下资料,更加深入的去了解了一下何为响应式.发现原来我最终的页面,只能叫自适应,而不叫响应式.对于页面来说 没有实际上显示的问题(经过查资料显示貌似自适应比响应式更完善)不过我的初衷还是做响应式,在做响应式遇到问题时临时做的自适应. 响应式的基本概念是: 简而言之,就是一个网站能够兼容多个终端

Understanding Responsive Web Design: Cross-browser Compatibility

http://www.sitepoint.com/understanding-responsive-web-design-cross-browser-compatibility/ In the last article, I described three ways to work with with images from a responsive design standpoint, discussing the best solution to adopt while serving pr

超实用!9个目前流行的MATERIAL DESIGN前端框架

http://www.uisdc.com/material-design-frameworks-top-9 谷歌推出的Material Design风格已见有一些APP UI采用,视觉和交互体验都很棒,对于想尝试这个风格但又不懂实现一些效果的前端设计师们,可以试试今天分享的9个目前流行的Material Design前端框架 >>> 这些前端框架的设计元素齐全,按钮.表单.布局及常用JS特效代码也有齐了,支持Responsive Design,还有的可以结合Bootstrap使用,相当不

项目新的需求,网页的自适应交付/响应式交付 Responsive/Adaptive Delivery

网页为什么要做自适应交付,皆因现在移动设备大行其道,现在是移动互联网时代,以IOS及Android为首的各种移动终端已经遍地开花. 当人家用380px的iphone打开你的网页时,你总不能显示个1024px的页面给人家,用户体验大打折购,因为响应式设计或者自适应交付就应运而生. 之前已经提到过响应式设计(responsive design),但响应式设计有个重点就是不管3721,全部资源(html,css,js)统统加载下来,页面比较冗肿:而响应式的交付,完美的响应式交付是服务器跟据访问者的设备

响应式网页设计

随着越来越多类型的移动设备的普及,网页设计也随之变化,响应式网页设计应用而生,目前已有有很多比较流行的框架解决此问题,无论切换任何设备,都会自动根据设备的大小进行动态变化,无需为每个量身定做不同类别的网页,大大节省了开发工作量,响应式网页设计已经成为一种趋势. 一.流行的前端(from_end)设计框架很多,大概有以下几种: 1. Bootstrap Boostrap绝对是目前最流行用得最广泛的一款框架.它是一套优美,直观并且给力的web设计工具包,可以用来开发跨浏览器兼容并且美观大气的页面.它

直接拿来用!最火的前端开源项目(一)

对于开发者而言,了解当下比较流行的开源项目很是必要.利用这些项目,有时能够让你达到事半功倍的效果.为此,本文整理GitHub上最火的前端开源项目列表,内容涵盖了Hack Design. Designer School.TheExpressiveWeb.如何成为优秀的前端开发工程师.Web开发教学材等,这里按分类的方式列出前九个. 详细内容如下: 一.Architecture 网站架构,一般认为是根据客户需求分析的结果,准确定位网站目标群体,设定网站整体架构,规划.设计网站栏目及其内容,制定网站开