Элементы HTML не отображаются в браузере, если они не отформатированы? - PullRequest
0 голосов
/ 07 января 2012

У меня странная проблема с HTML, созданным с помощью преобразования XSLT:

После преобразования, если я открою результаты, опубликованные на сервере, части содержимого не отображаются в браузере.

Однако, если я открою файл в редакторе и просто сделаю для него команду "pretty-print" (отступ и форматирование кода), а затем снова открою его в браузере, все отобразится простонормально (!)

Кто-нибудь знает, что вызывает это?Почему форматирование должно иметь значение, если html-код точно такой же?

Вот код перед довольно-печатной печатью:

<!DOCTYPE html
  PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="sv-se" xml:lang="sv-se">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<meta name="copyright" content="(C) Copyright 2005"/>
<meta name="DC.rights.owner" content="(C) Copyright 2005"/>
<meta name="DC.Type" content="concept"/>
<meta name="DC.Title" content="Principschema"/>
<meta name="description" content="Principschema för ettrörssystem Uponor Push 12/ElPush 12 Ventildel Rumsgivare med kapillärrör Cirkulationspump Avluftningsventil Tillopp till golvvärmeslinga Retur från golvvärmeslinga Retur till ..."/>
<meta name="DC.Relation" scheme="URI" content="../../../golvvarme/topics/Push/c_Push12ElPush12TekniskaData.html"/>
<meta name="DC.Format" content="XHTML"/>
<meta name="DC.Identifier" content="Push12Principschema"/>
<link rel="stylesheet" type="text/css" href="../../../commonltr.css"/>
<link rel="stylesheet" type="text/css" href="../../../assets/webhelp_topic.css"/><link rel="stylesheet" type="text/css" href="../../../assets/expertinfo.css"/><link rel="stylesheet" type="text/css" href="assets/webhelp_topic.css"/><link rel="stylesheet" type="text/css" href="assets/expertinfo.css"/>
<link rel="stylesheet" type="text/css" href="../../../expertinfo.css"/>
<title>Principschema</title>
<script type="text/javascript" src="../../../assets/jquery-1.3.2.js"> </script><script type="text/javascript" src="../../../assets/jquery-ui-1.8.2.custom.min.js"> </script><script src="../../../assets/svgweb/src/svg.js" data-path="../../../assets/svgweb/src"/><script type="text/javascript" src="../../../assets/frames_redirect.js"> </script><script type="text/javascript"><!--
    var prefix = "index.html";
    var ratingFile = "";
    redirectToToc(window.location.search);
    function highlightSearchTerm(){
        if(parent.termsToHighlight != null){
        // highlight each term in the content view  
          for(i = 0 ; i < parent.termsToHighlight.length ; i++){        
              $('*', window.parent.contentwin.document).highlight(parent.termsToHighlight[i]);
          }
        }
    }
