<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="1" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[1]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTML</anchor> の <code class="HTMLe"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">table</anchor></code> 要素の <dfn><code class="HTMLa">frame</code> 属性</dfn>は、
表の枠のつけ方を指定します。</p><p>仕様書: <ul><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTML 4</anchor><ul><li><code class="HTMLe">table</code> 要素 <code class="HTMLa">frame</code> 属性
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="HTML4:&quot;struct/tables.html#adef-frame&quot;" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="IW">IW:HTML4:&quot;struct/tables.html#adef-frame&quot;</anchor-external></li><li><cite>A.3.7 table_changesChanges for tables</cite>
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="HTML4:&quot;appendix/changes.html#table_changes&quot;" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="IW">IW:HTML4:&quot;appendix/changes.html#table_changes&quot;</anchor-external></li><li><cite>B.5.2 Recommended Layout Algorithms</cite>
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="HTML4:&quot;appendix/notes.html#layout&quot;" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="IW">IW:HTML4:&quot;appendix/notes.html#layout&quot;</anchor-external></li></ul></li></ul></p><form xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" ref="comment"></form><section><section><h1>スタイル・シート代替</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="5" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[5]</anchor-end> この属性は、 HTML 4 では<strong>非推奨</strong>とはされていません。
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">表</anchor>の特殊性によるものとも思えませんし、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTML 4.0</anchor>
の時点で表を扱えない <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">CSS1</anchor> だけで <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">CSS2</anchor> 
がまだ勧告されていなかったのが原因かもしれません。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="6" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[6]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">CSS</anchor> での代替方法は <anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="2" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;2</anchor-internal> の表をご覧下さい。
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">XSL</anchor> でも同じような指定ができます。</p><form xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" ref="comment"></form></section><section><h1>属性値</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="2" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[2]</anchor-end> この属性は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">列挙型</anchor>属性です。</p><table><tbody><tr><td>属性値</td><td>説明</td><td>CSS 代替</td></tr><tr><td><code class="HTML"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">void</anchor></code> (既定値)</td><td>なし</td><td><samp class="CSS">border-style: none</samp></td></tr><tr><td><code class="HTML"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">above</anchor></code></td><td>上</td><td><samp class="CSS">border-style: <var>あり</var> none none none</samp></td></tr><tr><td><code class="HTML"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">below</anchor></code></td><td>下</td><td><samp class="CSS">border-style: none none <var>あり</var> none</samp></td></tr><tr><td><code class="HTML"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">above</anchor></code></td><td>上</td><td><samp class="CSS">border-style: <var>あり</var> none none none</samp></td></tr><tr><td><code class="HTML"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">hsides</anchor></code></td><td>上下</td><td><samp class="CSS">border-style: <var>あり</var> none</samp></td></tr><tr><td><code class="HTML"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">vsides</anchor></code></td><td>左右</td><td><samp class="CSS">border-style: none <var>あり</var></samp></td></tr><tr><td><code class="HTML"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">lhs</anchor></code></td><td>左</td><td><samp class="CSS">border-style: none none none <var>あり</var></samp></td></tr><tr><td><code class="HTML"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">rhs</anchor></code></td><td>右</td><td><samp class="CSS">border-style: none <var>あり</var> none none</samp></td></tr><tr><td><code class="HTML"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">box</anchor></code></td><td>すべて</td><td><samp class="CSS">border-style: <var>あり</var></samp></td></tr><tr><td><code class="HTML"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border</anchor></code></td><td>すべて</td><td><samp class="CSS">border-style: <var>あり</var></samp></td></tr></tbody></table><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[3]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DTD</anchor> では特に既定値は指定されていませんが、
仕様書本文では <code class="HTML">void</code> とされています。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="7" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[7]</anchor-end> <code class="HTMLa"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border</anchor></code> 属性値の <code class="HTML">0</code> は
<code class="HTML">frame=void</code> を、それ以外は <code class="HTML">frame=border</code>
をほのめかすと HTML 4 仕様書には書かれています。
これが <anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;3</anchor-internal> の理由でしょう。</p><p>同時に <code class="HTMLa"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">rules</anchor></code> 属性も補われますが、
こちらには仕様書に<q>別途指定がなければ</q>と注記があります。
ということは、 <code class="HTMLa">frame</code> 属性は陽に指定してあっても
<code class="HTMLa">border</code> 属性が優先するのかもしれません。</p><p>(なお、この規定は<q>互換性のためにそうするべき (shoukd)</q> というものです。)</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="4" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[4]</anchor-end> 列挙型ですから、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">SGML宣言</anchor>の指定によっては
<samp class="HTML">frame=&quot;above&quot;</samp> を単に <samp class="HTML">above</samp>
とだけ書いたりもできるのですが、 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WWWブラウザ</anchor>のほとんどはそのような書き方には対応していないでしょう。</p><p>唯一の例外は <code class="HTML">border</code> で、これは
<code class="HTML">border</code> とだけ書く (<code class="HTMLa"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border</anchor></code>
属性の <code class="SGML"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">vi</anchor></code> と<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">属性値指定</anchor>が省略できるという非 SGML 的な)
従来からの方法との互換のための trickey な方法としてわざわざ入れられています。
<q>真偽値属性値</q> <code class="HTML">border</code> の歴史については
<code class="HTMLa"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">border</anchor></code> 属性の説明をごらんください。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="20" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[20]</anchor-end></p><ul><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTML 4</anchor><ul><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">厳密DTD</anchor>
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="HTML4:&quot;sgml/dtd.html#TFrame&quot;" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="IW">IW:HTML4:&quot;sgml/dtd.html#TFrame&quot;</anchor-external></li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">移行用DTD</anchor>
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="HTML4:&quot;sgml/loosedtd.html#TFrame&quot;" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="IW">IW:HTML4:&quot;sgml/loosedtd.html#TFrame&quot;</anchor-external></li></ul></li></ul><p>(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">名無しさん</anchor> [sage])</p><form xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" ref="comment"></form></section><section><h1>歴史</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="17" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[17]</anchor-end> HTML 4 表の開発の時には、将来的に他の表要素にも <code class="HTMLa">frame</code>
属性を指定できるようにすることを考慮に入れていたそうです。
しかし、 HTML 4 の時点では処理が複雑になり過ぎる割に需要が少ないと判断したようです。
<src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:">HTML 4.01 A.3.7, B.5.1.3, B.5.2</src></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="18" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[18]</anchor-end> <code class="HTMLa">frame</code> 属性の値は <code class="HTMLa"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">rules</anchor></code> 属性や
<code class="HTMLa"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">align</anchor></code> 属性や <code class="HTMLa"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">valign</anchor></code>
属性と整合性のあるものとできた方が良かったのですが、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">素のSGML</anchor>
で<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">列挙型</anchor>とするためにはかないませんでした。 <code class="HTMLa">frame</code>
を <code class="SGML"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">CDATA</anchor></code> にする案もありましたが、 W3C HTML <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WG</anchor>
は名前の整合よりも SGML 的に<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">妥当性検証</anchor>可能である方が良いと判断したそうです
<src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:">HTML 4 B.5.2</src>。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="19" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[19]</anchor-end>
HTML 4 DTD の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">注釈</anchor> (参考) には、
(HTML 表モデルの基となった) <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">CALS</anchor>
の表とは <code class="HTMLa"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">valign</anchor></code>
属性との関係で属性値が異なっていると注記されています。</p></section></section></body></html>