Html 哈姆失去了我的<;td>;标签

Html 哈姆失去了我的<;td>;标签,html,ruby,haml,handlebars.js,Html,Ruby,Haml,Handlebars.js,我有以下几点 .x-row-tpl %tds {{#parent}}{{name}}{{/parent}} %td {{#parent}}{{name}}{{/parent}} %p {{#parent}}{{name}}{{/parent}} 它被呈现为HTML(我指的是我在浏览器中获得的内容),如下所示: {{{#父}}{{name}{{{/parent}} {{{#父}}{{name}{{{/parent}} {{{#父}}{{name}{{{/parent}} 为什么H

我有以下几点

.x-row-tpl
  %tds {{#parent}}{{name}}{{/parent}}
  %td {{#parent}}{{name}}{{/parent}}
  %p {{#parent}}{{name}}{{/parent}}
它被呈现为HTML(我指的是我在浏览器中获得的内容),如下所示:


{{{#父}}{{name}{{{/parent}}
{{{#父}}{{name}{{{/parent}}
{{{#父}}{{name}{{{/parent}}

为什么HAML在渲染时跳过标记


我甚至试着把它包装成
:erb
,但它没有用。尝试了不同的标记名,甚至无效的标记(如
),一切正常,除了

您的HTML无效,原因如下:

  • 您的标记名为
    ,无效。它应该是

  • 标记唯一有效的父元素是

  • 当有效标记元素位于无效位置时,浏览器可以自由删除或移动标记。当使用无效的标记名时,浏览器可以自由地做任何它想做的事情。在大多数现代浏览器中,它被简单地视为


    始终确保您的最终HTML通过了测试。否则,您可能会出现意外行为。

    HTML是否实际有效?换言之,运输署是否属于TR?IIRC你不能在TR中包装TD,所以可能只是浏览器在做它应该做的。“在浏览器中”是“查看源”还是查看DOM树?不,它不在里面,因为它是一个把手模板。似乎你是对的,它被浏览器删除了,只是用
    curl
    测试了它-它就是这个标签。“在浏览器中”是指“在firebug中”,顺便说一句,很有趣,为什么Firefox删除了但留下了无效的标签?
    <div class="x-row-tpl">
      <tds>{{#parent}}{{name}}{{/parent}}</tds>
      {{#parent}}{{name}}{{/parent}}
      <p>{{#parent}}{{name}}{{/parent}}</p>
    </div>