使用显示:表格单元格而不包含显示:表格

我正在尝试使用CSS 3创建一个语义正确的HTML5网页。我已经创建了下面的标记,它位于主体元素的根。将display:table cell应用于asidesection元素会使它们按我所希望的方式列。但是,我没有可应用display:table的包含元素。如果所应用的元素不包含在显示:表格中,是否可以使用显示:表格单元格?如果没有,是否有更好的机制来创建包含这些元素的列布局,而不使用浮动

<旁白>
<导航>
<ul>
<李&gt&书信电报;a href=“”>链接1&lt/a&gt&lt/李>
<李&gt&书信电报;a href=“”>链接2&lt/a&gt&lt/李>
&lt/ul>
&lt/导航>
&lt/旁白>
<第节>
内容在这里
&lt/第节>

是的,它是有效的。阅读CSS2规范中关于匿名表对象的17.2.1。更具体地说,这些部分

正在生成缺少的子包装器:

  1. 如果是“表”的子C,或
    “内联表”框不是正确的
    表子对象,然后生成
    围绕C和C的匿名“表行”框
    C的所有连续兄弟姐妹
    不适合吃饭的孩子
  2. 如果一个孩子
    行分组框的C不是a
    “表行”框,然后生成
    围绕C和C的匿名“表行”框
    C的所有连续兄弟姐妹
    不是“表行”框
  3. 如果是C的孩子
    “表行”框不是
    “表格单元格”,然后生成
    C周围的匿名“表单元格”框
    C的所有连续兄弟姐妹
    不是“表格单元格”框

生成丢失的父项:

  1. 对于a中的每个“表格单元格”框C
    连续内部表的顺序
    和“表标题”同级,如果是C
    父项不是“表行”,则
    生成匿名“表行”框
    C左右和所有连续的兄弟姐妹
    是“表格单元格”框

  2. 为了
    a中的每个适当表子项C
    连续正确表序列
    孩子们,如果C不正确,那么
    生成匿名“表”或
    “内联表”框T围绕C和all
    C的连续兄弟姐妹
    适当的餐桌儿童。(如果C的父母
    是“内联”框,则T必须是
    “内联表”框;否则它必须
    是一个“桌子”盒子。)

    • “表行”是
      如果其父对象既不是
      行分组框或“表”或
      “内联表”框
    • “表列”
      如果其父项为
      “表列组”框和
      “表”或“内联表”框
    • 一排
      组框,“表列组”框,
      或“表格标题”框显示错误
      如果其父项既不是“表”框
      也不是“内联表”框

发表评论