HTMLのid属性とは?基本ルールと実践的なサンプルコードを解説
HTMLのid属性とは
HTMLのid属性は、ページ内の特定の要素に一意の識別子(ユニークなID)を割り当てるための属性です。この識別子を利用することで、CSSによるスタイル適用や、JavaScriptによる要素の操作を、その要素だけに限定して行うことができます。
重要なルールとして、1つのHTMLページ内で同じidを複数の要素に付けることはできません。idは必ずページ内で一意である必要があります。また、CSSやJavaScriptからidを参照する際には、先頭にハッシュ記号(#)を付けます。
id属性の主な用途
- CSSでのスタイリング:「#id名」セレクタを使って、特定の要素のみにスタイルを適用できます。
- JavaScriptでの操作:document.getElementById()メソッドを使って、該当する要素を取得し、動的に内容を変更したりイベント処理を行ったりできます。
- ページ内リンク:「#id名」へのアンカーリンクを作成し、ページ内の特定位置へジャンプさせることができます。
注意: HTML5以降では、数字で始まるidも指定できるようになりました。ただし、CSSセレクタで扱いやすくするため、英字で始まるidを使用することが一般的に推奨されています。
id属性の使用例
以下は、id属性を使ってマウスイベント処理を実装したサンプルです。idで指定した各要素に対して、CSSでスタイルを適用しつつ、JavaScriptのgetElementById()で要素を取得してゲームのようなインタラクションを実現しています。
<!DOCTYPE html>
<html>
<head>
<title>MouseEvent clientX</title>
<style>
* {
padding: 2px;
margin:5px;
}
form {
width:70%;
margin: 0 auto;
text-align: center;
}
#outer {
width:70%;
margin: 0 auto;
padding: 0;
text-align: center;
border:1px solid black;
height: 105px;
background-color: #28a745;
}
input[type="button"] {
border-radius: 10px;
}
#upper {
border-bottom: 1px solid black;
height: 40px;
margin: 0 0 15px 0;
background-color: #DC3545;
}
#lower {
border-top: 1px solid black;
height: 40px;
margin: 15px 0 0 0;
background-color: #DC3545;
}
</style>
</head>
<body>
<form>
<fieldset>
<legend>MouseEvent-clientX</legend>
<div id="outer">
<div id="upper"><h2>Danger</h2></div>
<div id="lower"><h2>Danger</h2></div>
</div>
<input type="button" id="start" value="Start" onclick="gameStart()">
<div id="divDisplay"></div>
</fieldset>
</form>
<script>
var divDisplay = document.getElementById('divDisplay');
var gameDisplay = document.getElementById('outer');
function playGame(event) {
var x = event.clientX;
var y = event.clientY;
if(y > 95 && y < 110){
divDisplay.textContent = 'Keep Going!';
if(x === 439){
divDisplay.textContent = 'Congrats! You Did it!';
gameDisplay.removeEventListener('mousemove', playGame);
}
} else {
divDisplay.textContent = 'You moved to DANGER area. You loose!';
gameDisplay.removeEventListener('mousemove', playGame);
}
}
function gameStart(){
gameDisplay.addEventListener('mousemove',playGame);
}
</script>
</body>
</html>このコードでは、「outer」「upper」「lower」「start」「divDisplay」という5つのidが使われています。CSSでは「#outer」のようにセレクタを指定してスタイルを定義し、JavaScriptではgetElementById('outer')のように要素を参照しています。
実行結果
上記のコードを実行すると、以下のような出力が得られます。
1) 「Start」ボタンをクリック後、カーソルが緑色(安全)エリアにある場合:

2) 「Start」ボタンをクリック後、カーソルが緑色(安全)エリアの端にある場合:

3) 「Start」ボタンをクリック後、カーソルが赤色(危険)エリアに入った場合:

まとめ
id属性は、HTML要素に一意の名前を与えるための基本的かつ重要な仕組みです。CSSでのピンポイントなスタイル指定、JavaScriptによるDOM操作、ページ内リンクなど、Web開発のさまざまな場面で活用されます。「ページ内で重複しない」「#で参照する」という2つのポイントを押さえておきましょう。
-
HTMLのwrap属性とは?textareaのテキスト折り返し設定を解説
wrap属性とは HTMLのwrap属性は、<textarea>要素内のテキストを、フォーム送信時にどのように折り返すかを定義する属性です。画面上での見た目だけでなく、サーバーへ送信されるデータに改行コードを含めるかどうかを制御できる点が特徴です。 指定できる値 soft:画面上では自動的に折り返して表示されますが、送信されるテキストには改行コードが挿入されません(デフォルト値)。 hard:画面上の折り返し位置に基づいて、フォーム送信時に改行コードが挿入されます。この値を使用する場合はcols属性の指定が必須です。 構文 wrap属性の基本的な書き方は以下のとおりです。
-
HTMLのdraggable属性とは?使い方とサンプルコードを解説
HTMLのdraggable属性とはHTML DOMのdraggable属性は、要素がドラッグ可能かどうかを示す真偽値(boolean)を取得・設定するための属性です。この属性を活用することで、ドラッグ&ドロップ操作に対応したインタラクティブなWebページを簡単に実装できます。注意:リンク(<a>タグ)や画像(<img>タグ)は、デフォルトでドラッグ可能に設定されています。draggable属性に指定できる値true … 要素をドラッグ可能にするfalse … 要素をドラッグ不可にするauto … ブラウザのデフォルト動作に従うHTML draggable属性の使用例以