0

Rails (3.1) アプリを Internet Explorer で表示すると、何らかの理由でページの最後に HTML タグが表示されることがありますが、Chrome や Firefox では表示されません。特に、完全なタグではなく、タグの一部が表示され</hますが、その一部が</htmテキストとして表示されます (ページの下部)。

私のレイアウトテンプレートには、これがあります:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
   <head>
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
     <title><%= title %></title>

     <% if params[:controller] == 'pages' %>
       <%= stylesheet_link_tag "static_pages", "https://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/redmond/jquery-ui.css" %>
     <%  elsif %>
       <%= stylesheet_link_tag "bootstrap", "https://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/redmond/jquery-ui.css" %>  
     <% end %>

     <%= javascript_include_tag "https://ws.sharethis.com/button/buttons.js", "admin.js" %>

     <%= csrf_meta_tag %>

     <script type="text/javascript" charset="utf-8"> 
        //jQuery.noConflict();
        jQuery.extend( jQuery.fn.dataTableExt.oStdClasses, {
                "sSortAsc": "header headerSortDown",
                "sSortDesc": "header headerSortUp",
                "sSortable": "header"
            } );

        jQuery(document).ready(function() {
            jQuery('#datatable').dataTable( {
                    "sDom": "<'row'<'span5'l><'span8'f>r>t<'row'<'span4'i><'span8'p>>",
                    "sPaginationType": "bootstrap"
                     } );
            } );
      </script>

      <%= yield :javascript%>
      <%= yield :script%>

   </head>
   <body>

   </body>
</html>

ビュー用に生成された html ソース コードを見ると、ソースが終了している Chrome/Firefox (または IE のような部分的なコード)</body>ではないことがわかります。</html>

誰かが私が間違っていることを教えてもらえますか? ありがとうございました。

4

1 に答える 1

1

空の Head タグは、(使用している Doctype 'Transitional' の DTD で定義されているように) 必須の子を含まない限り、整形式 (closed ) として認識されません。

タイトルをつけて

 <head>
  <title>A Title</title>
 </head>

これはすべての Doctype で必須だと思います (ただし、それについては引用しないでください)。ただし、ミュート ポイントも - すべての Web ページにタイトルを付ける必要があります。

更新:タイトルが存在すると言いますが、それでも「整形式」の問題のように聞こえます..

1)実行してソースを表示し、すべてのコードをメモ帳/simularにコピーして、それをtest.htmlとして保存します(これにより、( ")などの正しくない文字が強調表示されます..

2) test.html を w3c バリデータ サービス w3c Validator サービスにアップロードします。

それがうまくいくことを願っています

于 2012-05-16T18:12:55.760 に答える