担当編集の方とメールしています。
サンプルコードそのもののhtmlファイルをいただき、ちゃんと動いていることを確認しました。
しかし、DOCTYPE宣言がないことが気になり、ためしにhtml4.01Transitionalの宣言を書き加えたら、本のとおりに動かなくなりました。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
IEの動作モード(?!)みたいなものが、変わってしまうようです。
検索してみると、俗に「!DOCTYPEスイッチ」と呼ぶようです。標準準拠モード(standardsモード)と後方互換モード(quirksモード)でcssの扱いが変わりjavascriptの扱いも変わる模様。 調査継続中。