table元素在自适应布局中的自适应性

来源:互联网编辑:佚名浏览量:2692
在HTML5自适应布局技术独步天下的今天,table是一个不鼓励使用的HTML标记,但现实工作中,我们避免不了的偶尔会用到它。那么,怎样让一个传统的表格也表现出自适应性呢?


网上有很多种解决方案,最常见的是配合JavaScript。css-tricks里给出了一个用纯CSS实现的,但它需要将一些业务数据写在CSS里。而本文在这里将提到的一种方法也是用纯CSS实现表格的自适应布局,而且CSS只负责表现,不牵涉业务逻辑和数据。


例如:




借助伪元素和自定义属性


我们将借助伪元素 :before 和 :after 的力量。通常, 它们用显示图标类的内容,比如一个箭头,提示,或文字图案(icon)。它的另外一个神奇的功能是元素属性值显示到HTML内容里,content: attr(data-label),放在before/after伪元素类里。沿着这个思路,我们就能够让table在PC端表现成网格效果,而在小屏的手机端表现成流式布局。


我们暂以600px为小屏幕大屏幕的分界点,下面的CSS使用媒体查询语句,在小于600px宽的屏幕上,用CSS将td上的属性值取出来,放到内容区显示。


@media screen and (max-width: 600px) {table td:before {content: attr(data-label);float: left;text-transform: uppercase;font-weight: bold;}}


在大屏幕上的显示效果是这样:



而到了手机设备上,变成了这样:


说明:本篇《自适应布局中table元素的自适应性》的内容采自互联网,如有侵权,请联系我们删除!

响应式案例欣赏

物主租赁

数码租赁平台自适应网站

歌莉娅服饰

知名品牌H5响应式网站

BVLGARI香水

化妆品H5创意设计品牌官网