//--></script><script type="text/javascript" src="../../../assets/expertinfo.js"> </script></head>
<body class="fullpage" onload="highlightSearchTerm()" id="Push12Principschema"><a name="Push12Principschema"><!-- --></a>
<table class="nav"><tbody><tr><td><div class="navheader"><span class="frames" onclick="redirectFrames(location.pathname)"/></div></td><td width="50%"><a class="navheader_parent_path" href="../../../reuse/c_TekniskaData.html" title="Tekniska data">Tekniska data</a> / <a class="navheader_parent_path" href="../../../golvvarme/topics/Push/c_Push12ElPush12TekniskaData.html" title="Push 12 och ElPush 12">Push 12 och ElPush 12</a></td></tr></tbody></table>


 <h1 class="title topictitle1">Principschema</h1>


 <div class="body conbody">
  <div class="fig fignone" id="Push12Principschema__fig_ddfc5101-4e11-49a9-85ca-1c4570fda22c"><a name="Push12Principschema__fig_ddfc5101-4e11-49a9-85ca-1c4570fda22c"><!-- --></a><p class="figcap">Bild 1. Principschema för ettrörssystem Uponor Push 12/ElPush 12</p>

   <a name="Push12Principschema__image_538dabf9-da61-46a1-99c4-863a880aed46"><!-- --></a><span class="ie"><object classid="image/svg+xml" class="image" id="Push12Principschema__image_538dabf9-da61-46a1-99c4-863a880aed46_ie" src="/handbok/images/Push12_5039/Ettrors.svg"/></span><!--TEST TO SEPARATE OBJECTS...--><span class="nonIe"><object type="image/svg+xml" class="image" id="Push12Principschema__image_538dabf9-da61-46a1-99c4-863a880aed46" data="/handbok/images/Push12_5039/Ettrors.svg"/></span>
   <a name="Push12Principschema__ol_33e21827-c7be-4500-a5bc-ac59eac79d4d"><!-- --></a><ol class="ol" id="Push12Principschema__ol_33e21827-c7be-4500-a5bc-ac59eac79d4d">
    <li class="li">Ventildel</li>

    <li class="li">Rumsgivare med kapillärrör</li>

    <li class="li">Cirkulationspump</li>

    <li class="li">Avluftningsventil</li>

    <li class="li">Tillopp till golvvärmeslinga</li>

    <li class="li">Retur från golvvärmeslinga</li>

    <li class="li">Retur till primärvärmekälla</li>

    <li class="li">Tillopp från primärvärmekälla</li>

   </ol>

  </div>

  <div class="fig fignone" id="Push12Principschema__fig_a07ba386-317a-4888-ba0e-c46d3d31d028"><a name="Push12Principschema__fig_a07ba386-317a-4888-ba0e-c46d3d31d028"><!-- --></a><p class="figcap">Bild 2. Principschema för tvårörssystem Uponor Push 12/ElPush 12</p>

   <a name="Push12Principschema__image_b218b001-37b1-46b5-8eba-40ea3d14c61e"><!-- --></a><span class="ie"><object classid="image/svg+xml" class="image" id="Push12Principschema__image_b218b001-37b1-46b5-8eba-40ea3d14c61e_ie" src="/handbok/images/Push12_5039/Tvarors_Elpush12rev.svg"/></span><!--TEST TO SEPARATE OBJECTS...--><span class="nonIe"><object type="image/svg+xml" class="image" id="Push12Principschema__image_b218b001-37b1-46b5-8eba-40ea3d14c61e" data="/handbok/images/Push12_5039/Tvarors_Elpush12rev.svg"/></span>
   <a name="Push12Principschema__ol_63497606-c191-4337-8ae9-243a34ac12f0"><!-- --></a><ol class="ol" id="Push12Principschema__ol_63497606-c191-4337-8ae9-243a34ac12f0">
    <li class="li">Injusteringsventil för reglering av tryckfall i sekundärkretsen</li>

    <li class="li">Reglerdel (termostatreglage)</li>

    <li class="li">Temperaturjusteringsventil</li>

    <li class="li">Propp R3/8" eller anslutning för kapillärrör</li>

    <li class="li">Termostat för automatik till elpatron</li>

    <li class="li">Säkerhetsventil</li>

   </ol>

  </div>

 </div>

<div class="related-links"/>
<div class="navfooter"><script type="text/javascript"><!--         
    function expand(){
        parent.tocwin.expandToTopic(window.location.href, this.getAttribute('href'));
    }
    var aArray = document.getElementsByTagName('a');
    var i;
    for (i = 0; i< aArray.length; i++){
      aArray[i].onclick = expand;
    }
//--></script></div>
<div style="font-size: smaller"><p class="svgInfo"><a href="#">Klicka här om vissa bilder inte visas.</a></p><div class="svgText" style="font-style: italic;">SVG-bilder används för att bilder ska kunna förstoras utan kvalitetsförlust. Om du har problem att se dessa bilder beror det antagligen på att du har en äldre
                    version av Internet Explorer. Du kan då lösa det genom något av följande alternativ:
                         <ul><li>Använd en annan webbläsare (Chrome, Firefox eller Safari).</li><li>Uppgradera till Internet Explorer 9 eller senare.</li><li>Om du har Internet Explorer 8, installera Flash 10 eller senare så kommer SVG-bilderna att visas som Flashobjekt istället.</li></ul></div></div></body>
</html>

А вот тот же код после симпатичной-печати, который отлично работает:

    <html lang="sv-se" xml:lang="sv-se" xmlns=
"http://www.w3.org/1999/xhtml">
<head>
  <meta name="generator" content=
  "HTML Tidy for Mac OS X (vers 31 October 2006 - Apple Inc. build 15.6), see www.w3.org" />
  <meta http-equiv="Content-Type" content=
  "text/html; charset=utf-8" />
  <meta name="copyright" content="(C) Copyright 2005" />
  <meta name="DC.rights.owner" content="(C) Copyright 2005" />
  <meta name="DC.Type" content="concept" />
  <meta name="DC.Title" content="Principschema" />
  <meta name="description" content=
  "Principschema för ettrörssystem Uponor Push 12/ElPush 12 Ventildel Rumsgivare med kapillärrör Cirkulationspump Avluftningsventil Tillopp till golvvärmeslinga Retur från golvvärmeslinga Retur till ..." />
  <meta name="DC.Relation" scheme="URI" content=
  "../../../golvvarme/topics/Push/c_Push12ElPush12TekniskaData.html" />
  <meta name="DC.Format" content="XHTML" />
  <meta name="DC.Identifier" content="Push12Principschema" />
  <link rel="stylesheet" type="text/css" href=
  "../../../commonltr.css" />
  <link rel="stylesheet" type="text/css" href=
  "../../../assets/webhelp_topic.css" />
  <link rel="stylesheet" type="text/css" href=
  "../../../assets/expertinfo.css" />
  <link rel="stylesheet" type="text/css" href=
  "assets/webhelp_topic.css" />
  <link rel="stylesheet" type="text/css" href=
  "assets/expertinfo.css" />
  <link rel="stylesheet" type="text/css" href=
  "../../../expertinfo.css" />

  <title>Principschema</title>
  <script type="text/javascript" src=
  "../../../assets/jquery-1.3.2.js">
