見せかけの「スタンダード準拠」

2004年11月6日(土) 11時22分 by level
B ?

...、生成される HTML がスタンダードに準拠してるんですね。

B ボタンを押すと <B> タグが入るかと思いきや、<strong> ですし、I ボタンは i タグじゃなくて、em。色指定も font color ではなくて、<span style="color:#dddddd"> てな具合。

これは、html 自体はスタンダード準拠になるかもしれませんが、コード生成の動作としてはあきらかに意味を取り違えています。strong や em は決して「太字」や「斜体」の意味ではなく「強調」という「意味」しか持たないです。こういうのを「スタンダード準拠」と呼ぶべきでは無いですね。

色指定は埋め込み CSS を使っているのになぜ bold や italic も CSS にしないのでしょうね?

更新

コメント#1 OYAMA さん:

「ユーザインターフェイスとして"<B>ボタン"であるのに、その操作結果が"強調"である点」がよろしくない、と私は解釈したのですが合っていますか?もしそうだとすると、TypePadのユーザインタフェイスが「<B>ボタン」ではなく「太字ボタン」や「強調ボタン」であれば良かった、という事でしょうか。

私が問題にしているのは、「Bボタン」を strong タグに変換していることです(スクリーンショットをみるとツールバーのボタンは一般的な WYSIWYG エディタの持つものと同様です)。miyagawa さんはBボタンは強調の意味で使うはずだといわれますが、そういうユーザがいることは否定はしないものの、一般的にはやはり「太字」という意味で解釈するのが妥当と思います。それをたまたま多くのブラウザが strong を太字で表示するからといって strong に変換するのは html の仕様から言って明らかに間違っています。html 的に valid になるからといってそれを「スタンダード準拠」などと決してほめてはならないと思います。まだ、B タグを使用したほうがましです。まあ、100歩譲って、B = strong だとみなして(そういう仕様だと押し切って) strong タグに変換するのは許しても、I を em タグに変換するのはあまりに論理が飛躍しています。

コメント (11)

1 11/06 13:57 Hiroyuki OYAMA
(c1) [2004/11/06 13:57:36] by Hiroyuki OYAMA

興味深く読ませて頂きました。また、ちょっと疑問というか質問があります。

「ユーザインターフェイスとして"<B>ボタン"であるのに、その操作結果が"強調"である点」がよろしくない、と私は解釈したのですが合っていますか? もしそうだとすると、TypePadのユーザインタフェイスが「<B>ボタン」ではなく「太字ボタン」や「強調ボタン」であれば良かった、という事でしょうか。

強調表示するのはUser Agentの仕事ですし、"強調"の表現結果への期待は人によって違うんでしょう。つまるところエンドユーザにしてみるとやりたい事は"強調"であって、文書上の表現結果としてボールドでもフォントの変化でも変わりはないので結果的に意図は満たせています。SixApart社のデザイナが「<B>ボタン」を選んだ背景は部外者なので知りませんが、「HTMLの強調は<b>」と認識しているエンドユーザが多い故に選択したI/Fなのかなとも思えます。
で、エンドユーザの意識を矯正することなく機械的にも優しいHTMLが結果的に(部分的にでも)生成されるので「スタンダードに準拠」という表現は、生成されるHTMLに対しても、エンドユーザの意図と一致しうるユーザインターフェイスに対しても自然であるのではないかと感じたわけです。
# あ、でも見た目上たまたま太字にしたいだけだった人に「強調」でマークアップされると困るのはありますわね。

僕が読み取った意味とまったく違った論点でのお話でしたら失礼。また、もしこの辺の議論で参考になる文章等ご存知でしたらご教授頂けますと幸いです。

2 11/06 14:15 kitsune.info
(c2) [2004/11/06 14:15:58] by kitsune.info

> この辺の議論で参考になる文章等

http://www.sixnine.net/roadside/textsafe.html#s1-4
たとえばこのあたりの話だと思います。

