display 设置为table、tablecell、tablerow

摘要:
IE8支持许多新的CSS显示属性值,包括与表相关的属性值:表、表行和表单元格。它也是最后一个支持这些属性值的主流浏览器。显示:表格系列几乎与表格系统的元素相对应。请参见下表:表元素将显示为一个块级表,表的前后都有换行符。

IE8支持很多新的CSS display属性值,包括与表格相关的属性值:table、table-row和table-cell,它也是最后一款支持这些属性值的主流浏览器。它标志着复杂CSS布局技术的结束,同时也给了HTML表格布局致命一击。最终,使用CSS布局来制作出类似于table布局的栅格将会变得十分迅速和简单。

一、为什么不用table元素?

目前,在大多数开发环境中已经不用table元素来做网页布局了,取而代之的是div+css,那么为什么不用table元素呢?

用DIV+CSS编写出来的文件k数比用table写出来的要小。
table必须在页面完全加载后才显示,没有加载完毕前,table为一片空白,也就是说,需要页面完毕才显示,而div是逐行显示,不需要页面完全加载完毕,就可以一边加载一边显示。
非表格内容用table来装,不符合标签语义化要求,不利于SEO。
table的嵌套性太多,用DIV代码会比较简洁。

1、当设置display:table;时,table的padding设置会失效。

1 .table {
2         display: table;
3         margin: 5px;
4          1000px;
5         border:1px solid red;
6 
7     }

2、当设置display:table-row;时,margin和padding设置会失效。这里我进行了设置,可以看出是没有效果的。

1 .row {
2         display: table-row;
3         padding:100px;
4         margin:100px;
5     }

3、当设置display:table-cell;时,margin设置会失效。这里我进行了设置,可以看出是没有效果的。

 1 .cell {
 2         display: table-cell;
 3         padding: 10px;
 4         vertical-align: middle;/*定义行内元素垂直对齐*/
 5         height: 300px;
 6         border:1px solid green;
 7 
 8         -webkit-box-sizing: border-box;
 9         -moz-box-sizing: border-box;
10         box-sizing: border-box;
11     }

4、认识了上面的设置的作用和注意点以后,我们可以发现可以通过display:table-cell和vertical-align:middle;来进行垂直居中设置的,也是运用了cell时,vertical-align属性生效作用。

二、要是想要一个表格的布局方式怎么办?

可以用display:table来解决。
display:table系列几乎是和table系的元素相对应的,请看下表:


table (类似<table>)此元素会作为块级表格来显示,表格前后带有换行符。
inline-table (类似<table>)此元素会作为内联表格来显示,表格前后没有换行符。
table-row-group (类似<tbody>)此元素作为一个或多个行的分组来显示。
table-header-group (类似<thead>)此元素作为一个或多个行的分组来显示。
table-footer-group (类似<tfoot>)此元素作为一个或多个行的分组来显示。
table-row (类似<tr>)此元素会作为一个表格行来显示。
table-column-group (类似<colgroup>)此元素会作为一个或多个列分组来显示。
table-column (类似<col>)此元素作为一个表格单元格列来显示。
table-cell (类似<td>或<th>)此元素作为一个表格单元格来显示。
table-caption (类似<caption>)此元素会作为一个表格标题来显示。
 参考:https://blog.csdn.net/Doulvme/article/details/79015264,还有很多案例

免责声明:文章转载自《display 设置为table、tablecell、tablerow》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇小团队开发管理工具:gitlab+redmine+testlink+jenkins[记录]解决vue项目当直接通过url访问中间页时nginx返回404的问题下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

arcpy利用XY创建点

# -*- coding: utf-8 -*-"""Created on Sun Apr 7 15:32:24 2019@author: """# XYTableToPoint.py# Description: Creates a point feature class from input table# import system modules imp...

Visdom 介绍 | 二

用于创建,组织和共享实时丰富数据可视化的灵活工具。支持Python。 概述 概念 设置 用法 API 注意事项 贡献 API 要快速了解visdom的功能,请查看example目录,或阅读以下详细信息。 Visdom Arguments(仅限Python) python visdom客户端有以下几种选择: server:visdom服...

Oracle Namespace 说明

一. 初识Namespace Oracle通过namespace来管理schema object的名字,关于Namespace 的定义,在官网文档上没有找到一个详细的定义,在网上搜到一些相关信息: SchemaObject Namespaces A namespace defines a group of object types, within whic...

Sql高级操作

从Table 表中取出第 m 条到第 n 条的记录:(Not In 版本)SELECTTOP n-m+1*FROMTableWHERE (id NOTIN (SELECTTOP m-1 id FROMTable ))  从TABLE表中取出第m到n条记录 (Exists版本)SELECTTOP n-m+1*FROMTABLEAS a WHERENotEx...

Vue项目中左右布局支持拉伸宽度

<template> <el-row :gutter="10"> <el-col :span="5" v-show="type === '2' && sidebar.opened" > <data-tree :t...

BW:数据源抽取机制 . 沧海

大部分知识源于TBW350和SAP SDN。 对数据源抽取机制的深入探讨 一、什么数据源需要初始化,为什么要进行初始化 有增量机制的数据源就需要初始化,初始化的目的是为了给系统一个时间点,来生成Delta队列。 怎样进行初始化:其实当我们跑I包的时候,Delta队列就建立了,这个和Setup table没有关系 Setup table是怎么回事儿:在LO(...