- - PR -
IEのデフォルトのツリー表示を変更する
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2004-09-21 13:45
IEでXMLファイルを表示するとツリー表示されますが、
このときに利用するデフォルトのスタイルシートを 変更することはできないのでしょうか? やりたいことは、 XSLTが指定されいない場合に指定したXSLTを適用させて XMLを表示させたいのです。 BHOでもオリジナルのブラウザを作成する方法でも構いません。 なにかよい知恵をお貸しください。 |
|
投稿日時: 2004-09-21 18:10
XML スタイルシートの適用
の2句で検索 たのしいXML: XMLテキストの書き方 http://www.cityfujisawa.ne.jp/~yanai/xml/classics/step13.html |
|
投稿日時: 2004-09-21 18:40
返信ありがとうございます。
スタイルシートを記述すればいいことはわかっています しかし、そのスタイルシートをXMLファイルを編集せずに適用させたいです。 JavaScriptのページを別に用意して制御するようなことは今回使えません。 現状は、、、 オリジナルのブラウザのC#で作成し、mshtml.HTMLDocument.body.innerHTMLにXslTransformを利用して変換後のデータを記述してました。 この方法では、外部ファイルのCSSファイルの適用などができずに困っています。 |
|
投稿日時: 2004-09-22 00:26
< link rel="stylesheet" type="text/css" href="formate.css">
など CSS へのリンクを含む、空のHTMLページを表示しておいてから body に注入できませんか? http://www.microsoft.com/japan/msdn/academic/Articles/fun/02/ Navigate メソッドは、第一引数に渡した URL の HTML を Web ブラウザコントロールに表示します。Navigate メソッドの構文を次に示します。 =========================== XMLに直接 CSS を適用するのもできます。CSSの効き具合は微妙 --------- R.css p { display:block; color:cyan; } q { display:block; background-color:pink; } ------------------------ R.xml 呼び出し元 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE Z [ <!ELEMENT Z ANY> <!ENTITY R SYSTEM "R66.xml"> ]> <!-- XMLエディタでは検証エラーになる (要素が全然、宣言されてないから) が IE では 開けます。 XInclude はIEでは動かないので 外部エンティティ参照で xmlを吸い込んで、CSS を当てることになる (ENTITYリソルバーはまだよくわからない) このR.xml のENTITY のファイル名を書き換えると CSSを当てる xmlが切り替わる。 --> <?xml-stylesheet type="text/css" href="R.css"?> <Z>&R;</Z> ----------------- R66.xml 呼び出されxml <?xml version="1.0" encoding="UTF-8"?> <R66> <p> jhdudu </p> <q> 資格▲互角 </q> </R66> [ メッセージ編集済み 編集者: MMX 編集日時 2004-09-22 10:52 ] |
|
投稿日時: 2004-09-22 11:50
開くXMLデータには次のデータへの相対パスが設定されています。
画像データへのパスもあります。 XSLTを用いて、パスは<a href>で、画像データは<image>で表示させたいのです。 この場合に、空のページを用いて制御すると、 希望のXSLTを記述することができなくなります。 パスに関しては、JavaScriptでなんとかならないとこはないのですが・・・ |
|
投稿日時: 2004-09-22 13:04
mshtml.HTMLDocumentを利用しているとき、CSSファイルの適用には、
mshtml.HTMLDocument.createStyleSheetというメソッドを使えばいいということがわかりました。 #このメソッドを見逃してました IEを細かく制御する方法をもっと知りたいですが、 XMLとは関係のない内容になりそうなのでこのくらいで失礼します。 ENTITYリソルバーはいろいろ面白いことできそうですね。 今後のために勉強しなければ。 今後ともよろしくお願いします。 |
1