CSS: table 是块级元素吗
- 在处理 tiddlywiki 中的表格文字溢出的问题时在网上搜了一下,大多数的处理办法就是 block+overflow,或者使用 table-layout+ 省略文字处理
table {
display: block;
}
block 的问题让我感到很疑惑,我一致以为元素只有 block, inline inline-block 三种情况。于是我搜索了这样一个问题 table 属于哪种类型的元素,网上并没有一致的答案。于是手动写了一个 html 看了下浏览器默认的情况 默认是 display: table
, is table element not block and inline type.
table {
display: table;
border-collapse: separate;
box-sizing: border-box;
text-indent: initial;
border-spacing: 2px;
border-color: gray;
}
tbody {
display: table-row-group;
vertical-align: middle;
border-color: inherit;
}
td {
display: table-cell;
vertical-align: inherit;
}
th {
display: table-cell;
vertical-align: inherit;
font-weight: bold;
text-align: -internal-center;
}
css: display
-
“block”:将元素显示为块级元素,即它在页面中显示为一个块,占据一行的全部宽度,可以设置宽度和高度。
-
“inline”:将元素显示为内联元素,即它在页面中显示为一个行内元素,不会独占一行,只占据它的内容所需的宽度。
-
“inline-block”:将元素显示为内联块级元素,即它在页面中显示为一个行内元素,但可以设置宽度和高度,且会独占一行。
-
“none”:将元素隐藏,不会在页面上显示,但仍然会占据布局空间。
-
“flex”:将元素显示为弹性盒子,使其成为一个弹性容器,可以通过设置其子元素的排列方式来控制布局。
-
“grid”:将元素显示为网格容器,使其成为一个网格布局容器,可以通过设置网格行和列来控制布局。
-
“table”:将元素显示为表格元素,即使不在表格中也会按照表格的布局方式显示。
-
“table-cell”:将元素显示为表格单元格,用于设置表格布局中单元格的样式。