[10] HTML の img
要素および object
要素および input
要素の usemap
属性は、
画像写像を要素に関連付けます。
[11] 仕様書:
HTML 4 仕様書には値は
とか書かれていますが、
無理です。
実際には、 map
要素の name
属性と一致しなければならないname
値を素片識別子とした URI 参照とします。
[13] この属性は省略可能です。 省略するとクライアント側画像写像と結び付けられていないことになります。
[15] XHTML m12n では属性値の型が URI 参照から IDREF
改められました。
(ただし、 >>5 によれば修正することを検討中のようです。)
[1] XHTML1.1のusemap属性の仕様変更 http://www.faireal.net/articles/4/25/#d20219
[2] URI と IDREF ですから、 とりあえず区別は出来ますけど、非互換変更は嬉しくないですねぇ。 同じ名前空間で非互換変更はねぇ。
[7] >>2 やっぱり区別できないや。相対 URI で foo
みたいな場合。
もっともほとんどの場合は必ず素片識別子付きの
URI 参照になるでしょうから、
現実的には問題ないのですが。
[16] ほとんどの場合は
と書いていましたが、必ず
です。
といいますのは、 usemap
の参照先は
map
と定義されているからです。仮に map
を文書要素としたところで、それは文書全体ではなく文書要素に過ぎないので、
それを参照するためにはやはり素片識別子が必要です。
ですから、
という制約の範囲内で素片識別子なしの
URI で済ませられる可能性はありません。map
を参照
ただし、独自拡張で例えば CERN 方式の鯖側画像写像定義ファイルを参照できるとか、 そういうのがある場合はこの限りではありません (が実際にはないと思います)。
[9]
>>2 しまった! :
が ID
に含まれていたら区別できない! と思いきや、 XHTML m12n を
XML名前空間無しで使うのは不可能ですから、無問題なのでした。
[4] XHTML 1.1 の 1.0 との差異リストにも載ってないし、気づいてない人も多そう。
[22] HTML Working Group Voyager Issue Tracking System - Modularization-abstractions/8502 http://hades.mn.aptest.com/cgi-bin/voyager-issues/Modularization-abstractions?id=8502 (名無しさん)
[24]
>>22 によれば、一度はURIに修正することに決めたものの、
ずっと放置した挙句、やっぱりIDREF
にしておいて、
XHTML 2.0ではまたURIに戻すそうですwwwwwwwww
[48] 確かにその後、 XHTML 2.0 の最初の作業原案では URI になっています。
ただし値は id
属性値と一致しなければならないとの矛盾した記述もありました。
[25] [XHTMLMod] usemap="" attribute should be URI, not IDREF from Anne van Kesteren on 2006-08-04 (www-html-editor@w3.org from July to September 2006) http://lists.w3.org/Archives/Public/www-html-editor/2006JulSep/0036
早く直せよねぇwww (名無しさん 2006-08-06 05:16:43 +00:00)
[26] XHTML m12n の DTD 内には次のような説明があります。
<!-- 'usemap' points to the 'id' attribute of a <map> element, which must be in the same document; support for external document maps was not widely supported in HTML and is eliminated in XHTML. It is considered an error for the element pointed to by a usemap IDREF to occur in anything but a <map> element. -->
実装されていないからといって、構文を変えてしまったら、 実装が零になってしまうわけですが・・・。 (名無しさん)
[27] >>25 Re: [XHTMLMod] usemap="" attribute should be URI, not IDREF (PR#9641) from Anne van Kesteren on 2006-10-17 (www-html-editor@w3.org from October to December 2006) http://lists.w3.org/Archives/Public/www-html-editor/2006OctDec/0005 (名無しさん 2006-10-17 23:26:11 +00:00)
[31]
Hixie's Natural Log: Fixing the "usemap" attribute (2007-03-06 22:48:06 +09:00
版) http://ln.hixie.ch/?start=1172653243&count=1
W3C HTML WG は2000年 (勧告前) の時点で既に問題を承知していながら大した問題ではないと無視したり、 問題を指摘されて修正すると回答しながら放置したりを繰り返している。 (名無しさん)
[32] >>31 www-html-editor はずっと無視されてたのかと思ったら、個人宛 & w3c-html-wg に返信していたのか・・・。 (名無しさん)
[39]
これは HTML 4 の
The value of usemap must match the value of the name attribute of the associated MAP element.
という説明から usemap
は IDREF
にできると XHTML m12n
の中の人が誤解してしまったのでしょうかね? (その真上に uri
と書いてあるのに。)
あるいは、 HTML 4 のこの部分の中の人も XHTML m12n
の中の人も同じように勘違いしていたのでしょうかね?
[41] XHTML2 Working Group Teleconference -- 24 Oct 2008 ( 版) http://www.w3.org/2008/10/24-xhtml-minutes.html#item08
SP: long ago, we said to anne van kestren that we would change IDREF on imagemaps when re-issued 1.1 ... should make sure we should do that
SM: where 1.2 or 2?
RM: 1.2
SM: override def of module for m12n - not update m12n because then break all other languages
[46] >>41 この Anne との話ってのは >>27 ですよね、2006年の。。。 なんていうか・・・ WHATWG があってよかった。。。
[47] XHTML™ 1.2 ( 版) http://www.w3.org/MarkUp/2008/ED-xhtml12-20081223/
[17] usemap
属性が object
要素に指定されている場合は、その object
は画像とみなされます。
UA は、その object
との利用者対話を単なるクライアント側画像写像だけで実装して構いません。
音声ブラウザやロボットは object
を処理せずに対話できます。
UA は物体を取出したり (処理したり) さえしなくても構いません。
著者はすべての UA が物体を取出したり処理したりすることを期待するべきではありません。
HTML 4
[18] ということは、 object
自体もその内容もレンダリングせずに、
代わりに結び付けられた画像写像の map
だけをレンダリングしておいてもよいということでしょうか。
input
要素での使用[42] HTML 4 では usemap
属性は input
要素でも定義されていました。
[21] この属性は input
要素でも使えます。
説明がまったく無いのでなんともいえないのですが、おそらくは
type
が image
の時だけ使えるものだと思われます。
しかし、 image
は提出ボタンであり、
それそのものが鯖側画像写像として機能します。
usemap
属性が指定されていると何が起こるのか規定がないのは困ったことです。
[43] HTML 4 仕様書の規定部分にはこの属性の存在以外に何ら説明がないのですが、 実は将来の予定 (参考) にこんな記述がありました。
Another possible extension would be to add the
usemap
attribute toINPUT
for use as client-side image map when "type
=image
". TheAREA
element corresponding to the location clicked would contribute the value to be passed to the server. To avoid the need to modify server scripts, it may be appropriate to extendAREA
to provide x and y values for use with theINPUT
element. HTML4 B.6.2
[44] 既に属性が存在している本文の規定とは矛盾するのですが、将来的に input
要素でもクライアント側画像写像を使えるように拡張する案があったようです。
(だとしても ismap
属性があるのは謎ですがね。)
[40]
HTML 5 でも当初画像写像に関する定義の一部として
input
要素の usemap
属性に言及がありましたが
(r985 で追加)、すぐに r997 で削除されました。
[33]
HTML5 IRC logs: freenode / #whatwg / 20070808 (2007-08-08 20:51:29 +09:00
版) http://krijnhoetmer.nl/irc-logs/whatwg/20070808#l-108
[07:19] <Hixie> in other news, <input type=image usemap="#..."> only seems to work in opera and firefox, not in safari and IE
[07:25] <Hixie> according to some old data I have, 17% of usemap="" attributes on <img> elements have the value "#Map"
[07:27] <Hixie> roughly 0.008% of <input type=image> elements have usemap="" attributes
[07:28] <Hixie> (it's less common than <input price="">, <input heigth="">, <input typ="">, <input enable="">, <input 1px="">, etc)
[35]
HTML5 IRC logs: freenode / #whatwg / 20070809 (2007-08-10 09:50:30 +09:00
版) http://krijnhoetmer.nl/irc-logs/whatwg/20070809#l-120
[36]
<input usemap> - Anne’s Weblog (2007-08-10 18:30:58 +09:00
版) http://annevankesteren.nl/2007/08/input-usemap
[37]
Re: <input usemap> (was: Re: [html5] HTMLMapElement.images) (Ian Hickson <ian@...> 著, 2007-08-10 03:00:40 +09:00
版) http://permalink.gmane.org/gmane.org.w3c.whatwg.discuss/11648
[45] 削除されたのは実際 Firefox と Opera にしか実装されておらず (実装されていただけでも驚きですが)、 利用例を見ても不必要なものや間違っていて却って有害なものばかりなため、 仕様に含める (利用者エージェントが対応する) 意義がないと判断されたためです。 削除された際には一部反対する意見もありましたが、説得力のある主張はありませんでした。
[14] usemap
属性と異なる文書にある map
要素を使うのに対応している WWWブラウザは多くありません。
IDREF
による指定にも対応しているブラウザも少数あります。
(>>5 をみてください。)
[8] 素片識別子に #
をつけない間違いはクライアント側画像マップができたころからあったみたいです。
てことは当時の実装はそういうエラー処理をしていたんですか。
一方で当時の実装はちゃんと URI
として外部参照にも対応していたものがあったという話もあります。
[28]
Bug 109445 – Referencing a client-side image map declared with id attribute doesn't work (2007-02-10 14:21:53 +09:00
版) https://bugzilla.mozilla.org/show_bug.cgi?id=109445
(名無しさん)
[29]
WinIE 6 も Firefox 1.5 も、
百分率符号化は理解しません。 %
は %
という文字として解釈します。
(as specced in Web Applications 1.0.)
(名無しさん)
[30]
Firefox 1.5 は、 id
との一致には大文字と小文字を区別しますが、
name
との一致には区別しません。
WinIE 6 はどちらの属性とも区別しません。 (名無しさん)
[19] 簡単な画像写像の例 HTML 4、改
<P><IMG src="navbar1.png" usemap="#MAP1" alt="navigation bar">
[34]
Mares Avanti Quattro Fins - Mares Adjustable Scuba Fins (2007-08-09 08:11:10 +09:00
版) http://shop.divebooty.com/78.html
<Input type="image" Src="https://shop.divebooty.com/images/search.gif" UseMap="#searchmap" border="0" valign="bottom">
(名無しさん)
[23]
HTML 4 DTD の注釈 (参考) には
USEMAP points to a MAP element which may be in this document or an external document, although the latter is not widely supported
(usemap
はこの文書または外部文書の map
要素を指します。ただし後者はあまり広く実装されていません。) と書かれています。
[38]
クライアントサイド イメージマップ - Weblog (2007-08-14 21:00:00 +09:00
版) http://ryus.s21.xrea.com/w/item/942
[50] XHTML Modularization 1.1 Second Edition Disposition of Comments ( 版) http://www.w3.org/MarkUp/2009/xhtml-modularization-2e-doc-20090930.html#ssec4
[3] Make image maps work in shadow trees · whatwg/html@4cf3a82 ( 版) https://github.com/whatwg/html/commit/4cf3a825211a69791a2cdbd472ce13e7addb98fe
[20] Remove "compatibility caseless" matching (domenic著, ) https://github.com/whatwg/html/commit/6acdb2122298d2bb7bb839c0a61b4e1f9b0f9bc9
[51] Fix parsing hash-name reference to return null if it finds nothing (zcorpan著, ) https://github.com/whatwg/html/commit/e5fa765023f2b60520dd0435981a7a4bebd4d3ed
[52] API Deprecations and Removals in Chrome 57 | Web | Google Developers () https://developers.google.com/web/updates/2017/02/chrome-57-deprecations?utm_source=feed&utm_medium=
[53] Deprecations and Removals in Chrome 58 | Web | Google Developers ( ()) https://developers.google.com/web/updates/2017/03/chrome-58-deprecations
[54] XHTML1.1のusemap属性の仕様変更 () http://deztec.jp/x/10/faireal/d20219.xml