CSS“display:table column”应该如何工作?
考虑到下面的HTML和CSS,我在我的浏览器Chrome和IE中看不到最新的内容。所有内容都会压缩到0x0 px。为什么?CSS“display:table column”应该如何工作?,css,tablelayout,css-tables,Css,Tablelayout,Css Tables,考虑到下面的HTML和CSS,我在我的浏览器Chrome和IE中看不到最新的内容。所有内容都会压缩到0x0 px。为什么? <!DOCTYPE html> <html> <head> <style type="text/css"> section { display: table; height: 100%; background-color: grey; } #colLeft { display: tab
<!DOCTYPE html>
<html>
<head>
<style type="text/css">
section { display: table; height: 100%; background-color: grey; }
#colLeft { display: table-column; height: 100%; background-color: green; }
#colRight { display: table-column; height: 100%; background-color: red; }
#row1 { display: table-row; height: 100%; }
#row2 { display: table-row; height: 100%; }
#row3 { display: table-row; height: 100%; }
#cell1 { display: table-cell; height: 100%; }
#cell2 { display: table-cell; height: 100%; }
#cell3 { display: table-cell; height: 100%; }
</style>
</head>
<body>
<section>
<div id="colLeft">
<div id="row1">
<div id="cell1">
AAA
</div>
</div>
<div id="row2">
<div id="cell2">
BBB
</div>
</div>
</div>
<div id="colRight">
<div id="row3">
<div id="cell3">
CCC
</div>
</div>
</div>
</section>
</body>
</html>
表列显示类型意味着它的行为类似于HTML中的标记,即一个不可见元素,其宽度*控制封闭表中相应物理列的宽度 有关CSS表模型的更多信息,请参见
*还有一些其他属性,如边框、背景。CSS表格模型基于HTML表格模型 表格分为多行,每行包含一个或多个单元格。单元格是行的子元素,而不是列的子元素 显示:表列不提供制作专栏布局的机制,例如具有多个专栏的报纸页面,其中内容可以从一个专栏流向下一个专栏 相反,“表列”仅设置应用于表行中相应单元格的属性。例如,可以描述每行中第一个单元格的背景色为绿色 表本身的结构始终与HTML中的结构相同 在HTML中,注意tds在trs内,而不是在COL内:
<table ..>
<col .. />
<col .. />
<tr ..>
<td ..></td>
<td ..></td>
</tr>
<tr ..>
<td ..></td>
<td ..></td>
</tr>
</table>
第1行第一个单元格的内容
第1行第二个单元格的内容
第2行第一个单元格的内容
第2行第二个单元格的内容
如果col元素具有逻辑结构,那么如何使用CSS规则display:table column;,哪一个只有表象结构?根据显示器上的规格,它应该像col元素一样工作。但我看不出这有多有用…@TestSubject528491,因为这样你就可以设置[呈现]表的列背景、列宽等。但实际上,它在为标记本身指定默认样式规则方面,或在不同的基于XML的标记语言中指定等效标记方面,最有用。@chharvey:HTML的col是一个逻辑元素,只包含表示样式。你不能在里面放一栏信息,这是一个常见的误解。表数据总是在行中。显示:表格列;将逻辑元素(通常是div)转换为col。它会使分配给该元素的其他样式字段应用于列的表示概念。结果是一个不显示的逻辑元素,其内容(如果有)将被忽略;它的唯一作用是将样式应用于关联表示的列。请看我的模板答案。我自己也没有尝试过,但我看到了一些建议,其中包括针对IE6和IE7的javascript解决方案。当javascript运行时,它会将页面转换为旧的HTML表标记。解决方案适用于IE8+、Firefox、Chrome、iPad和Android。如果您需要灵活的表格结构,并且支持上面列出的更现代的浏览器,那么这是避免表格布局的一个好方法!这有什么问题?@xgqfrms:一定是其他css规则覆盖了颜色。可能是应用于单元格内某个元素的规则。例如,如果文本在内,则在某个地方有更具体的规则设置颜色。尝试如果这是可行的,那么这就是问题所在。但是,不要养成过度使用的习惯!重要的在看到这项工作之后,最好删除它,并找出一个更具体的选择器来优先。谷歌css更具体的选择器,或参见