[107] 
[[HTML]]
の
[DFN[[CODE[align]]]]
[[属性]]は、
[[揃え]]の方法を指定するものでした。

* 仕様書

[REFS[
- [5] [CITE@en-GB-x-hixie[HTML Standard]] ([TIME[2015-11-17 17:58:32 +09:00]] 版) <https://html.spec.whatwg.org/#dom-p-align>
- [3] [CITE@en-GB-x-hixie[HTML Standard]] ([TIME[2015-05-06 10:42:35 +09:00]] 版) <https://html.spec.whatwg.org/#dom-embed-align>
]REFS]

* 文章系ブロック水準要素 align 属性 (HTML, XHTML 1)

[46] [[HTML]] の[[ブロック水準要素]]の多くには、
(現在では'''非推奨'''の) [DFN[[CODE(HTMLa)[align]] 属性]]が定義されています。

文章を直接内容に持つ系統の要素の [CODE(HTMLa)[align]]
属性は、文章の揃え位置を指定します。

[47] 適用対象要素型:
- [CODE(HTMLe)[[[div]]]] [SRC[HTML 4]]
- [CODE(HTMLe)[[[p]]]] [SRC[HTML 2.x, HTML 4]]
- [CODE(HTMLe)[[[h[VAR[n]]]]]] [SRC[HTML 2.x, HTML 4]]
- [CODE(HTMLe)[[[ol]]]] [SRC[HTML 2.x]]
- [CODE(HTMLe)[[[ul]]]] [SRC[HTML 2.x]]
- [CODE(HTMLe)[[[dir]]]] [SRC[HTML 2.x]]
- [CODE(HTMLe)[[[menu]]]] [SRC[HTML 2.x]]
- [CODE(HTMLe)[[[li]]]] [SRC[HTML 2.x]]
- [CODE(HTMLe)[[[hr]]]] [SRC[HTML 2.x]] >>71
- [CODE(HTMLe)[[[blockquote]]]] [SRC[HTML 2.x]]
- [CODE(HTMLe)[[[address]]]] [SRC[HTML 2.x]]

[48] 仕様書:
- [[HTML 2.x]]: [[RFC 2070]]
4.2.2. List of entities, elements, and attributes
- [[SI 4281]]:1998 <http://www.qsm.co.il/Hebrew/si4281e.htm>
-- [CSECTION[9.1 Alignment]]
- [[HTML 4]]: 15.1.2 Alignment
<IW:HTML4:"present/graphics.html#alignment">

