HTML
 Computer >> コンピューター >  >> プログラミング >> HTML

HTML DOM スタイルの cursor プロパティとは?設定方法と全値一覧をわかりやすく解説

HTML DOM スタイルの cursor プロパティとは

HTML DOM のスタイルにおける cursor プロパティは、マウスポインタが表示されるときのカーソルの種類(形状)を設定・取得するために使用されるプロパティです。JavaScript と組み合わせれば、ユーザーの操作に応じてカーソルを動的に変更することもできます。

なお、値を取得したい場合は object.style.cursor を参照するだけで、現在設定されているカーソルの種類を読み取ることができます。

構文

cursor プロパティを設定するための基本的な構文は以下のとおりです。

object.style.cursor = value

cursor プロパティに指定できる値の一覧

次の表は、cursor プロパティで使用できる主な値とその説明です。


説明
alias
エイリアス(別名)が作成されることを示すカーソル
all-scroll
任意の方向へスクロールできることを示すカーソル
auto
デフォルト値。ブラウザが自動的にカーソルを設定する
cell
セル(またはセルの集合)を選択できることを示すカーソル
context-menu
コンテキストメニューが利用可能であることを示すカーソル
col-resize
列を水平方向にリサイズできることを示すカーソル
copy
コピーされることを示すカーソル
crosshair
十字線(クロスヘア)として表示されるカーソル
default
デフォルトのカーソル
e-resize
ボックスの端を右(東)方向へ移動することを示すカーソル
ew-resize
左右双方向のリサイズカーソルを示す
grab
対象をつかむ(掴める)ことを示すカーソル
grabbing
対象をつかんでいる状態を示すカーソル
help
ヘルプが利用可能であることを示すカーソル
move
対象を移動できることを示すカーソル
n-resize
ボックスの端を上(北)方向へ移動することを示すカーソル
ne-resize
ボックスの端を右上(北東)方向へ移動することを示すカーソル
nesw-resize
斜め双方向のリサイズカーソルを示す
ns-resize
上下双方向のリサイズカーソルを示す
nw-resize
ボックスの端を左上(北西)方向へ移動することを示すカーソル
nwse-resize
斜め双方向のリサイズカーソルを示す
no-drop
ドラッグ中の項目をここにドロップできないことを示すカーソル
none
要素に対してカーソルを一切表示しない
not-allowed
要求された操作が実行されないことを示すカーソル
pointer
リンクであることを示すポインタ型のカーソル
progress
プログラムが処理中(ビジー)であることを示すカーソル
row-resize
行を垂直方向にリサイズできることを示すカーソル
s-resize
ボックスの端を下(南)方向へ移動することを示すカーソル
se-resize
ボックスの端を右下(南東)方向へ移動することを示すカーソル
sw-resize
ボックスの端を左下(南西)方向へ移動することを示すカーソル
text
選択可能なテキストであることを示すカーソル
URL
カスタムカーソル画像へのURLをカンマ区切りで指定する。注意:URLで定義したカーソルがどれも使用できない場合に備えて、リストの末尾には必ず汎用カーソル(例:auto や pointer)を指定しておくこと
vertical-text
選択可能な縦書きテキストであることを示すカーソル
w-resize
ボックスの端を左(西)方向へ移動することを示すカーソル
wait
プログラムがビジー状態であることを示すカーソル
zoom-in
拡大できることを示すカーソル
zoom-out
縮小できることを示すカーソル
initial
このプロパティをデフォルト値に設定する
inherit
親要素からこのプロパティの値を継承する

cursor プロパティの使用例

それでは、実際に cursor プロパティを使ったサンプルコードを見てみましょう。以下の例では、ボタンをクリックすると、1つ目の段落のカーソルが「cell」に、2つ目の段落のカーソルが「grab」にそれぞれ変化します。

<!DOCTYPE html>
<html>
<head>
<style>
    #one {
       background-color: beige;
    }
    #two {
       background-color: lavender;
    }
</style>
<script>
    function changeCursor() {
       document.getElementById("one").style.cursor = "cell";
       document.getElementById("two").style.cursor = "grab";
       document.getElementById("Sample").innerHTML = "1つ目の段落にマウスを乗せるとカーソルがcellに、2つ目に乗せるとgrabアイコンに変化します";
    }
</script>
</head>
<body>
    <p id="one">これは1つ目の段落内のサンプルテキストです。これは1つ目の段落内のサンプルテキストです。これは1つ目の段落内のサンプルテキストです。これは1つ目の段落内のサンプルテキストです。</p>
    <p id="two">これは2つ目の段落内のサンプルテキストです。これは2つ目の段落内のサンプルテキストです。これは2つ目の段落内のサンプルテキストです。これは2つ目の段落内のサンプルテキストです。</p>
    <p>下のボタンをクリックしてカーソルプロパティを変更してみましょう</p>
    <button onclick="changeCursor()">カーソルを変更</button>
    <p id="Sample"></p>
</body>
</html>

実行結果

ページを表示すると、最初は通常のカーソルが表示されます。

HTML DOM スタイルの cursor プロパティとは?設定方法と全値一覧をわかりやすく解説

カーソルを変更」ボタンをクリックすると、各段落にマウスを乗せたときのカーソルが「cell」および「grab」に切り替わります。その様子は以下のスクリーンショットのとおりです。

HTML DOM スタイルの cursor プロパティとは?設定方法と全値一覧をわかりやすく解説

まとめ

cursor プロパティを使えば、要素ごとにマウスカーソルの形状を自由に制御できます。リンクには「pointer」、処理中には「wait」や「progress」、ドラッグ可能な要素には「grab」など、UI の意図を視覚的に伝えるために適切なカーソルを選ぶことで、より使いやすい Web サイトを作ることができます。

  1. HTML DOM スタイルの transformOrigin プロパティとは?使い方を徹底解説

    HTML DOM のスタイルオブジェクトが持つ transformOrigin プロパティは、HTML ドキュメント内の要素に対して 2D または 3D 変換を行う際の「原点(基準点)」を取得・設定するためのプロパティです。要素を回転や拡大縮小させる transform プロパティと組み合わせて使うことで、変換の基準となる位置を自由にコントロールできます。構文(シンタックス)transformOrigin プロパティの基本的な構文は以下のとおりです。値の取得object.style.transformOrigin値の設定object.style.transformOrigin = 値指定できる

  2. HTML DOM スタイルの cursor プロパティとは?設定方法と全値一覧をわかりやすく解説

    HTML DOM スタイルの cursor プロパティとはHTML DOM のスタイルにおける cursor プロパティは、マウスポインタが表示されるときのカーソルの種類(形状)を設定・取得するために使用されるプロパティです。JavaScript と組み合わせれば、ユーザーの操作に応じてカーソルを動的に変更することもできます。なお、値を取得したい場合は object.style.cursor を参照するだけで、現在設定されているカーソルの種類を読み取ることができます。構文cursor プロパティを設定するための基本的な構文は以下のとおりです。object.style.cursor = valu