強調するための要素が挿入されるのであれば、強調を意味する言葉をボタンに表示するのが合理的なのでは、という意見だと解釈しました。
h1 ~ h6 は文字を大きくする要素ではありませんし、blockquote はインデントするための要素ではありません。
しかし、往々にしてこの手のツール群が HTML について間違った解釈を広めているきらいがあるので、私はこのエントリに素直に納得したのですが。

# valid と strict の違いとか、そこらへんの話。

3 11/06 14:31 miyagawa
(c3) [2004/11/06 14:31:30] by miyagawa

論点としては、太字にしようとしているのにstrongタグを使って太くなっているようにみせるのは、ブラウザがそうしてるだけであって本来の目的ではない、こういうことをするからHTMLの間違った解釈がひろまる、ということですよね。それはよくわかります。

ただ、そもそもこのツールはユーザにHTMLとは何ぞやを意識させないためのツールであったはずです。ほとんどのユーザは Bのボタンを利用するとき、 B タグや span style="font-weight:bold" で太くしたいのではなく、「その文字を強調したい」から使うのではないでしょうか。それが strong で強調されるのは自然であるしスタンダードなHTMLがそれによってユーザが意識することなく生成されるのはすばらしいことだと思います。

で、ツール自体の見た目の問題は確かにちょっと問題かなという気はして、BとかIとかのボタンというのは、HTMLのタグあるいはCSSの該当する属性を連想させるのは事実ですが、これはユーザのなじみやすさを優先した結果MS Wordなどに代表されるパネルをそのまま引っ張っているのだと思われます。

でまあ、strong と em の違いが太字と斜体の違いなのか?っていうところは確かに気になるところではありますが、この辺こそユーザごとに定義したスタイルシートで em { font-style: italic } とでもしておけば整合性はとれるかなあという気もします。

4 11/06 17:29 nemo
(c4) [2004/11/06 17:29:35] by nemo

>ユーザにHTMLとは何ぞやを意識させないためのツール
>これはユーザのなじみやすさを優先した結果MS Wordなどに代表されるパネルをそのまま引っ張っているのだと思われます。

それがそもそもこの手のツール開発者が使う詭弁だから宜しくないのですよ。
そんなものは素晴らしくなんともありません。単なる開発者の手抜きです。
そのような「手抜きツール」では、意識的に文章を書くことができません。
いい加減レガシーなWYSIWYGインタフェイスを捨てさり、新しい方向性を模索すべきです。

>ユーザは Bのボタンを利用するとき、 B タグや span style="font-weight:bold" で太くしたいのではなく、「その文字を強調したい」から使うのではないでしょうか。

彼らは「強調したい」という意識よりも、「太字になる」という結果だけを重視します。
彼らとしては em だろうが strong だろうが結果が「太字になればよい」のであり、結果にたどりつくまでの思考過程などどうでもよいのです。要はブラウザでの表示がすべてです。

>ユーザごとに定義したスタイルシートで em { font-style: italic } とでもしておけば整合性はとれるかなあという気もします。

意味がわかりません。ユーザ環境で em や strong がどのように表現されるかは不定です。
ある環境では、ユーザスタイルシートで em { font-style: normal !important; font-weight: bold !important; } と指定されているかもしれません。フォントの表現に制約のある機器では背景色だけ変えて表現するかもしれません。音声読み上げでは合成音声の抑揚や強さを変えるでしょう。

5 11/07 00:50 kitsune.info
(c5) [2004/11/07 00:50:43] by kitsune.info

> miyagawaさん江
> ユーザにHTMLとは何ぞやを意識させないためのツールであったはずです。

HTML の敷居の高さを解消しようというコンセプトはわからんこともないのですが、ツールが正しいソースを吐いてくれるならそれに越したことはないでしょう。
で、このツールの場合「わりとよくできてるけど、もう少し努力の余地があるんじゃないの?」というツッコミを受けているだけの話だと思います。
# オープンソースのソフトウェアがこういうツッコミを受けなくなったら、そのソフトウェアは死にます。Mozilla とて例外ではなく。