[[#comment]]


** 代替

[51] この属性は'''非推奨'''です [SRC[HTML 4]]。
[[スタイル・シート]]を使うことが良いとされています。

[52] [[CSS]] の場合、 [CODE(CSS)[[[text-align]]]]
特性が使えます。

[[#comment]]


** 属性値

[49] この属性は[[列挙型]]です。

,属性値	,説明	,出典
,[CODE(HTML)[[[left]]]]	,左揃え	,[HTML 4]
,[CODE(HTML)[[[center]]]]	,中央揃え	,[HTML 4]
,[CODE(HTML)[[[right]]]]	,右揃え	,[HTML 4]
,[CODE(HTML)[[[justify]]]]	,両端揃え	,[HTML 4]

[81]
この属性は省略可能です。
省略時の既定値は[[基底文方向]]依存で、左から右なら [CODE(HTML)[left]],
右から左なら [CODE(HTML)[right]] です
([[DTD]] 的には既定値なしです) [SRC[HTML 4 15.1.2, SI 4281:1998 9.1]]。

[82] [CODE(HTML)[[[justify]]]] の場合、
最後の[[行]]の位置は[[要素]]の[[基底方向性]]によります
[SRC[SI 4281:1998 9.1]]。

[[#comment]]


** 例

[50] 見出しを[RUBYB[画布] [キャンバス]]の中央に寄せる [SRC[HTML 4 15.1.2]]
[PRE(HTML)[
<H1 align="center"> How to Carve Wood </H1>
]PRE]

[CODE(HTMLa)[align]] 属性は非推奨で、[[スタイル・シート]]を使うことが推奨されています。
[[CSS]] では [SAMP(CSS)[[CODE(HTMLe)[h1]] { text-align: center}]]
と指定して同じ効果が得られます。

[37] 段落を画布の右で揃える例 [SRC[HTML 4 15.1.2、改]]
[PRE(HTML)[
<P class="mypar" align="right">...Lots of paragraph text...
]PRE]

[CODE(HTMLa)[align]] 属性は非推奨で、[[スタイル・シート]]を使うことが推奨されています。
[[CSS]] では [SAMP(CSS)[[CODE(HTMLe)[p]].mypar {text-align: center}]]
と指定して同じ効果が得られます。

[53] 段落列を [CODE(HTMLe)[div]] でまとめ、
右端で文字を揃える例 [SRC[HTML 4 15.1.2]]
[PRE(HTML)[
<DIV align="right">
 <P>...text in first paragraph...
 <P>...text in second paragraph...
 <P>...text in third paragraph...
</DIV>
]PRE]

[CODE(HTMLa)[align]] 属性は非推奨で、[[スタイル・シート]]を使うことが推奨されています。
[[CSS]] では [SAMP(CSS)[[CODE(HTMLe)[div]] {text-align: center}]]
と指定して同じ効果が得られます (CSS では [CODE(HTMLe)[div]]
要素への指定が子要素である [CODE(HTMLe)[p]]
に[[継承]]されます)。

[[#comment]]


** 他との関係

[54] '''非推奨'''の [CODE(HTMLe)[[[center]]]] 要素は、
[CODE(HTMLe)[[[div]]]] 要素で [CODE(HTMLa)[align]]
属性を [CODE(HTML)[[[center]]]] と指定したものと等価です [SRC[HTML 4]]。

[63] [CODE(HTMLe)[[[iframe]]]] 要素や
[CODE(HTMLe)[[[input]]]] 要素の [CODE(HTMLa)[align]]
属性の定義は HTML 4 仕様書 [SRC[HTML 4 16.5, 17.4]]
ではこの種の [CODE(HTMLa)[align]] を指していますが、
意味と DTD の記述から考えると、 >>38
と同じ種類とするのが正しいと考えられます。

[[#comment]]


** メモ

[93]
[[XHTML m12n]] の[[抽象モジュール]][[定義]]は 1.0 から 2007年の 1.1 WD までずっと typo があります。誰も気づかないということはないと思うのですが。。。
([[名無しさん]])

[[#comment]]


* table 要素 align 属性 (HTML, XHTML 1)

[9] [[HTML]] の [CODE(HTMLe)[[[table]]]] 要素の
[DFN[[CODE(HTMLa)[align]] 属性]]は、文書に対する[[表]]の位置を指定します。

[10] 仕様書:
- [[HTML 4]]
-- <IW:HTML4:"struct/tables.html#adef-align-TABLE">
-- Float an object <IW:HTML4:"present/graphics.html#idx-alignment-1">
- [WEBTV] <http://web.archive.org/web/20001031103540/developer.webtv.net/authoring/html/table.html#1056866>

[77]

- [[厳密DTD]]
<IW:HTML4:"sgml/dtd.html#TAlign">
-- [[移行用DTD]]
<IW:HTML4:"sgml/loosedtd.html#TAlign">

([[名無しさん]] [sage])

[78]
HTML 4 DTD の[[注釈]] (参考) には
[Q[table position relative to window]]
と書かれています。
([[名無しさん]] [sage])

[[#comment]]


** スタイル・シート代替

[13] この属性は HTML 4 で'''非推奨'''とされています。
代わりにスタイル・シートで指定できます。

[14]
たとえば、 [[CSS]] では 
[SAMP(CSS)[[CODE(HTMLe)[table]] {[[margin-left]]: [[auto]]; [[margin-right]]: auto}]]
と指定すれば [CODE(HTML)[center]] を実現できます。

[[#comment]]


** 属性値

[11] この属性は[[列挙型]]です。

,属性値	,説明	,出典
,[CODE(HTML)[[[bleedleft]]]]	,“bleed” over (余白を超えて) 左浮き	,[WEBTV]
,[CODE(HTML)[[[bleedright]]]]	,“bleed” over 右浮き	,[WEBTV]
,[CODE(HTML)[[[center]]]]	,中央寄せ	,"[HTML 4], [WEBTV]"
,[CODE(HTML)[[[left]]]]	,左寄せ	,"[HTML 4], [WEBTV]"
,[CODE(HTML)[[[right]]]]	,右寄せ	,"[HTML 4], [WEBTV]"

[12] HTML 4 仕様書には既定値は書かれていません。
[WEBTV] では、既定値は [CODE(HTML)[left]] です。

[20] 仕様上の [[SGML宣言]]の如何にかかわらず、ほとんどの 
[[WWWブラウザ]]は[[属性名]]の省略に対応していません。

[22] この属性は省略可能です。

[[#comment]]


** 他との関係

[33] この属性は表のこまの [CODE(HTMLa)[align]] 属性に影響し得ます。
詳しくは [CODE(SGML)[%[[cellhalign]]]]
の説明をみてください。

[[#comment]]


** メモ

[[#comment]]


* 表構成要素系要素 align 属性 (HTML, XHTML 1)

[15] [[HTML]] の要素型 [CODE(HTMLe)[[[tbody]]]], [CODE(HTMLe)[[[thead]]]],
[CODE(HTMLe)[[[tfoot]]]], [CODE(HTMLe)[[[colgroup]]]], [CODE(HTMLe)[[[col]]]],
[CODE(HTMLe)[[[tr]]]], [CODE(HTMLe)[[[th]]]], [CODE(HTMLe)[[[td]]]]
で定義されている [DFN[[CODE(HTMLa)[align]] 属性]]は、
[[こま]]内のデータの揃え位置を指定します。

[73]
仕様書:
- [[HTML 4]]
-- [CODE(HTMLa)[align]] 属性 <IW:HTML4:"struct/tables.html#adef-align-TD">
-- [CITE[Inheritance of alignment specifications]] 
<IW:HTML4:"struct/tables.html#alignment-inheritance">
-- [CITE[HTML 4 Changes]]
<IW:HTML4:"appendix/changes.html#h-A.1.1.7">

[[#comment]]


** スタイル・シート代替

[16] この属性は HTML 4 では'''非推奨'''とされていませんが、
[[スタイル・シート]]で指定する方が望ましいと考えられます。

[17] たとえば、 [[CSS]] では [CODE(CSS)[[[text-align]]]]
[[特性]]で (属性値もほとんどそのまま) 指定できます。

[[#comment]]


** 属性値

[19] この属性は[[列挙型]]です。

:[CODE(HTML)[[[left]]]]:左流しデータ、左揃え文。
:[CODE(HTML)[[[center]]]]:中央データ、中央揃え文。
:[CODE(HTML)[[[right]]]]:右流しデータ、右揃え文。
:[CODE(HTML)[[[justify]]]]:両端揃え文。
:[CODE(HTML)[[[char]]]]:特定の文字で文を揃える。
UA 未対応時の振舞いは未規定 [SRC[HTML 4.01 11.3.2, A.1.1.7]]。

[21] ほとんどの [[WWWブラウザ]]は[[属性名]]の省略に対応していません。

[23] この属性は省略可能です。 [[DTD]] 上の既定値はありません。

HTML 4 仕様書本文によれば、データこまでは [CODE(HTML)[left]],
見出しこまでは [CODE(HTML)[center]] が既定値です。
とかいいながら別の節に継承規則があって、それでも得られないときの既定値は
UA 依存です。ともかく継承規則については [CODE(SGML)[%[[cellhalign]]]]
の説明をみてください。

[34] その継承規則のところでは、どこにも陽に指定がないときの最終決定は
UA 依存の値によるとされていますが、単に常に [CODE(HTML)[left]]
というような既定値ではなく、[[現在文方向]]によって決めろと書いてあります。
言っていることがばらばらですねぇ。
もちろん、 >>23 は間違いで >>34 が意図だとは思います。

[35] また、 [CODE(HTML)[justify]] に対応していない UA
は現在文方向を使って決めるべきだとの指示もあります
(対応しなくても良いとはどこにも書いてない気がしますが)。

[[#comment]]


** 他との関係

[18] HTML 4 の [[DTD]] では、この属性は属性集合 [CODE(SGML)[%[[cellhalign]]]]
の一員です。

[31]
[CODE(HTML)[char]] の時の揃え文字は [CODE(HTMLa)[[[char]]]] 属性で指定します。
こま内の揃える実際の位置は [CODE(HTMLa)[[[charoff]]]] 属性で指定します。

[[#comment]]


** 実装

[36] ほとんどの視覚 WWW ブラウザは [CODE(HTML)[left]] と
[CODE(HTML)[center]] と [CODE(HTML)[right]]、
せいぜい [CODE(HTML)[justify]] にしか対応していません。

[[#comment]]


** メモ

[[#comment]]


* caption 要素・legend 要素 align 属性 (HTML, XHTML 1)

[24] [[HTML]] の [CODE(HTMLe)[[[caption]]]] 要素や
[CODE(HTMLe)[[[fieldset]]]] 要素の 
[DFN[[CODE(HTMLa)[align]] 属性]]は、題名を表や欄集合に対してどの位置に置くかを指定します。

仕様書:
- [2] [[HTML 4]]
-- [CODE(HTMLe)[caption]] 要素 [CODE(HTMLa)[align]] 属性
<IW:HTML4:"struct/tables.html#adef-align-CAPTION">
-- [CODE(HTMLe)[legend]] 要素 [CODE(HTMLa)[align]] 属性
<IW:HTML4:"interact/forms.html#adef-align-LEGEND">
- [1] [[WebTV]]
-- [CODE(HTMLe)[caption]] 要素 [CODE(HTMLa)[align]] 属性
<http://web.archive.org/web/20000601024759/http://developer.webtv.net/authoring/html/caption.html#1030773>

[79]

- [[HTML 4]]
-- [[厳密DTD]]
<IW:HTML4:"sgml/dtd.html#CAlign">
-- [[移行用DTD]]
<IW:HTML4:"sgml/loosedtd.html#CAlign">

([[名無しさん]] [sage])

[[#comment]]


** スタイル・シート代替

[25] この属性は'''非推奨'''です [SRC[HTML 4]]。
代わりに[[スタイル・シート]]で指定するべきです。

[26] [[CSS]] では、 [CODE(CSS)[[[caption-side]]]]
[[特性]]があります。表ではこの特性が [CODE(HTMLa)[align]] 属性の代わりに使えます。

[[#comment]]


** 属性値

[27] この属性は[[列挙型]]です。

,属性値	,説明	,出典 ([CODE(HTMLe)[caption]])	,出典 ([CODE(HTMLe)[legend]])
,[CODE(HTML)[[[bottom]]]]	,下	,"[HTML 3.2], [HTML4], [XHTML1], [WebTV]"	,[HTML 4]
,[CODE(HTML)[[[center]]]]	,上に中央寄せ	,[WebTV]
,[CODE(HTML)[[[left]]]]	,左	,"[HTML4], [XHTML1]"	,[HTML 4]
,[CODE(HTML)[left]]	,左側にあわせる	,[WebTV]
,[CODE(HTML)[[[right]]]]	,右	,"[HTML4], [XHTML1]"	,[HTML 4]
,[CODE(HTML)[right]]	,右側にあわせる	,[WebTV]
,[CODE(HTML)[[[top]]]]	,上	,"[HTML 3.2], [HTML4], [XHTML1], [WebTV]"	,[HTML 4]

WebTV は HTML 4 と違う意味で使っているようです [SRC[WebTV]]。

[29] この属性値は省略可能です。
HTML 4 の DTD 上は既定値はありません。
HTML 4 仕様書本文によれば、 [CODE(HTML)[top]] が既定値です
[SRC[HTML 4 [CODE(HTMLe)[caption]], 17.10]]。
WebTV では、 [CODE(HTML)[center]] が既定値です [SRC[WebTV]]。

[75]
HTML 4 DTD の[[注釈]] (参考) には
[CODE(HTMLe)[legend]] 要素では
[Q[relative to fieldset]] と説明があります。

([[名無しさん]] [sage])

[76]
HTML 4 DTD では [CODE(HTMLe)[legend]] 要素の [CODE(HTMLa)[align]] 属性の型は
[CODE(SGML)[%[[LAlign]]]] です。 (定義は [CODE(HTMLe)@en[[[caption]]]] [[要素]]のものと同じです。)
- [[HTML 4]]
-- [[厳密DTD]]
<IW:HTML4:"sgml/dtd.html#LAlign">
-- [[移行用DTD]]
<IW:HTML4:"sgml/loosedtd.html#LAlign">

([[名無しさん]] [sage])

[80]
HTML 4 DTD の[[注釈]] (参考) には
[CODE(HTMLe)[caption]] 要素では
[Q[relative to table]]
と説明があります。

** 実装

[28] ほとんどの [[WWWブラウザ]]は[[属性名]]の省略に対応していません。

[30] 多くの WWW ブラウザは、 [CODE(HTML)[left]] や [CODE(HTML)[right]]
に対応していません。


[95]
>>30 [[Firefox]] 3 は対応しているみたいですね。知りませんでした。

** HTML5

[96] [CODE(HTMLe)@en[[[legend]]]] [[要素]]の [CODE(HTMLa)@en[[[align]]]] は現実には
[CODE(HTML)@en[[[left]]]]、[CODE(HTML)@en[[[center]]]]、[CODE(HTML)@en[[[right]]]]
のいずれかで、[CODE(HTMLe)@en[[[fieldset]]]] [[要素]]の[[上境界辺]]上での表示揃え位置を指定するもののようです。
[SRC[[[Web Applications 1.0]]]]

** メモ

[94]
[CITE[機械振興会館]] ([CODE[2008-07-29 20:46:12 +09:00]] 版) <http://www.jspmi.or.jp/kaikanleft.htm>

>
[PRE(HTML bad example code)[
<TABLE width="120">
  <CAPTION align="left"><B>機械振興会館</B></CAPTION>
  <TBODY>
]PRE]

([[名無しさん]])

[[#comment]]


* *-align (CSS)

- [[text-align]] 属性: [[箱]]内の文字列の配置の指定。
- [[vertical-align]] 属性: [[箱]]の、外側の箱に対する縦位置の指定。

[83]
111
([[名無しさん]] [WEAK[2007-02-24 14:50:51 +00:00]])

[[#comment]]


* object 要素・img 要素・applet 要素・embed 要素・input 要素・iframe 要素 align 属性 (HTML, XHTML 1)

[38] [[HTML]] の [CODE(HTMLe)[[[object]]]] 要素、
[CODE(HTMLe)[[[img]]]] 要素、 [CODE(HTMLe)[[[applet]]]] 要素、
[CODE(HTMLe)[[[embed]]]] 要素、 [CODE(HTMLe)[[[input]]]] 要素
([CODE(HTMLa)[[[type]]]] が [CODE(HTML)[[[image]]]])、
[CODE(HTMLe)[[[iframe]]]] 要素 の
[DFN[[CODE(HTMLa)[align]] 属性]]は、各要素の文脈に対する表示位置を指定します。

[39] 仕様書:
- [[HTML 4]]
-- [CODE(HTMLe)[object]] 系
[CODE(HTMLa)[align]] 属性 <IW:HTML4:"struct/objects.html#alignment">
-- 文章系 [CODE(HTMLa)[align]] 属性 <IW:HTML4:"present/graphics.html#alignment">
-- Float an object <IW:HTML4:"present/graphics.html#idx-alignment-1">
-- [CODE(HTMLe)[iframe]] 要素型
<IW:HTML4:"present/frames.html#edef-IFRAME">
-- 17.4 The [CODE(HTMLe)[INPUT]] element
<IW:HTML4:"interact/forms.html#edef-INPUT">
-- [[厳密DTD]] [CODE(SGML)[%IAlign]] <IW:HTML4:"sgml/dtd.html#IAlign">
-- [[移行用DTD]] [CODE(SGML)[%IAlign]] <IW:HTML4:"sgml/loosedtd.html#IAlign">
- [[WebTV]]
-- [CODE(HTMLe)[object]] [CODE(HTMLa)[align]] 属性
<http://web.archive.org/web/20010505215959/developer.webtv.net/authoring/html/object.fm.html#1083063>
-- [CODE(HTMLe)[img]] [CODE(HTMLa)[align]] 属性
<http://web.archive.org/web/20000304172320/developer.webtv.net/authoring/html/img.html#1056448>
-- [CODE(HTMLe)[embed]] [CODE(HTMLa)[align]] 属性
<http://web.archive.org/web/20010505221106/developer.webtv.net/authoring/html/embed.html#1082375>
-- [CODE(HTMLe)[input]] [CODE(HTMLa)[align]] 属性
<http://web.archive.org/web/20010425042729/developer.webtv.net/authoring/html/input.html#1056504>
-- [CODE(HTMLe)[iframe]] 要素 [CODE(HTMLa)[align]] 属性
<http://web.archive.org/web/20000523145406/developer.webtv.net/authoring/html/iframe.html#1056406>
- [[XHTML 1.0]]
-- [CSECTION[A.1.2. XHTML-1.0-Transitional]]
<http://www.w3.org/TR/2002/REC-xhtml1-20020801/dtds.html#dtdentry_xhtml1-transitional.dtd_ImgAlign>
-- [CSECTION[A.1.3. XHTML-1.0-Frameset]]
<http://www.w3.org/TR/2002/REC-xhtml1-20020801/dtds.html#dtdentry_xhtml1-frameset.dtd_ImgAlign>

[[#comment]]


** 代替

[40] この属性は HTML 4 で'''非推奨'''とされています。
代わりに[[スタイル・シート]]を使うことが好ましいといわれています。

[41] [[CSS]] では [SAMP(CSS)[[[text-align]]]] 特性や
[SAMP(CSS)[[[vertical-align]]]] 特性や [SAMP(CSS)[[[margin]]]]
系特性群などで同様の効果が得られます。

[[#comment]]


** 属性値

[42] この属性は[[列挙型]]です。

指定できるのは次の値です。
,属性値	,説明	,出典 ([CODE(HTMLe)[object]])	,出典 ([CODE(HTMLe)[img]])	,出典 ([CODE(HTMLe)[applet]])	,出典 ([CODE(HTMLe)[embed]])	,出典 ([CODE(HTMLe)[input]])	,出典 ([CODE(HTMLe)[iframe]])
,[CODE(HTML)[[[baseline]]]]	,	,[WebTV]
,[CODE(HTML)[[[bottom]]]]	,物体の下と基線を揃える	,[HTML 4]	,"[HTML 4], [WebTV]"	,[HTML 4]	,[WebTV]	,"[HTML 4] DTD, [WebTV]"	,"[HTML 4] DTD, [WebTV]"
,[CODE(HTML)[[[center]]]]	,物体の中央と基線を揃える	,[WebTV]	,[WebTV]
,[CODE(HTML)[[[center]]]]	,中央揃え	,	,	,	,	,[HTML 4] 本文	,[HTML 4] 本文
,[CODE(HTML)[[[justify]]]]	,両端揃え	,	,	,	,	,[HTML 4] 本文	,[HTML 4] 本文
,[CODE(HTML)[[[left]]]]	,左余白に[[浮動]]	,"[HTML 4], [WebTV]"	,"[HTML 4], [WebTV]"	,[HTML 4]	,[WebTV]	,"[HTML 4] DTD, [WebTV]"	,[HTML 4] DTD
,[CODE(HTML)[[[left]]]]	,左揃え	,	,	,	,	,[HTML 4] 本文	,[HTML 4] 本文
,[CODE(HTML)[[[middle]]]]	,物体の垂直中央と基線を揃える	,"[HTML 4], [WebTV]"	,"[HTML 4], [WebTV]"	,[HTML 4]	,[WebTV]	,[HTML 4] DTD	,[HTML 4] DTD
,[CODE(HTML)[[[right]]]]	,右余白に浮動	,"[HTML 4], [WebTV]"	,"[HTML 4], [WebTV]"	,[HTML 4]	,[WebTV]	,"[HTML 4] DTD, [WebTV]"	,[HTML 4] DTD
,[CODE(HTML)[[[left]]]]	,右揃え	,	,	,	,	,[HTML 4] 本文	,[HTML 4] 本文
,[CODE(HTML)[[[textbottom]]]]	,	,[WebTV]
,[CODE(HTML)[[[textmiddle]]]]	,	,[WebTV]
,[CODE(HTML)[[[texttop]]]]	,	,[WebTV]
,[CODE(HTML)[[[top]]]]	,物体の上と行の上を揃える	,[HTML 4]	,"[HTML 4], [WebTV]"	,[HTML 4]	,[WebTV]	,"[HTML 4] DTD, [WebTV]"	,"[HTML 4] DTD, [WebTV]"

[43] この属性は省略可能です。

省略時の既定値は [CODE(HTML)[bottom]] です [SRC[HTML 4]]。
ただし [WebTV] では [CODE(HTMLe)[img]] と [CODE(HTMLe)[input]]
では [CODE(HTMLe)[top]],
[CODE(HTMLe)[object]] と [CODE(HTMLe)[embed]] では
[CODE(HTMLe)[left]] とされています。

[74] HTML 4 DTD 注釈には [Q[center?]<IW:HTML4:"sgml/loosedtd.html#IAlign">] と書かれています。
確かに [CODE(HTML)[left]] と [CODE(HTML)[right]] があれば
[CODE(HTML)[center]] も、と思うのは自然なところ。

[[#comment]]


** レンダリング

[44] UA は [CODE(HTMLa)[align]] 値を様々に解釈しています。
当該要素以前の文字列に対して揃えるものもあれば、
以後の文字列も考慮するものもあります。 [SRC[HTML 4]]

どちらが正しいと決められてはいないようです。

[[#comment]]


** 歴史

[86] [[HTML 2.0]] は [CODE(HTMLe)@en[[[img]]]] [[要素]]を標準化しました。
[CODE(HTMLa)@en[[[align]]]] [[属性]]もこのとき定義されていましたが、
[[属性値]]は [CODE(HTML)@en[[[top]]]], [CODE(HTML)@en[[[middle]]]],
[CODE(HTML)@en[[[bottom]]]] の3種類だけでした。

[84]
[[Netscape Navigator]] は [[HTML 2.0]] の拡張として6種類の[[属性値]]を追加実装しています
(>>87-88)。

;; [CITE[Netscape Navigator Extensions to HTML]]
<http://web.archive.org/web/20000415023954/http://www.netscape.com/home/services_docs/html-extensions.html>

[87] [CODE(HTML)@en[[[left]]]] と [CODE(HTML)@en[[[right]]]]
は、[[浮動]]を表す[[属性値]]として追加されました。

[88] その他の値は
[Q[私が最初に [CODE(HTMLe)@en[[[img]]]] を実装した時のひどい間違いを正そうとして]<http://web.archive.org/web/20000415023954/http://www.netscape.com/home/services_docs/html-extensions.html>]
追加されました。[Q[私]<http://web.archive.org/web/20000415023954/http://www.netscape.com/home/services_docs/html-extensions.html>]
というのは [[Marc Andreessen]] でしょうか。
[[後方互換性]]のため、既存の[[属性値]]の[[意味]]は変更せず、
新たな[[属性値]]を追加したと説明されています。

- [CODE(HTML)@en[[[texttop]]]] は多くの人が[Q[上]]だと思っている、
その[[行]]で''一番高い[[文章]]部の上端''と[[画像]]を揃えます。
([CODE(HTML)@en[[[top]]]] はその[[行]]で''一番高い項目の上端''と[[画像]]を揃えます。
普通は同じですが、たまに異なります。)
- [CODE(HTML)@en[[[absmiddle]]]] はその''[[行]]の[[縦中央]]''と[[画像]]の[[縦中央]]を揃えます。
([CODE(HTML)@en[[[middle]]]] はその''[[行]]の[[基底線]]''と[[画像]]の[[縦中央]]を揃えます。)
- [CODE(HTML)@en[[[baseline]]]] はその''[[行]]の[[基底線]]''と[[画像]]の下端を揃えます。
([CODE(HTML)@en[[[bottom]]]] と同じです。)
- [CODE(HTML)@en[[[absbottom]]]] はその''[[行]]の下端''と[[画像]]の下端を揃えます。

[[#comment]]


** 実装

[45] ほとんどの [[WWWブラウザ]]は[[属性名]]の省略に対応していません。

[[#comment]]


** メモ

[64] [CODE(HTMLe)[iframe]] 要素や [CODE(HTMLe)[input]] 要素の [CODE(HTMLa)[align]] 属性は、
HTML 4 仕様書 [SRC[HTML 4 16.5, 17.4]] では
>>46 の種類の [CODE(HTMLa)[align]] 属性だとされています。
しかし、意味と DTD の記述を考慮すれば、
[CODE(HTMLe)[object]] と同じ種類と考えるのが正しいはずです。
(しかし正誤票でも修正されていません。誰も気付いていないのでしょうか?)

[65]
[CODE(HTMLe)[input]] 要素の場合、
[CODE(HTMLa)[[[type]]]] が [CODE(HTML)[[[image]]]] の場合のみ適用されるのか、他の場合にも適用されるのかはわかりません。 (HTML 4 仕様書にはまったく記述がありません。)

[90]
>>64 属性索引は [CODE(HTMLe)@en[[[iframe]]]] や
[CODE(HTMLe)@en[[[input]]]] の [CODE(HTMLa)@en[[[align]]]]
をこの種類にしています。
([[名無しさん]])

[91]
[[XHTML m12n 1.0]] [[勧告]]の[[抽象モジュール]]定義では
[CODE(HTMLe)@en[[[img]]]] の [CODE(HTMLa)@en[[[align]]]]
が >>46 型になっていますが、 [[XHTML m12n 1.1]] では修正されています。
([[名無しさん]])

[92]
[[XHTML m12n]] 1.0〜1.1 の[[抽象モジュール定義]]では [CODE(HTMLe)@en[[[input]]]]
の [CODE(HTMLa)@en[[[align]]]] は [[HTML 4]]
の [CODE(HTMLe)@en[[[img]]]] のものと同じ型になっています。
注釈として[[基本フォーム]][[モジュール]]と[[フォーム]][[モジュール]]が選択されていれば、とあります。
[CODE(HTMLe)@en[[[input]]]]
[CODE(HTMLa)@en[[[type]]]] [CODE(HTML)@en[[[image]]]]
が定義されていない[[基本フォーム]][[モジュール]]でも
[CODE(HTMLa)@en[[[align]]]] が使えることに意味はあるのでしょうか。
([[名無しさん]])

[[#comment]]


* 浮動 (HTML)

[55] [[HTML]] の[[表]]、[[物体]]、[[画像]]、[[枠]]などの
[CODE(HTMLa)[align]] 属性を [DFN[[CODE(HTML)[left]]]]
や [DFN[[CODE(HTML)[right]]]] と指定すると、
その物体は左右の余白に[DFN[[RUBYB[浮動] [float]]]]します [SRC[HTML 4 15.1.3.1]]。

浮動物体は普通新しい行を始めます [SRC[HTML 4 15.1.3.1]]。

[56] 仕様書:
- [[HTML 4]]
-- 15.1.3.1 Float an object <IW:HTML4:"present/graphics.html#idx-alignment-1">

[[#comment]]


** 代替

[60] [CODE(HTMLa)[align]] 属性は'''非推奨'''です [SRC[HTML 4]]。
代わりに[[スタイル・シート]]で指定できます。

[61] [[CSS]] では [SAMP(CSS)[[[float]]]] 特性で指定できます。

[[#comment]]


** 属性値

[58]
[CODE(HTMLa)[align]] 属性値:
:[CODE(HTML)[left]]:左余白に物体を浮動させます。続きの文章は右側に流します。
:[CODE(HTML)[right]]:右余白に物体を浮動させます。続きの文章は左側に流します。

[59] なお、 [CODE(HTML)[center]] は要素型によっては物体を[RUBY[画布] [キャンバス]]の中央に寄せますが、
浮動してはいません。 (また、 [CODE(HTMLe)[[[p]]]] などの [CODE(HTML)[center]]
は中身の文章を中央寄せします。)

[[#comment]]


** 例

[57]
[PRE(HTML)[
<IMG align="left" src="http://foo.com/animage.gif" alt="my boat">
]PRE]

[[#comment]]


** メモ

[62]
浮動による文章の回り込みを解除するには、
[CODE(HTMLe)[[[br]]]] 要素の [CODE(HTMLa)[[[clear]]]] 属性 ('''非推奨''') を使います。
非推奨属性の代わりに、 [[CSS]]
の [SAMP(CSS)[[[clear]]]] 特性などを使うこともできます。

[[#comment]]


* hr 要素 align 属性

[66] [[HTML]] の [CODE(HTMLe)[[[hr]]]] 要素の
[DFN[[CODE(HTMLa)[align]] 属性]]は、
水平線を左右余白間の領域の左右中央どこに配置するかを指定します。

[67] 仕様書:
- [[HTML 3.2]]
-- [CODE(HTMLe)[hr]] 要素 [CODE(HTMLa)[align]] 属性
<http://www.w3.org/TR/REC-html32#hr>
- [[HTML 4]]
-- [CODE(HTMLe)[hr]] 要素 [CODE(HTMLa)[align]] 属性
<IW:HTML4:"present/graphics.html#adef-align-HR">

[[#comment]]


** 代替

[68] この属性は'''非推奨'''です [SRC[HTML 4]]。
代わりに、[[スタイル・シート]]で指定できます。

[[#comment]]


** 属性値

[69] この属性は[[列挙型]]です。
,属性値	,説明	,出典
,[CODE(HTML)[[[left]]]]	,左揃え	,"[HTML 3.2], [HTML 4]"
,[CODE(HTML)[[[center]]]]	,中央寄せ	,"[HTML 3.2], [HTML 4]"
,[CODE(HTML)[[[right]]]]	,右揃え	,"[HTML 3.2], [HTML 4]"

[70] この属性は省略可能です。省略時の既定値は
[CODE(HTML)[center]] です
([[DTD]] 的には [CODE(SGML)[#[[IMPLIED]]]]
です) [SRC[HTML 3.2, HTML 4]]。
(他の要素型の [CODE(HTMLa)[align]]
属性とは異なるので注意してください。)

[[#comment]]


** 歴史

[85] [CODE(HTMLe)@en[[[hr]]]] [[要素]]の [CODE(HTMLa)@en[[[align]]]]
[[属性]]は [[HTML 2.0]] の拡張として [[Netscape Navigator]]
が実装しました。

同時に追加された [CODE(HTMLa)@en[[[width]]]] 
[[属性]]により[[水平線]]が[[文書]]の表示[[幅]]に満たない場合も考えられるようになったため、
[[水平線]]の位置を [CODE(HTML)@en[[[left]]]]、
[CODE(HTML)@en[[[center]]]]、[CODE(HTML)@en[[[right]]]]
から選べるようにしたと説明があります。

;; [CITE[Netscape Navigator Extensions to HTML]]
<http://web.archive.org/web/20000415023954/http://www.netscape.com/home/services_docs/html-extensions.html>

[71] HTML 2.x ではブロック的要素の一種として >>46
の [CODE(HTMLa)[align]] 属性が追加されました。
強制空要素である [CODE(HTMLe)[hr]]
にこの意味の [CODE(HTMLa)[align]]
属性を追加したのは誤りであったと考えられます。
([CODE(HTML)[[[justify]]]] と指定したらどうなるのだか。)

[72] HTML 3.2 および HTML 4
では、実際に使用・実装されている意味での
[CODE(HTMLa)[align]] 属性が規定されています。

* IDL 属性

[32] [CODE(DOMi)@en[[[HTMLParagraphElement]]]] [[インターフェイス]]の
[[廃止]]状態の[[IDL属性]] [DFN[[CODE(DOMa)@en[[[align]]]]]] は、
[CODE(HTMLa)@en[[[align]]]] [[内容属性]]を[[反映]]しなければ[['''なりません''']]
[SRC[>>5]]。[[文字列]]として[[反映]]します。

[4] [CODE(DOMi)@en[[[HTMLEmbedElement]]]] [[インターフェイス]]の
[[廃止]]状態の[[IDL属性]] [DFN[[CODE(DOMa)@en[[[align]]]]]] は、
[CODE(HTMLa)@en[[[align]]]] [[内容属性]]を[[反映]]しなければ[['''なりません''']]
[SRC[>>3]]。[[文字列]]として[[反映]]します。

* メモ

- [6] >>5 WebTV は [CODE(HTML)[img]] 要素についても、 [CODE(HTML)[center]] を [CODE(HTML)[middle]] の意味で使っているが、こちらには [CODE(HTML)[middle]] もある。説明が center of the text と middle of the text になってて、違いが不明。
- [7] [CODE(HTML)[align]] 属性の継承(?)に関する [[WinIE]] 3.0 の実装は変なことになってるようです: ''ブラウザーによって振る舞いの異なるタグ : 他にもありますか?'' <http://tohoho.wakusei.ne.jp/lng/199801/98012000.htm>

[8]
>>7 の情報によると、 
- [[WinIE 3.0]] では、 [CODE(HTMLe)[[[p]]]] 要素型は [CODE(HTMLe)[[[hr]]]] 要素型を内容に含められるらしい (ので、 [CODE(HTML)[<[CODE(HTMLe)[hr]]>]] タグがあってもそこで終了タグが補われない)。
- WinIE 3.0 では [CODE(HTMLe)[[[nobr]]]] 要素の最後の [CODE(HTMLe)[[[wbr]]]] 要素が機能しない — これは [CODE(HTMLa)[align]] とは関係ない。
- WinIE 3.0 で、複数の [CODE(HTMLe)[[[table]]]] と [CODE(HTMLa)[align]] が [CODE(HTML)[left]], [CODE(HTML)[right]]、それに [CODE(HTMLe)[[[width]]]] の組合せでおかしなことが起こるらしい。
- WinIE 3.0 で、 [CODE(HTMLe)[[[td]]]] とその中の [CODE(HTMLe)[p]] の両方に [CODE(HTMLa)[align]] が指定されている場合、両方の値のうち、 [CODE(HTML)[left]] → [CODE(HTML)[right]] → [CODE(HTML)[center]] (高) の優先度で配置が決まる。
-- たとえば、 [SAMP(HTML)[<[CODE(HTMLe)[td]] [CODE(HTMLa)[align]]="right"><[CODE(HTMLe)[p]] [CODE(HTMLa)[align]]="center">]] なら中央。
- [[NN]] 3.0 で、 [CODE(HTMLe)[table]] 内の入れ子の [CODE(HTMLe)[table]] が [CODE(HTMLa)[align]] [CODE(HTML)[right]] のとき、文字列や [CODE(HTMLe)[hr]] などこまの右端に達する物体がなければ中の [CODE(HTMLe)[table]] が消失する。

[89]
[CITE@ja[アイドルお宝画像ブログ: ほしのあき画像特集]] ([CODE[2007-02-17 12:44:29 +09:00]] 版) <http://idolblog.sblo.jp/article/635852.html>

>
[PRE(HTML invalid example code)[
<div class="text"><strong>ほしのあき画像特集</strong><br /><a href="http://www.amazon.co.jp/exec/obidos/ASIN/B0001W8HPW/zeroenkarages-22/ref=nosim/" name="amazletlink" target="_blank"><img src="http://images-jp.amazon.com/images/P/B0001W8HPW.09.MZZZZZZZ.jpg" alt="ほしのあき Darn-Tarn" style="border: none;" / align=left></a>ほしのあき<br />生年月日1978.3.14<br />血液型O型<br />出身地 東京<br />サイズT165 B88 W56 H87 S23.5<br />趣味・特技<br />マッサージ通い お散歩 種無しブドウを喉ににつめて戻す。最高10粒。<br /><a href="http://im.adonavi.jp/RD/pt/11462/in/3151.html">騙しリンク無し!完全無料画像掲示板</a></align></align><br /><br />
]PRE]

これはなに?
([[名無しさん]])

[97] [CITE@en[Web Applications 1.0 r5895 Remove pointless rules.]]
( ([TIME[2011-02-16 16:51:00 +09:00]] 版))
<http://html5.org/tools/web-apps-tracker?from=5894&to=5895>

[98] [CITE@en[Web Applications 1.0 r6919     Drop support for obsolete table alignment values that no browser supports any more anyway.Fixing https://www.w3.org/Bugs/Public/show_bug.cgi?id=9442]]
( ([TIME[2012-01-26 08:23:00 +09:00]] 版))
<http://html5.org/tools/web-apps-tracker?from=6918&to=6919>

[99] [CITE@en[CSS Box Alignment Module Level 3]]
( ([TIME[2012-08-11 18:59:00 +09:00]] 版))
<http://dev.w3.org/csswg/css3-align/#overview>

[100] [CITE@en[Re: ''''''[''''''css3-flexbox'''''']'''''' '''['''css3-grid-layout''']''' Too Many Alignment Properties]]
( ([[fantasai]] 著, [TIME[2012-02-16 21:48:18 +09:00]] 版))
<http://lists.w3.org/Archives/Public/www-style/2012Feb/0743.html>

[101] [CITE@en[Web Applications 1.0 r7424     Add left and right caption alignment options.]]
( ([TIME[2012-09-29 08:13:00 +09:00]] 版))
<http://html5.org/tools/web-apps-tracker?from=7423&to=7424>

[102] [CITE[IRC logs: freenode / #whatwg / 20130116]]
( ([TIME[2013-01-16 22:06:44 +09:00]] 版))
<http://krijnhoetmer.nl/irc-logs/whatwg/20130116#l-342>

[103] [CITE@en[CSS Box Alignment Module Level 3]]
( ([TIME[2013-05-14 05:55:22 +09:00]] 版))
<http://www.w3.org/TR/2013/WD-css3-align-20130514/>

[104] [CITE@en[915 – (col-align-inherit) implement inheritance of alignment attributes from columns (align, valign, char, charoff, (lang, dir)?)]]
( ([TIME[2013-08-18 18:55:16 +09:00]] 版))
<https://bugzilla.mozilla.org/show_bug.cgi?id=915>

[105] [CITE[ncsa-mosaic/CHANGES at master · alandipert/ncsa-mosaic]]
( ([TIME[2014-04-07 05:35:14 +09:00]] 版))
<https://github.com/alandipert/ncsa-mosaic/blob/master/CHANGES#L619>

[106] [CITE@en[Remove <applet>]]
([[zcorpan]]著, [TIME[2017-08-21 22:19:30 +09:00]])
<https://github.com/whatwg/html/commit/b9b9d60f9451c05f8e8d542e4094f987ae1a5fb8>