input
type
url
(HTML)[4]
HTML の input
要素の type
属性を
url
とすると、
IRI を指定するフォーム制御子となります。
[5] 仕様書:
input
element
<IW:WF2:"#extensions">[6]
RFC 3987 の IRI (生成規則
IRI
) です。
従って、相対IRI参照は認められません。
WF2 2.4
[3] IDN を使用して構いません。 利用者エージェントは IDNA 符号化せずに、 元々入力された通りのドメイン名で提出するべきです。 WF2 2.4
[9]
利用者エージェントは、
利用者が相対IRI参照やその他の IRI
としては不完全な値を入力することを認めても構いません。
しかし、 isTypeMismatch
の判定やフォーム提出に用いる値は絶対IRIでなければなりません。
WF2 2.4
[10]
利用者エージェントは、 IRI
生成規則に一致する任意の文字列を受け付けしなければなりません。
文字の並びが論理順であることなどの IRI
の仕様上の非構文的制約を利用者エージェントが検査する必要はありません。
WF2 2.4
[13] 未対応利用者エージェントとの互換性
month
に対応していない利用者エージェントは、
text
(単一行文章入力制御子)
として扱います。従って、利用者は任意の文字列を入力することができます。
ですから、著者は、対応している利用者エージェントが一般的になるまでの間、 フォーム制御子の近くで記入方法を説明しておくのがよいでしょう。 フォーム処理エージェントは記入された値が適当か検査するべきです (これは安全性の観点からも重要です)。
[10]
この input
type
は Web Forms 2.0 で導入されました。
[19] 当初は uri
という名前で提案されていましたが、
CSS の url()
関数をはじめ、
Web では URL という名前が伝統的によく用いられてきたことから、
Web Forms 2.0 でも url
という名前に改称されました。
Refresh:
欄 url
引数 (HTTP)[2] 飛び先の URL を指定します。省略した場合は当該実体の URI と仮定します。つまり再読み込みとなります。
詳しくは Refersh:
欄の項を参照。
[1] WebTV のリファレンスにそれっぽく登場しますが、実在が強く疑われます。 <http://web.archive.org/web/20000523161756/developer.webtv.net/authoring/html/meta.html>
説明を読むとどうも、 Refresh: を http-equiv で使った時の
content 属性の値の内部にある URL
パラメーターのことを指しているように思われます。
url()
関数 (CSS)[14]
CSS の関数の中で、 url
だけは字句解析の段階で特別扱いされています。
関数名は、他の関数は ident
として定義されているので \
による escape が可能ですが、
url
では使えません。
[15] >>14 を Opera 9 は正しく実装していますが、 Firefox 1.5 と WinIE 6 は escape されていてもおkです。
[16]
>>14-15 あ、でも、 URI
にならないかわりに、
FUNCTION
, ... にはなるのか・・・。
字句 URI
と CSS の構文定義にでてくる
<uri>
の関係が実は明記されていないから、
FUNCTION
, ... だけど <uri>
である、という解釈も可能?
The format of a URI value is 'url(' followed by ...
だからやっぱだめ?
[17] Firefox 2.0's implementation:
ident
with value
url
(case-insensitive,
escape
is allowed,
\
followed by a newline
is ignored), immediately followed by a
(
, it is not a URI
.
Stop these steps./*
,*/
is found.*/
is found, /*
,
set invalid as true. Don't consume these
characters yet.EOF
,
the URI
is invalid. Stop the entire steps."
,"
to u, with any escape
decoded and any
\
followed by a newline
ignored./*
,)
,
go to the step named as CP.)
(including )
following \
but excluding )
after "
or '
but before "
or '
matching it).EOF
,
the URI
is invalid. Stop the entire steps.'
,)
,"
or '
,
set invalid as true.)
,
go to the previous step in the overall steps (i.e. CP).\
,escape
and append it to u, or skip whitespace
if it immediately follows the \
.EOF
,
the URI
is invalid. Stop the steps.[18] Opera 9.00 seems to parse URI
as specified in CSS 2.1.
font-size
property
specified as 12px
.However, it post-process URI
values as:
#
]] and following characters.url
という関数名は、(
の間に零個以上の注釈を挿入できます。普通の文字列を使うことができます。
URI
ではなく、鍵語
none
として扱われます。普通の文字列の前後に零個以上の空白 (改行を含みます。) を挿入できます。 それらは無視されます。
普通の文字列の直後の注釈のような文字列は、
普通の文字列の一部とみなされます。
普通の文字列の途中に適当に空白を挿入できます。
\
には複雑な規則があります:普通の文字列では
\
は使えますが、普通の文字列では
\
はほぼ使えますが、値の一部とみなされます。*/
がなければ、
入力の最後まで注釈の一部とみなされます。)
がなければ、
入力の最後まで関数の一部とみなされます。"
や '
や
(
や )
を含む場合: 複雑です。[22]
Re: [css3-namespace] url() syntax (fantasai 著, 2006-10-01 08:54:25 +09:00
版) <http://lists.w3.org/Archives/Public/www-style/2006Oct/0006.html>
(名無しさん)
[23] [css3-namespace] url() syntax (Anne van Kesteren 著, 版) <http://lists.w3.org/Archives/Public/www-style/2008Feb/0059.html> (名無しさん)
[24] HTML5 Revision Tracker ( 版) <http://html5.org/tools/web-apps-tracker?from=5064&to=5065>
[25] IRC logs: freenode / #whatwg / 20100502 ( 版) <http://krijnhoetmer.nl/irc-logs/whatwg/20100502#l-105>
[26] Basic Data Types and Interfaces – SVG 1.1 (Second Edition) ( ( 版)) <http://www.w3.org/TR/2011/REC-SVG11-20110816/types.html#DataTypeFuncIRI>