少し前から、着うた作りにハマッていたわけで、必然的に自宅サーバからダウンロードする事が多くなる。しかし、IISのプロパティで「ディレクトの参照」を ONにした時のディレクトリの一覧が…どうも気に入らない。(>_<)
「日付、時間、サイズ、ファイル名」と並ぶわけだけど、携帯で見たときの横幅はそんなに無いから折り返してしまう。それに、欲しいのはファイル名だけだったりする。
いろいろと調整してみたけど、Windows 2000 Server に入っている、IIS 5.0 (Internet Information Services) では、ディレクトリの出力方法を変更する手が無いみたい。
インターネットをウロウロしていたら、ASP を利用してファイル名一覧をブラウザに出力する方法が載っていた。これを応用すれば、携帯でもファイル名だけで表示できるんじゃないか?
早速、試してみた。
パソコン上のブラウザで見る分には、全く問題ない。もともと、ASP.NETとかで開発していたから、プログラムを変更するのも苦にならないしね〜。
しかし、携帯から見ると状況は一変してしまった。だいたい…だ、TABLEが表示されない…STYLEシートも使えない…どうやら無視されている様子。
それならば…と、色々調べてみた。以下、その健忘録とまとめ。p(^^)q
まず、前提条件として、DoCoMo の i-mode だけの話です。
しかも、僕の頭の中で理解している範囲なので、全体を網羅しているわけではありません。開発をされる方は、この文章を鵜呑みにしないで下さいね。m(__)m
----------------------------------------
まず、DoCoMo の iモード用にホームページを作るには、いくつかの手法があるようです。
1.もっともオーソドックスに HTML だけで記述する方法。
『コンパクトHTML』 CHTMLとも言うらしいです。
まず、この方法では、スタイルシート(CSS)が使えません。じゃあ、どうやって色とか文字サイズを指定するかと言うと、「物理要素・属性」を使うらしいです。物理要素とか言うと難しいですけど、普通に HTMLのタグ属性の事のようです。
要するに、style="" が使えないということですね。
表現が制限される反面、movaなどの古い機種でも表示できるらしいです。
この場合の、拡張子は html で大丈夫のようです。
2.CHTMLが旧規格だとすると、現在の規格は「XHTML 1.0 トランジッショナル」になります。(現在から未来への規格は「XHTML モバイル・プロファイル 1.0」になるらしいですが、905iシリーズの現状では、DoCoMo はダメダメらしいです。)
こちらは、拡張子が xthml となります。
拡張子を変えると、いきなりスタイルシートが使えるようになり、タグ埋め込みの style="" は大丈夫だし、アンカー属性だけはヘッダにも書けるようになります。
出来ないと書いてあった、cssファイルの外部参照も出来てしまいました。ナゼ?
3.問題は拡張子。html と xhtml では動的なページは作れない。だいたい、IIS 5.0 の動的ページは拡張子が asp だし…。
ならば、「拡張子 asp のままで xhtml の機能を実現するにはどうする?」と言う事になるが、幸いにして、これは難しくない様子。
(方法1)
.htaccess に "AddType application/xhtml+xml .html" を指定すれば、拡張子が htmlであっても、xhtmlの機能が使える。IIS には .htaccess は無いので、このまま使うことは出来ないけど、ファイルの種類プロパティで、コンテンツの種類を application/xhtml+xml に、拡張子を .asp にしてみたけどダメでした。
したがって、この方法は却下。
(方法2)
ならば .asp ファイルの中にコンテンツタイプを埋め込む方法はどうだ?…と言う事で試行錯誤してみた。
結論から言うと、次の一行を ASP のコートに入れることで、拡張子が .asp であっても xhtml のコンテンツとして認識するようである。
<%Response.ContentType = "application/xhtml+xml"%>
次の方法ではダメみたい。
<%@ContentType="application/xhtml+xml"%>
後は、つかえる CSS と使えない CSS がどの程度になるのか、調べながら作っていくしかないかな〜。
もしありましたら…お願いします!
aspに関してさっぱりわからなくて…
変な投稿ですみません…。