[Web制作メモ]Dreamweaverテンプレート更新時の入れ子バグ(未解決)

2011年7月13日

テンプレート更新時に、特定のファイルの
body部分に再びDOCTYPE宣言から以下のソースが現れ、
まるで入れ子のような表示になってしまうというバグです。
修正はできたのですが、また出てこないか気になるので、メモを残しておきます。

元々DreamweaverMXで作ったファイルなのですが、
今はDreamweaver8で作業したときにこの現象が現れてます。

テンプレート更新時に以下のエラー。hogehogeのところが当該のファイルになります。

There is an error at line 110, column 186(absolute position 5512)of”c:\Document and Setting~/hogehoge.html”:instanceBeginタグが編集可能領域内にあります。

で、ファイルを開いてみると、このようになっています。

<!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" xml:lang="ja" lang="ja" dir="ltr">
<!-- InstanceBegin template="/Templates/secandari.dwt" codeOutsideHTMLIsLocked="false" -->
<head>~</head>
<body~
<table width="500" border="0" cellpadding="10" cellspacing="1" bgcolor="#333333">
 <tr>
   <td bgcolor="#FFFFFF"><p align="left">
      <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
      <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja" dir="ltr">
   <!-- InstanceBegin template="/Templates/secandari.dwt" codeOutsideHTMLIsLocked="false" -->
   <head>~

ちなみに

<!-- InstanceBegin template="/Templates/secandari.dwt" codeOutsideHTMLIsLocked="false" -->

というタグは、テンプレートからのファイル作成時に編集可能領域のところに自動的に付加されるのなので、
特におかしい記述ではないです。secandari.dwtはテンプレート名になります。

html、head、bodyタグと順調に来るのだが、
突然tdタグの中にDOCTYPE宣言が現れて、また最初から記述やり直しという。

人様のページなので、本物はお見せできないのですが、
自分のサイトで表すと、こんな感じです。見事に入れ子。

このファイルしばらく前から同じような挙動が繰り返し現れてるのですが、
バグ部分を削除しても、ちょっとだけ場所が変わって現れてたりしました。
決まってbody部分の上の方ですね。

今日、別ファイルを元に作り直したら、ひとまずエラーはでなくなりました。

他に200くらい同じようなページがあるのですが、
エラーでるのって、いつもこのファイルだけなんですよねぇ(ーー;
根本的な理由は探しだせませんでした。