[Message Prev][Message Next][Thread Prev][Thread Next][Message Index][Thread Index]

Re: font :height setting



ども、長です。

横槍ですが、さらに脱線。

このメールは----------------------------------------------
後藤 俊一 <shunichi.goto@xxxxxxxxx> さん( 後 と引用)の
MsgID   : [meadow-users-jp : No.7127]
Subject : Re: font :height setting
Date    : [Wed, 19 Jul 2006 01:55:03 +0900]
-------------------------------------------への返信です-〆
 《件名・引用文は改行・削除・変更してあるかもしれません》
後> 本題とは関係なく。。。

後> On 7/19/06, MIYOSHI Masanori <miyoshi@xxxxxxxxxxx> wrote:
後> > > だとページの目的の箇所が表示されました。
後> >
後> > あれ? IE だと URL がエンコーディングされないのでしょうか?

後> あまり深く考えてなかったけど、URL pathに漢字コードを用いるのはやっぱ
後> 反則なのですかね。パラメータならまだしも。

漢字コードというよりも、URLエンコードでの表現は、どうしても問題になると思います。

普通は同系統のページ間のリンクであれば(UTF-8だとか)固定設定で対応できますが、
異種のベージにURLエンコードしていないリンクがあっても、期待した文字コードでURLエ
ンコードしてリンク先を見てくれるとは期待できないから。
# どういうふうにURLエンコードするかは究極的にはブラウザ依存

なので、domainを跨ぐ(というか別種のページ間)時はエンコード済みの文字列でリンクを
生成すべきだと思います。

# というか天下のGoogleでも、「Searchである日本語で検索」->「結果内のnewsのリンク
# でnewsへ移動」とかすると文字コードで化けてました。
## パラメタに文字コード指定がちゃんと入ってないとデフォルトの文字コードの解釈
## の違いがあるようでした search(SJIS) -> news(UTF-8)

URLエンコードはURLで使用できない文字をバイトから変換するだけに近いですから...
サーバが生バイト列(しかも短い)からコードを特定してくれたりとかはないんですよね。
# もしかしたらそういう実装のサーバもあるかもしれませんが...

後> tracのページはutf-8でエンコードしたURLを作ってるのですが、
後> 手元のIE6の動きを見る限りは、path部を無理に(latin1あたりで)デコードして
後> 使おうとしてるようですね。
後> ページのプロパティを見るとURLが変態文字列になってる。

# 今回問題の箇所
これはたぶんIE6の問題(癖)で、fragment identifier? をページ内文字コードでURLエン
コードしたもので管理していないために発生しているようです。
# 生バイト列か?
なので、いったんページを表示できたら、メニューのリンクはちゃんと辿れます。

この部分は本来のURLではないので、解釈と管理はブラウザしだいでいいのかもしれませんが、
これでは不便ですね。

後> utf-8で(%xxでエンコードして)urlを作るのはwikipediaなども同様。
後> そこでもIE同じような妙な挙動をしているのかなぁ。

ページ名はUTF-8をURLエンコードですが、fragment identifier? は専用のリンクを生成しています。

ex.Wikipedia japanese : ニュートリノ#性質
http://ja.wikipedia.org/wiki/%E3%83%8B%E3%83%A5%E3%83%BC%E3%83%88%E3%83%AA%E3%83%8E#.E6.80.A7.E8.B3.AA

なので大丈夫なように対策してあるようですね。

以上です。

--
Tsuyoshi CHO
  mailto:tsuyoshi_cho@xxxxxxxxxxx