</script>
  <script type="text/javascript" src=
  "../../../assets/jquery-ui-1.8.2.custom.min.js">
</script>
  <script src="../../../assets/svgweb/src/svg.js" data-path=
  "../../../assets/svgweb/src" type="text/javascript">
</script>
  <script type="text/javascript" src=
  "../../../assets/frames_redirect.js">
</script>
  <script type="text/javascript">
//<![CDATA[
  <!--
    var prefix = "index.html";
    var ratingFile = "";
    redirectToToc(window.location.search);
    function highlightSearchTerm(){
        if(parent.termsToHighlight != null){
        // highlight each term in the content view  
          for(i = 0 ; i < parent.termsToHighlight.length ; i++){        
              $('*', window.parent.contentwin.document).highlight(parent.termsToHighlight[i]);
          }
        }
    }
  //-->
  //]]>
  </script>
  <script type="text/javascript" src=
  "../../../assets/expertinfo.js">
</script>
</head>

<body class="fullpage" onload="highlightSearchTerm()" id=
"Push12Principschema">
  <a name="Push12Principschema"><!-- --></a>

  <table class="nav">
    <tbody>
      <tr>
        <td>
          <div class="navheader"></div>
        </td>

        <td width="50%"><a class="navheader_parent_path" href=
        "../../../reuse/c_TekniskaData.html" title=
        "Tekniska data">Tekniska data</a> / <a class=
        "navheader_parent_path" href=
        "../../../golvvarme/topics/Push/c_Push12ElPush12TekniskaData.html"
        title="Push 12 och ElPush 12">Push 12 och ElPush
        12</a></td>
      </tr>
    </tbody>
  </table>

  <h1 class="title topictitle1">Principschema</h1>

  <div class="body conbody">
    <div class="fig fignone" id=
    "Push12Principschema__fig_ddfc5101-4e11-49a9-85ca-1c4570fda22c">
    <a name=
    "Push12Principschema__fig_ddfc5101-4e11-49a9-85ca-1c4570fda22c">
      <!-- --></a>

      <p class="figcap">Bild 1. Principschema för ettrörssystem
      Uponor Push 12/ElPush 12</p><a name=
      "Push12Principschema__image_538dabf9-da61-46a1-99c4-863a880aed46"><!-- --></a><span class="ie"><object classid="image/svg+xml"
      class="image" id=
      "Push12Principschema__image_538dabf9-da61-46a1-99c4-863a880aed46_ie"
      src="/handbok/images/Push12_5039/Ettrors.svg">
        </object></span>
        <!--TEST TO SEPARATE OBJECTS...--><span class=
        "nonIe"><object type="image/svg+xml" class="image" id=
        "Push12Principschema__image_538dabf9-da61-46a1-99c4-863a880aed46"
      data="/handbok/images/Push12_5039/Ettrors.svg">
        </object></span> <a name=
        "Push12Principschema__ol_33e21827-c7be-4500-a5bc-ac59eac79d4d">
      <!-- --></a>

      <ol class="ol" id=
      "Push12Principschema__ol_33e21827-c7be-4500-a5bc-ac59eac79d4d">
      <li class="li">Ventildel</li>

        <li class="li">Rumsgivare med kapillärrör</li>

        <li class="li">Cirkulationspump</li>

        <li class="li">Avluftningsventil</li>

        <li class="li">Tillopp till golvvärmeslinga</li>

        <li class="li">Retur från golvvärmeslinga</li>

        <li class="li">Retur till primärvärmekälla</li>

        <li class="li">Tillopp från primärvärmekälla</li>
      </ol>
    </div>

    <div class="fig fignone" id=
    "Push12Principschema__fig_a07ba386-317a-4888-ba0e-c46d3d31d028">
    <a name=
    "Push12Principschema__fig_a07ba386-317a-4888-ba0e-c46d3d31d028">
      <!-- --></a>

      <p class="figcap">Bild 2. Principschema för tvårörssystem
      Uponor Push 12/ElPush 12</p><a name=
      "Push12Principschema__image_b218b001-37b1-46b5-8eba-40ea3d14c61e"><!-- --></a><span class="ie"><object classid="image/svg+xml"
      class="image" id=
      "Push12Principschema__image_b218b001-37b1-46b5-8eba-40ea3d14c61e_ie"
      src="/handbok/images/Push12_5039/Tvarors_Elpush12rev.svg">
        </object></span>
        <!--TEST TO SEPARATE OBJECTS...--><span class=
        "nonIe"><object type="image/svg+xml" class="image" id=
        "Push12Principschema__image_b218b001-37b1-46b5-8eba-40ea3d14c61e"
      data="/handbok/images/Push12_5039/Tvarors_Elpush12rev.svg">
        </object></span> <a name=
        "Push12Principschema__ol_63497606-c191-4337-8ae9-243a34ac12f0">
      <!-- --></a>

      <ol class="ol" id=
      "Push12Principschema__ol_63497606-c191-4337-8ae9-243a34ac12f0">
      <li class="li">Injusteringsventil för reglering av tryckfall
      i sekundärkretsen</li>

        <li class="li">Reglerdel (termostatreglage)</li>

        <li class="li">Temperaturjusteringsventil</li>

        <li class="li">Propp R3/8" eller anslutning för
        kapillärrör</li>

        <li class="li">Termostat för automatik till elpatron</li>

        <li class="li">Säkerhetsventil</li>
      </ol>
    </div>
  </div>

  <div class="related-links"></div>

  <div class="navfooter">
    <script type="text/javascript">
