MozillaZine.jp フォーラム https://forums.mozillazine.jp/ |
|
anchor部のURIエンコード文字列の処理についての質問 https://forums.mozillazine.jp/viewtopic.php?f=2&t=12390 |
ページ 1 / 1 |
作成者: | M.J.D. [ 2011年12月19日(月) 02:57 ] |
記事の件名: | anchor部のURIエンコード文字列の処理についての質問 |
下記のようなanchorに対してのリンクを作成した場合の動作についての質問です. コード: <a id="local%20system" /> 同じページ中で,下記のようなリンクを作成すると, コード: <a href="#local%20system"> Firefox8.0.1でのリンク先が下記のようになり,勝手にURIエンコード文字列がデコードされリンク先に飛べなくなってしまいます. コード: (省略)#local(半角スペース)system
anchor部にわざわざ「%20」を使用する必要があるかは兎も角として,このような動作はHTMLの解釈として正しいんでしょうか. なお,Firefox以外については,Chrome,IE,w3mで動作を確認していますが,勝手にURIエンコード文字列をデコードすることはありませんでしたので,Firefox特有の問題のようです. |
作成者: | Sakuraya [ 2011年12月19日(月) 20:00 ] |
記事の件名: | Re: anchor部のURIエンコード文字列の処理についての質問 |
Mozilla/5.0 (X11; Linux i686; rv:11.0a1) Gecko/20111218 Firefox/11.0a1で再現しました。 <a href="#local%20system">SomeAnchor</a>としたときは<a id="local system"/>としなければいけませんね。 ですが、HTML 4.01 Specificationの6.2 SGML basic typesを読むとそもそもid属性に半角スペースと%は使えません。 使用可能な文字でidを付けていない場合はUAによって解釈が変わってもしかたがないと思います。 |
作成者: | M.J.D. [ 2011年12月20日(火) 00:47 ] |
記事の件名: | Re: anchor部のURIエンコード文字列の処理についての質問 |
> Sakurayaさん 早速の回答,どうもありがとうございます. idについては,確かにその通りでしたので,これについては記載ミスでした. という訳で,こちらはHTMLのソースを修正ですね(アンスコに置き換えかな). 以下,蛇足です. 機能としては同等のa要素のname属性(廃止予定)の場合は,定義上はCDATA,ということで,name属性に変えてみましたが,なんと,この時はちゃんとリンクされました. というわけで勝手にデコードしても文法的に正しいHTMLには問題ないようです. (とは言え,勝手にデコードされるというのも,あまり気持の良い話ではないですが). |
ページ 1 / 1 | All times are UTC + 9 hours |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |