• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:<!DOCTYPE html>有り無しについて)

<!DOCTYPE html>有り無しについて

このQ&Aのポイント
  • バウンド実験プログラムの<!DOCTYPE html>の有無による現象について質問しています。
  • バウンド実験プログラムは<!DOCTYPE html>が無くても意図通りに動作しますが、<!DOCTYPE html>があるとおかしくなる現象が起こることを指摘しています。
  • 質問者は<!DOCTYPE html>が必要なのかどうか疑問を持ち、<!DOCTYPE html>が無いとどのような問題が起こる可能性があるのか知りたいとしています。

質問者が選んだベストアンサー

  • ベストアンサー
  • b0a0a
  • ベストアンサー率49% (156/313)
回答No.2

document.chara.style.left=x+"px"; document.chara.style.top=y+"px"; が正しい指定だからです CSSでは0以外は単位を付けなくてはいけません そして、不正な値が指定された時は無視されることになっています なのでtopが0になった時とleftが0になったときだけ適応されてそういう挙動になるのです <!DOCTYPE html>がない場合は、こうした古い間違ったコンテンツのために、 ブラウザがお情けで動くよう挙動を変えてくれます

zchess
質問者

お礼

なるほど! お情け挙動が適用される古いサンプルだったとは! してみれば、他のテキストでは文字列として”px”を足す必要性を説いていたのを読んでいたのですが、今回のはその点不足な例だったということですね。 原本だけで動かしてもなまじ動くプログラムだっただけに、動かす数字の単位に問題があったとは、気づきませんでした。このような挙動になる理由まで、すっかり合点がいきました。 修正後は問題なく動くようになり、すっきりしました。<!DOC~>タグのありなしだけで、何が違うのか、と迷路にはまっていただけに、感謝です。ありがとうございました。

その他の回答 (1)

  • te2kun
  • ベストアンサー率37% (4556/12165)
回答No.1
zchess
質問者

お礼

参考にしてみます。ありがとうございます。

関連するQ&A