//<![CDATA[
    <!--         
    function expand(){
        parent.tocwin.expandToTopic(window.location.href, this.getAttribute('href'));
    }
    var aArray = document.getElementsByTagName('a');
    var i;
    for (i = 0; i< aArray.length; i++){
      aArray[i].onclick = expand;
    }
    //-->
    //]]>
    </script>
  </div>

  <div style="font-size: smaller">
    <p class="svgInfo"><a href="#">Klicka här om vissa bilder inte
    visas.</a></p>

    <div class="svgText" style="font-style: italic;">
      SVG-bilder används för att bilder ska kunna förstoras utan
      kvalitetsförlust. Om du har problem att se dessa bilder beror
      det antagligen på att du har en äldre version av Internet
      Explorer. Du kan då lösa det genom något av följande
      alternativ:

      <ul>
        <li>Använd en annan webbläsare (Chrome, Firefox eller
        Safari).</li>

        <li>Uppgradera till Internet Explorer 9 eller senare.</li>

        <li>Om du har Internet Explorer 8, installera Flash 10
        eller senare så kommer SVG-bilderna att visas som
        Flashobjekt istället.</li>
      </ul>
    </div>
  </div>
</body>
</html>

РЕДАКТИРОВАТЬ:

Я понял, что из-за проблем с очисткой кэша (см. комментарий ниже) я не видел правильную версию.Поэтому условные комментарии, которые я использовал, чтобы показать разные версии объектов SVG для разных браузеров, вообще не работали.Что работает, когда я красиво печатаю страницу с объектами без условных комментариев.Но затем я использую jQuery, чтобы скрыть объекты, которые не должны использоваться для определенного браузера, вместо использования условных комментариев.

Я обновил код HTML выше.На этот раз я использовал HTML Tidy, чтобы красиво напечатать код, но результат остается тем же, независимо от того, использую ли я это или просто pretty-print в редакторе, о котором я говорил, так что на самом деле HTML Tidy исправляет любые ошибки (не сообщает об ошибках, толькопредупреждения, а затем я установил его в отступ в опциях).

Ответы [ 2 ]

0 голосов
/ 10 января 2012

Я получил ответ в другом месте: проблема заключалась в том, что было несколько пустых тегов без закрывающего тега (или, скорее, закрытого в одном и том же теге). Использование их по какой-то причине испортило. Решением было включить в эти теги пустой текстовый элемент перед преобразованием (тег сценария и тег объекта), а затем закрыть его конечным тегом. Это позаботилось об этом.

0 голосов
/ 07 января 2012

Скорее всего, что-то сломается в процессе публикации, так что версия на сервере и, следовательно, то, что получают браузеры, отличается от данных, которые вы создали.Это может зависеть от разных кодировок символов в вашей среде разработки и на сервере, от ошибок преобразования при передаче данных, от различий между соглашениями о разрыве строк или от неправильного разбиения длинных строк программным обеспечением передачи.Если вы разместите URL версии, которая не работает, конкретный характер проблемы, вероятно, будет идентифицирован.

...