HTML5マークアップ 現場で使える最短攻略ガイド・プチレビュー
私のTLのごく一部で盛り上がっていたカルタ付 HTML5マークアップ 現場で使える最短攻略ガイド (WEB PROFESSIONAL)について、HTML5マークアップ 現場で使える最短攻略ガイド | 覚え書き | @kazuhitoですでにレビューされていますが、私も購入してざっくり目を通したのでレビューしてみるなど。
印象としては一昔前のhtml5-diff*1をベースにしてHTML5の新要素・属性を重点的に解説しているのかな、と。ただし、仕様書以上のことはあまり深いところまで触れられていないので、やや肩透かしを食らったり。それでも、ワンポイントでかゆいところに手が届くようなコラムがあったりと、手堅くはまとまっているのかな、と思います。ただし、来年にHTML5勧告になったときにこの本が耐えられるのかというのは未知数な面があるのも事実。これはHTML5仕様そのものがものすごい勢いで現在進行形で変化しているのが原因で、紙に印刷された書籍の宿命と言ったところでしょうか。
いちいちW3C仕様まで当たるのが面倒くさい、また日本語訳すら読む時間が無い、という忙しい人のためのHTML5入門とも言え、HTML4やXHTML1.xを知っていること前提で手っ取り早く今現在のHTML5仕様の概略を知りたい、という人にお勧めできるのかなと。そういう想定読者向けには、本書の意図するところは余すところなく表現されていると思います。
以下、個人的に気になったところを(上記リンク先以外で)つらつらと。
- p.13にある「XHTML5とは?」の箇所で
application /xml
と半角スペースが出ているのはたぶんtypo。 p.30でProject:HTML5日本語化 - Opera WikiのURLがない。←ただのやっかみです、ごめんなさい。ただ、知名度の低さはどうにかする必要ありそう。- p.70で「カテゴリーの種類と属する要素」で14のカテゴリーが挙げられているけれども、Reassociateable elements(再関連付け可能要素)*2が抜けている。確か、昔のドラフトにはなかったものだと思うので、確認し忘れたのでしょう。ちなみに、現時点でのEditor's DraftにはScript-supporting elements(スクリプトサポート要素)*3なるものがあるので、本書のカテゴリー分けは古いものとなります。
- p.89の『消えたセクション関連要素「
hgroup
要素」』でhgroup
要素が削除されたことに言及されているものの、サブタイトルを記述する場合は、
とだけ記述されており、なぜか「見出しをくくる」ことについては触れられていない。p
要素を使うとよいでしょう。見出しと小見出し、代替タイトル、またはキャッチフレーズは、
と仕様書にあるとおり、header
またはdiv
要素を使用してグループ化できる。header
またはdiv
要素を使いましょう。*4 - p.109
main
要素の説明がWAI-ARIAのmain
ロール*5に関連しているというのは触れられても良かったんじゃないかな、と。まあ、本当のところは巷(何処)で話題のmain要素とは何か | 覚え書き | @kazuhitoとかが詳しいのでそっちを当たってください(ぉ ちなみに現時点に仕様書では、著者は、ユーザーエージェントが必要なロールのマッピングを実装するまで、
とか書かれていたりします*6。main
要素にARIArole="main"
属性を使用することを勧める。 - p.116「ルビ仕様の拡張」で、
ルビ仕様に関して、対応しきれないルビのスタイルがあるなどの問題が指摘されています。
というのがちょっと変な気が。第一の理由は、W3C HTML Ruby Markup Extensions*7が指摘するように、現在のHTML5仕様のアルゴリズムはバグがある、ということに尽きるのではないかと*8。 - p.168の
u
要素の例示がちょっと変。仕様書では中国語の固有名詞のマーク
とあり*9これをこのまま日本語に当てはめるのはちょっとどうなのかな、と。もっとも仕様書も英語と中国語についてのみしか念頭に置いていない節があるので、もっと多言語について検討されてもよいのではないかなとか(日本語で下線を引くとなるとem
やmark
要素のほうがしっくりきそう)。
*1:http://www.w3.org/TR/html5-diff/ のこと。“HTML5 differences from HTML4”と題されていた頃と推測。ちなみに今は“Differences from HTML4”となっている。
*2:http://www.w3.org/TR/2013/CR-html5-20130806/forms.html#categories 参考日本語訳:http://momdo.s35.xrea.com/web-html-test/spec/html5-dev/forms.html#categories
*3:http://www.w3.org/html/wg/drafts/html/master/dom.html#kinds-of-content
*4:http://momdo.s35.xrea.com/web-html-test/spec/html5-dev/obsolete.html#non-conforming-features
*5:http://www.hitachi.co.jp/universaldesign/ria/ajax/wai-aria/wd_20090224/index.html#main
*6:http://momdo.s35.xrea.com/web-html-test/spec/html5-dev/grouping-content.html#the-main-element
*7:http://www.w3.org/TR/html-ruby-extensions/ 参考日本語訳:http://momdo.s35.xrea.com/web-html-test/spec/WD-html-ruby-extensions-20131022.htm
*8:ルビ方面に関しては、@d_toyboxさんが指摘されているような関連要素って駄目駄目というものもありますが
*9:http://www.w3.org/TR/2013/CR-html5-20130806/text-level-semantics.html#the-u-element 参考日本語訳:http://momdo.s35.xrea.com/web-html-test/spec/html5-dev/text-level-semantics.html#the-u-element