1

私はHAMLをフォローしています

.x-row-tpl
  %tds {{#parent}}{{name}}{{/parent}}
  %td {{#parent}}{{name}}{{/parent}}
  %p {{#parent}}{{name}}{{/parent}}

これは、次のようにHTML(つまり、ブラウザーで取得するもの)にレンダリングされます。

<div class="x-row-tpl">
  <tds>{{#parent}}{{name}}{{/parent}}</tds>
  {{#parent}}{{name}}{{/parent}}
  <p>{{#parent}}{{name}}{{/parent}}</p>
</div>

HAML<td>がレンダリング時にタグをスキップするのはなぜですか?

私はそれをに包もうとしました:erb、それは助けにはなりません。さまざまなタグ名を試しましたが、無効なタグ(など<tds>)でも、を除いてすべて正常に機能してい<td>ます。

4

1 に答える 1

0

あなたの HTML は次の理由で無効です:

  1. タグの名前<tds>は です。これは無効です。である必要があります<td>

  2. タグの<td>唯一の有効な親要素は<tr>.

有効なタグ要素が無効な場所にある場合、ブラウザはタグを自由に削除または移動できます。無効なタグ名が使用されている場合、ブラウザーは自由にやりたいことを実行できます。私の知る限り、ほとんどの最新のブラウザーでは、単に<div>.

最終的な HTML がW3C の HTML Validatorを通過することを常に確認してください。そうしないと、予期しない動作が発生する可能性があります。

于 2012-06-08T13:50:37.400 に答える