• 締切済み

携帯サイトの<div>タグについて

教えてください。 過去の質問No.1519748(未解決)と同内容になるかと思いまが、携帯サイトで <div style="background-color:#000000"> ここに何か書く </div> を反映させるにはどのような方法があるのでしょか? http://cawa.m-store.jp/i/cgi-bin/index.cgi?uid=NULLGWDOCOMO を参考にソースを解読したのですが、反映されない理由が分かりません。 HTMLだけではなくcgi等も絡んでくる問題なのでしょうか? ちなみに、ドリームウィーバーで作成してFOMA(実機)で閲覧すると反映されていない という状況です。どうかみなさまのお知恵を貸してください。よろしくお願いいたします。

みんなの回答

回答No.6

お答えします。 通常の携帯サイトはHTMLで記述しているので、docomo、au、SoftBankの端末ブラウザは問題なくページ内容を読み込みます。 630m様の言う「style属性」の指定はXHTML+CSS扱いになります。 基本的にauとSoftBankはページの内容を読み取り、自動的に解釈してくれますが、docomo端末だけは、XHTMLモードに切り替える命令をサーバー側でヘッダ情報として吐き出してから読み込ませないといけません。 docomo端末はわざわざ「XHTMLですよ」と教えてあげないとHTMLモードのままページを読み込んでしまうのです。 そのためdocomoでCSSを使う場合には、PHPやhtaccsessなどを使わないといけないので、それなりに環境や技術が必要になってきます。 端末ごとの仕様に振り回されるのが携帯サイトのややこしいところですが、必ず解決策はあるので頑張って下さい。

  • steel_gray
  • ベストアンサー率66% (1052/1578)
回答No.5

webページをブラウザ(含、携帯)で見るとき、 サーバからはHTTPレスポンスヘッダというものが付いてきます。 FOMA端末ではこれが正しくないとxhtmlと認識してくれません。 通常のサーバでは拡張子に合わせたHTTPヘッダを付けてくれるのですが、 ページ内のソースに問題無いようなのにソースコードが表示されたり 実機で反映されないという事はこのhttpヘッダに問題があるのかもしれません。 とりあえず http://sumi.cside.com/test/viewhtml/viewhtml.html こちらのページであなたが作成したページのURLを入れ 「チェック開始」を押してください。あなたのサーバが返す HTTPレスポンスヘッダを確認する事ができます。 DoCoMoの公式サイトでは Content-Type: application/xhtml+xml となっている必要があるそうです。 (私のP901isでは拡張子xml→ Content-Type: text/xmlでも大丈夫でした) もし Content-Type: application/xhtml+xml と、なっていなかった場合はサーバに問題があります。 htaccessが扱えるサーバなら自分で設定する方法もありますが、 そうでなければサーバに問い合わせてください。 htaccessが扱えるサーバなら AddType application/xhtml+xml xhtml と書いた「.htaccess」をサーバに置く事で解決するかもしれません。 なお、PC用の普通のブラウザで見ようとしてもiMode用のXHTMLはエラーになるだけなので シミュレータを使うといいです。 http://www.nttdocomo.co.jp/service/imode/make/content/html/tool2.html ※前述のHTTPレスポンスヘッダはこのツールを使でも確認できます。

630m
質問者

お礼

steel_gray様ご回答ありがとうございます。 下記、チェックの結果の内容です。 HTTP/1.1 200 OK Date: Tue, 19 Sep 2006 00:39:18 GMT Server: Apache/1.3.34 (Unix) Connection: close Transfer-Encoding: chunked Content-Type: text/html; charset=Shift_JIS 0 >Content-Type: application/xhtml+xml >と、なっていなかった場合はサーバに問題があります。 それではサーバーを、教えていただいた設定にしてみます。iMode用のシミュレータもとても参考になりました。いろいろと教えていただき、大変ありがとうございました。

  • altern8
  • ベストアンサー率36% (17/47)
回答No.4

見せていただいたコードでファイルを作成して、サーバーに上げてみました。D902i と SH901iCで再現させてみたら文字の背景が黒で表示されているので問題ないようです。 ファイルの拡張子は.xhtmlになっていますでしょうか?

630m
質問者

補足

ご回答ありがとうございます。 <?xml version="1.0" encoding="Shift_JIS"?> <!DOCTYPE html PUBLIC" -//i-mode group (ja)//DTD XHTML i-XHTML(Locale/Ver.=ja/1.1)1.0//EN"" i-xhtml_4ja_10.dtd"> <html> <head> <title>テストページ</title> </head> <body> <div style="background-color:#000000"> ほげ </div> <p> 普通に何か書くところ </p> </body> </html> 上記ファイルを etc.xhtml というファイル名でアップしてみましたが、だめでした。 そもそもブラウザで表示されず、メモ帳としてソースコードだけが開いてしまいます。 何度もご回答いただいているにも関わらず理解力がなく大変申し訳ございません。

  • steel_gray
  • ベストアンサー率66% (1052/1578)
回答No.3

お使いのサーバにより、xhtml文書となり得る拡張子が違う場合があります。 ファイルの拡張子をxmlにしてみるとか… それでもだめならサーバに確認してください。

630m
質問者

お礼

ご回答ありがとうございます。 拡張子もxmlに変更してみましたがだめでした...。 サーバーサイドの問題も可能性として考えてみます。 ありがとうございました!

  • altern8
  • ベストアンサー率36% (17/47)
回答No.2

僕の認識ではdiv style="background-color:#000000">ほげ</div>は有効ですし、実際に使っています。 コード内でDOCTYPEを宣言しているかどうか。拡張子はxhtmlになっているかどうか教えてください。もちろん確認する端末はxhtml対応機種であることが条件です。 http://cawa.m-store.jp/i/cgi-bin/index.cgi?uid=NULLGWDOCOMO 上記URLのサイトのdivタグは書き方がまずいので有効になってないと思うのですが・・・

630m
質問者

お礼

altern8様 ありがとうございます。 具体的には下記のソースコードとなっております。 <?xml version="1.0" encoding="Shift_JIS"?> <!DOCTYPE html PUBLIC" -//i-mode group (ja)//DTD XHTML i-XHTML(Locale/Ver.=ja/1.1)1.0//EN"" i-xhtml_4ja_10.dtd"> <html> <head> <title>ihtml</title> </head> <body> <div style="background-color:#000000"> ほげ </div> <p> 普通に何か書くところ </p> </body> </html> 確認している端末はFOMA SO902iです。 ズバリ間違いを修正した、正しいソースコードの記述をいただければ大変ありがたいのですが...申し訳ございません。

630m
質問者

補足

ご回答ありがとうございます!只今から会議に入りますので、会議終了後試してみます。

回答No.1

参考URLをご覧ください。 全てのインラインスタイルシートが有効ではないと思います。

参考URL:
http://www.nttdocomo.co.jp/service/imode/make/content/xhtml/chart/index.html
630m
質問者

お礼

早速のご回答ありがとうございます。 http://cawa.m-store.jp/i/cgi-bin/index.cgi?uid=NULLGWDOCOMO はスタイルシートで制御?されているということですね?CSSのファイルがない為、同じタグを使っても反映されないということでしょうか?何卒、ご教授願いいたします。

630m
質問者

補足

調べたとこと、インラインスタイルシートとは直接タグに埋め込むものでした。ありがとうございます。

関連するQ&A