個人的には、Legacy な HTML よりも Strict である方が習得が容易なのではないかと考えています。そもそも、使える要素や属性が少ないわけですし。
べつに HTML でオーサリングする人が HTML の規格を把握しておくべきだとまでは思いませんけど、今の HTML がどういう性格の言語で、何に適していて、どういう方向性で開発されているかということくらいは、遅かれ早かれ知って欲しいと思います。今すぐにではないにしても。

初心者向けの HTML オーサリングツール群が時折逆風に晒されるのは、正しい HTML の理解を結果的に妨げている可能性があるからじゃないですかね。

6 11/07 01:06 中野雅之
(c6) [2004/11/07 01:06:56] by 中野雅之

ちょっと視点を変えて、こう考えるとよろしくない仕様だと言い切れると思います。

次の仕様でページを作るとします。
1. 太字を強調として利用する
2. 太字で斜体を最強調として利用する

これをこのツールで実現すると、
1. <strong>強調</strong>
2. <em><strong>最強調</strong></em>もしくは<strong><em>最強調</em></strong>

となり、本来のHTMLの定義からはずれます。
emとstrongの関係、という部分については、そういうUIだと簡単に破綻してしまいますね。

7 11/08 22:05 k_e
(c7) [2004/11/08 22:05:24] by k_e

僕は、HTML の強調と最強調という使い分けがそもそも破綻している気がするんですよね。
メジャーブラウザのデフォルトの表示が「太字」「斜体」になっていることがそれをよくあらわしていると思うんです。僕には「斜体」が「太字」よりも強調しているようには思えないんですよ。
もちろんそれはブラウザのせいでもあるんでしょうけど、やっぱり「最強調」って使いにくいんだと思います。
(とはいえ、たとえば初期のネスケとかが、em を bold かつ文字サイズ 1.2 倍で表示していたら今どうなっていたかわかりませんけどね…)

このエディタが「強調」「最強調」ボタンを用意したとしても、自分は「強調」しか使わないと思います。スタイルシートをカスタマイズしないと「最強調」しているように見えないボタンならないほうがないほうがいいなぁ。

「強調」ボタンのみで、「最強調」はなしのほうがすっきりするし、不便はないと思います。

8 11/08 23:54 level
(c8) [2004/11/08 23:54:20] by level

#本題からずれてきましたが...
あれ?
<em> = emphasis = 強調 = 「斜体」
<strong> = stronger emphasis = より強い強調 = 「太字」
だと思うのですが...

9 11/08 23:59 level
(c9) [2004/11/08 23:59:55] by level

#論点がずれるといけないので念のため
もし「強調」ボタンであれば(<em>ではなく)<strong>に変換するというのは
誰もが納得することだと思います。
が、ここで問題にしているのは「B」ボタンを<strong>に変換することです。

10 11/09 02:02 k_e
(c10) [2004/11/09 02:02:45] by k_e

混乱してましたね。すみません。

italic と bold はどっちがより強調なのかわかりにくいということです。
そして、それをブラウザが em と strong の区別に使ったのが誤解の原因じゃないかな?と思ったので。

11 11/09 06:58 もとひこ
(c11) [2004/11/09 06:58:20] by もとひこ

> italic と bold はどっちがより強調なのかわかりにくいということです。
> そして、それをブラウザが em と strong の区別に使ったのが誤解の原因じゃないかな?と思ったので。
それはあなたが日本人だから。というよりHTMLの仕様書にある、デフォルトスタイルとして推奨されているものが欧文向けだから。イタリック体を強調として用いるというのはこの所為です。

トラックバック (2)

トラックバックは検索対象外です。

この記事にリンクしているページ < >

  1. [54] http://blog.bulknews.net/mt/archives/001379.html