ホームページの右クリック禁止についての質問

このQ&Aのポイント
  • ホームページの右クリックを禁止する方法についての質問です。
  • 現在、ホームページ作成中で右クリックを禁止するためにスクリプトを記述しましたが、htmlチェッカーで警告が出ました。
  • 警告の内容を理解できずに困っています。どなたかご指導いただけないでしょうか?
回答を見る
  • ベストアンサー

ホームページの右クリックを禁止にする方法についてご質問をさせて頂きます

ホームページの右クリックを禁止にする方法についてご質問をさせて頂きます。よろしくお願いします。 現在、ホームページを作成中ですが、右クリックを禁止にしたく以下の記述をしました。 <script type="text/javascript"><!-- function click() { if (event.button==2) { alert('右クリックできません') } } document.onmousedown=click // --></script> ホームページのDOCTYPE等は以下のようになっております。 <?xml version="1.0" encoding="Shift_JIS"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja"> <head> <meta http-equiv="Content-Type" content="text/html;charset=Shift_JIS" /> <meta http-equiv="Content-Style-Type" content="text/css" /> <title>テストページ</title> <meta name="keywords" content="テスト,テスト1,テスト2" /> <meta name="description" content="自動車整備に関するページです" /> <link href="css/abc.css" rel="stylesheet" type="text/css" media="all" /> <link href="css/def.css" rel="stylesheet" type="text/css" media="all" /> <style type="text/css"> </style> </head> <body> 上記の</head>と<body>の間に以下の記述をしました。 <script type="text/javascript"><!-- function click() { if (event.button==2) { alert('右クリックできません') } } document.onmousedown=click // --></script> その後htmlチエッカーで確認をしました。 http://openlab.ring.gr.jp/k16/htmllint/htmllint.html したところ、以下の警告が出たのですが、良く理解出来ないためご質問をさせていただきました。 9: line 21: <script> を 3行目の <html>~</html> 内に書くことはできません。 → 解説 43 1: line 21: <script> を使うときは <head>~</head> 内に <meta http-equiv="content-script-type" content="~" /> を指定するようにしましょう。 → 解説 146 どなた様か、ご指導の程よろしくお願い致します。解説を読んでも良く理解が出来ずにおります。 どなた様か、よろしくお願い致します。

  • pcckit
  • お礼率76% (472/621)
  • HTML
  • 回答数2
  • ありがとう数2

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

  • ベストアンサー
  • ORUKA1951
  • ベストアンサー率45% (5062/11036)
回答No.1

