【TIPS】出力されたHTMLコードに余分なインデント・改行が入った時の対処法

CMS Designerを「こんな風に使ってます」等の活用事例や、自分なりのTIPS等のご報告をお待ちしています。
返信
sasai
アクティブユーザー
記事: 12
登録日時: 2005年1月16日(日) 23:51
お住まい: 岡山市
連絡を取る:

【TIPS】出力されたHTMLコードに余分なインデント・改行が入った時の対処法

投稿記事 by sasai » 2005年10月08日(土) 22:30

デザイン定義のxslファイルでコードを記述する時に、
インデントや改行を入れなくても、
出力結果(phpファイル)に忠実に反映されず、
勝手にインデント・改行が挿入されることがあります。

どのような規則でインデント・改行が挿入されるかは、
サーバ側のXSLTプロセッサ次第で、まちまちのようです。

ですが、インデントや改行が勝手に入ってしまうと、ページのレイアウトに、
影響が出る場合があると思います。
(例:TABLEで組んだHTMLページなど)

そこで、強制的にインデント・改行をOFFにするTIPSです。

xsl:output のパラメータで、indent=("yes|no") というものがあります。
これを、no に指定する。
つまり、デザイン定義ファイルの、

コード: 全て選択

<xsl:output method="html" encoding="EUC-JP" omit-xml-declaration="yes" />
を、

コード: 全て選択

<xsl:output method="html" encoding="EUC-JP" omit-xml-declaration="yes" indent="no" />
とすると、出力コードから改行が取り除かれます。

※インデントや改行に影響されるコードを書くべきではないというツッコミは、
とりあえず横に置いておいて。 :wink:


参考ページ
XMLをIEで表示(基礎編) xsl:output
http://www.cityfujisawa.ne.jp/~yanai/xm ... tep22.html

webmaster
Site Admin
記事: 1447
登録日時: 2004年12月10日(金) 10:09

Re: 【TIPS】出力されたHTMLコードに余分なインデント・改行が入った時の対処法

投稿記事 by webmaster » 2005年10月08日(土) 23:25

 webmasterです。
 素晴らしい情報をありがとうございます。

 これは使えそうです。同じような症状に悩んでいる方がいらっしゃいましたら、
ぜひお試し下さい。

 機会を見て、マニュアルの方にも記載させて頂こうと思います。

返信