そのまんまです。 html要素は、HEADとBODYしか内部に持ちえません。 【引用】____________ここから <!ENTITY % html.content "HEAD, BODY">  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ここまで [The global structure of an HTML document (ja)( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html401j/struct/global.html#edef-HTML )]より 解説146を読みましょう。 ★補足  右クリック禁止は意味ありません。それどころがサイトの評価を徹底的に下げてしまいます。  ブックマークも登録できない。私だと右クリックのコンテキストメニューのすべてが使えなくなるということ。小さい画像を大きくしたり、読みにくい小さな文字を大きくしたり、IEやOperaなど他のブラウザに切り替えて表示したり、今のページはそのままでタブや別ウィンドでリンク先を開いたり、テキストの意味を辞書で調べたり、印刷したり、この記事よいなとメモもできない。  javascriptでできるけど、決してしてはならない使い方。刃物で人は殺せるから、殺した。と同じくらい。  もちろん、私はjavascriptのこの指定は無効にしてますから、私には効かない==多分多くのユーザーも== 右クリック禁止 - Google 検索 ( http://www.google.co.jp/search?hl=ja&lr=&safe=off&ei=Kqk0S_-GPJeXkQWbuNHwCA&sa=X&oi=spell&resnum=0&ct=result&cd=1&ved=0CA8QBSgA&q=%E5%8F%B3%E3%82%AF%E3%83%AA%E3%83%83%E3%82%AF%E7%A6%81%E6%AD%A2&spell=1 )

pcckit
質問者

お礼

ORUKA1951様 この度は、ご指導ありがとう御座いました。 右クリックというのは、ここまで意味が無いものだったとは知りませんでした。 詳しく解説頂きまして、分かりやすいご指導ありがとう御座いました。 また、ご縁がありましたときはよろしくお願いします。

その他の回答 (1)

回答No.2

解説 43については、 > 上記の</head>と<body>の間に以下の記述をしました。 それがダメだというメッセージです。headの中かbodyの中に書いて ください。いい加減なサイトの解説を読まず、規格書を参照して書 く習慣をつけましょう。 解説146については、ご自分でもスタイルの記述にCSSを使うと宣言 したように、スクリプトの記述にどんなスクリプト言語を使うのか 宣言してくれということです。今までmeta要素は意味も判らずに何 となく書いてたんでしょうか。規格書を参照して書く習慣をつけま しょう。 もちろん、その程度のスクリプトは大抵の人に無意味です。アラー トが出たらリターンキー叩く必要があるだけで、contextual menu 自身は出ますから。対策をとるまでもない稚拙な方法ですね。 それから、「ご質問」はないでしょう。回答者のがわが「あなたの ご質問」とやるモノであって、自分で自分の質問に「ご」を付ける のは日本語としてアウトです。

参考URL:
http://www.asahi-net.or.jp/~sd5a-ucd/rec-html401j/interact/scripts.html.ja.sjis
pcckit
質問者

お礼

grumpy_the_dwarf様。 この度は、的確なアドバイスをありがとう御座いました。 正直今までmetaやスクリプト自分のなかで分かっているようで、実際には良く理解していなかったのだと思います。一度書籍で勉強をしたいと思います。 この度は、ありがとう御座いました。 また、ご縁がありましたときはよろしくお願いします。

関連するQ&A

  • 初歩的な質問で恐縮ですが、教えてください。

    すみませんが、教えてください。 入力フォームでデータが送れなくて、困っています。 下のコードに問題点はあるのでしょうか? 自分では、分からないので、よろしくお願いいたします。 test1.php------------------- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="Content-Style-Type" content="text/css" /> </head> <body> <form method="post" enctype="multipart/form-data" action="./test2.php"> <input type="text" name="fmTitle" ><br /> <input type="submit" value="次へ" > </form> </body> test2.php-------------------------- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="Content-Style-Type" content="text/css" /> </head> <body> <?= $fmTitle . "<br />" ?> </body>

    • ベストアンサー
    • PHP
  • ホームページがIEでアクセスすると白くなってしまいます

    ホームページ作りで困っています。 以下のようにヘッド部分を書き、FTPでアップしたのですが、次のような症状で困っています。 <症状> ・IEではじめてアクセスするときに真っ白で、エンコードを変更すると見られ、以降のアクセスは普通に閲覧できます。 ・ファイアーフォックスでは最初から普通に見られます。 <私の予想> ・下記ヘッド部分に不備がある? ・CSSに不備がある? ↓プログラム <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="ja" xml:lang="ja"> <head> <meta name="Keywords" content="ほげほげ"/> <meta name="description" content="ほげほげ" /> <meta http-equiv="Content-type" content="text/html; charset=utf-8" /> <meta http-equiv="Content-Style-Type" content="text/css" /> <meta http-equiv="Content-Script-Type" content="text/javascript" /> <title>もがもが</title> <link rel="stylesheet" href="css/style.css" type="text/css" /> <link rel="shortcut icon" href="http://www.hogehoge/images/favicon.ico">

    • ベストアンサー
    • PHP
  • 下記のタグの中で必要ないのはありますか?

    (1) <?xml version="1.0" encoding="UTF-8"?> (2) <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> (3) <html xmlns="http://www.w3.org/1999/xhtml" lang="ja" xml:lang="ja"> (4) <head> (5) <title>●●●●●●●●</title> (6) <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> (7) <meta http-equiv="Content-Style-Type" content="text/css" /> (8) <meta name="robots" content="INDEX,FOLLOW"> (9) <meta name="description" content="●●●●●●●●"> (10) <meta name="keywords" content="●●●●●●●●"> (11) <meta name="content="●●●●●●●●" /> (12) <meta http-equiv="Content-Script-Type" content="text/javascript"> (13) <meta http-equiv="Content-Style-Type" content="text/css"> (14) <link href="css/A1.css" rel="stylesheet" type="text/css" /> (15) <META http-equiv="Content-Type" content="text/html; charset=Shift_JIS">

  • XHTML meta属性 文字化け

    XHTMLを勉強しています。 以下のように記述して表示すると タイトルの部分が文字化けします。 何故でしょうか <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="Content-Style-Type" content="text/css" /> <meta http-equiv="Content-Script-Type" content="text/javascript" /> <title>ホームページの作り方</title> <meta name="description" content="初心者のためのホームページテスト" /> <meta name="keywords" content="ホームページ,作成,初心者" /> </head> <body> テスト </body> </html>

    • ベストアンサー
    • HTML
  • cssがIE6で適用されない理由は

    教則本を見てcss/xhtmlでサイトを作ったのですが、 (教則本がIE7以降対応だった為) safari firefoxd IE7では表示がうまくいくのですが、 IE6では全くcssが適用されないです。 少し調べたところこの辺の記述に問題があるのかなと思っています。 誰か教えて下さい。 ............................................................................... <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="jap" lang="jap" dir="ltr"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <meta http-equiv="Content-Script-Type" content="text/css" /> <meta http-equiv="Content-Script-Type" content="text/javascript" /> ....................................................................

    • ベストアンサー
    • HTML
  • Shift_JISのことろをすべてsjisに

    しても大丈夫でしょうか? たとえば以下のように書いて大丈夫でしょうか? 本来どのように書くべきでしょうか? <?xml version="1.0" encoding="sjis"?>のsjisと <meta http-equiv="content-type" content="application/xhtml+xml; charset=sjis"/> のsjisの2箇所です。 <?xml version="1.0" encoding="sjis"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja"> <head> <meta http-equiv="content-type" content="application/xhtml+xml; charset=sjis"/> <meta http-equiv="content-style-type" content="text/css"/> <meta http-equiv="content-script-type" content="text/javascript"/> <title>sjis</title> </head> <body> <p>これは文字化けのテストです</p> </body> </html>

    • ベストアンサー
    • HTML
  • SafariでPHPソースがそのまま表示される

    Safariでindex.phpを開くとソースコードがそのまま表示されてしまいます。 拡張子をphpとしているだけでソース内にはphpスクリプトは記述しておりません。 なぜでしょうか? ※ファイル名をindex.htmlに変えると正しく表示されます。 Windows 7 Home Premium 64bit Safari5.1.5 ソースコードのエンコーディング:utf-8 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="content-style-type" content="text/css" /> <meta http-equiv="content-script-type" content="text/javascript" /> <meta name="keywords" content="" /> <meta name="description" content="" /> <title>テストtitle> </head> <body> <h1>テストページ</h1> </body> </html>

  • Xhtmlでの、class="imgover"の記述方法を教えてください。

    ただいま 独学ですが、Xhtmlを勉強しております。 Xhtmlで、カーソルが画像の上に来たら 画像が変わるように設定したいのですが、その方法が class="imgover" を使うと出来るとわかりやってみましたが・・・うまくできません。 下記にXhtmlを記述したので、教えてくださいお願いします。 <?xml version="1.0" encoding="Shift_JIS"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja"> <head> <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS" /> <meta http-equiv="content-style-type" content="text/css" /> <meta http-equiv="content-script-type" content="text/javascript" /> <meta http-equiv="imagetoolbar" content="no" /> <title>あれこれ</title> <meta name="description" content="あれこれ" /> <meta name="keywords" content="あれこれ" /> <meta name="copyright" content="あれこれ" /> <link rel="stylesheet" href="css/style.css" type="text/css" media="all" /> <script type="text/javascript" src="js/rollover.js"></script> </head> <body> <img src="img/header_logo.gif" width="312" height="39" alt="日本" class="imgover" /> </body> </html> 画像は、 header_logo.gifと header_logo_on.gif とが作ってあります。 どこかおかしいのでしょうか?

    • ベストアンサー
    • HTML
  • ホームページのヘッダ部分について

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <HTML LANG="JA"> <HEAD> <META HTTP-EQUIV="CONTENT-TYPE" CONTENT="text/html; charset=Shift_JIS"> <META HTTP-EQUIV="CONTENT-STYLE-TYPE" CONTENT="text/css"> <META HTTP-EQUIV="CONTENT-SCRIPT-TYPE" CONTENT="text/javascript"> <TITLE>○○○○</TITLE> <LINK REL="STYLESHEET" TYPE="text/css" HREF="css1.css"> <meta name="keywords" content="△,△,△,△,,△,△,"> <meta name="description" content="●●●●●"> </HEAD> <BODY> … となっているのですが、無駄な部分はありますか? 順番などは合ってますか? また、こうしたほうがいい、などとアドバイスがあればぜひよろしくお願いいたします。

  • headerの添削お願いします。

    自分なりに書いてみたのですがおかしいところがあったら教えてください。 また、採点してくれるサイトがあったと思うのですがご存知の方教えてください。 <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml" xml:lang="ja" lang="ja"> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"/> <meta http-equiv="content-style-type" content="text/css" /> <meta http-equiv="content-script-type" content="javascript" /> <meta name="keywords" content="content" /> <link rel="shortcut icon" href="/favicon.ico" /> <link rel="stylesheet" href="/css/main.css" type="text/css" /> <title>0725</title> </head>