Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【HTML Living Standard】ins要素の使い方

ins要素の使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

insオブジェクトは、HTML文書において、新しく挿入されたテキストの範囲を示すためのオブジェクトです。この要素は、主に文書の改訂や編集履歴を明確にする目的で使用されます。例えば、既存の段落に新たな文章を追加した際、どの部分が追加されたのかを読者に伝えるために利用できます。

ブラウザは通常、ins要素で囲まれたテキストに下線(アンダーライン)などの視覚的なスタイルを適用して表示します。これにより、読者は文書のどの部分が後から追加されたのかを直感的に把握できます。

ins要素には、変更に関する詳細情報を提供するオプションの属性がいくつかあります。cite属性を使用すると、変更の説明を提供するリソース、例えば変更履歴のドキュメントのURLなどを指定できます。また、datetime属性を使用すると、テキストが挿入された正確な日時を示すことができます。この属性の値は、日付と時刻の国際標準フォーマット(YYYY-MM-DDThh:mm:ssTZDなど)に従う必要があります。

ins要素は、削除されたテキストを示すdel要素と組み合わせて使われることが多く、これら二つの要素を併用することで、文書の変更履歴をより詳細かつ意味的に表現することが可能になります。ただし、単にテキストに下線を引くといった視覚的な表現のみが必要な場合は、ins要素ではなくCSSのtext-decorationプロパティを使用することが推奨されます。ins要素は、セマンティックな意味、つまり「この部分は挿入されたものである」という情報を提供することに重きを置いています。

公式リファレンス: <ins>: The Inserted Text element

構文(syntax)

1<ins>挿入されたテキスト</ins>

引数(parameters)

引数なし

引数はありません

戻り値(return)

戻り値なし

戻り値はありません

サンプルコード

ins要素で挿入部分を印刷表示する

1<!DOCTYPE html>
2<html lang="ja">
3<head>
4    <meta charset="UTF-8">
5    <meta name="viewport" content="width=device-width, initial-scale=1.0">
6    <title>ins要素のサンプルコード</title>
7</head>
8<body>
9    <h1>製品機能の変更履歴</h1>
10    <p>このドキュメントは、製品の最新バージョンに関する情報を含んでいます。</p>
11
12    <h2>2023年10月27日更新内容</h2>
13    <p>
14        以前のバージョンでは、基本的なデータ管理機能を提供していました。
15        <ins>今回のアップデートにより、リアルタイムでのデータ分析機能が追加されました。</ins>
16        これにより、ユーザーはより迅速に意思決定を行うことができます。
17    </p>
18
19    <h2>利用規約の改訂</h2>
20    <p>
21        利用規約の一部が改訂されました。
22        <ins datetime="2023-10-27T14:30:00Z">新しいプライバシーポリシーに関する項目が追加され、個人情報の取り扱いについて詳細に記述されています。</ins>
23        詳細は、改訂された利用規約をご確認ください。
24    </p>
25
26    <!--
27    ins(inserted)要素は、文書に新しく挿入されたテキストコンテンツを示します。
28    この要素は、文書の改訂時に追加された情報をマークアップするのに役立ちます。
29    例えば、契約書や報告書などのドキュメントを印刷する際に、
30    どの部分が新しく追加されたのかを読者に明確に伝えることができます。
31    ins要素で囲まれたテキストは、ブラウザや印刷時に通常下線が引かれて表示されます。
32    datetime属性を使用すると、挿入された日時を指定できます。
33    -->
34</body>
35</html>

HTMLのins要素は、Webページやドキュメントにおいて、新しく挿入されたテキストコンテンツを示すために使用されます。この要素は「inserted(挿入された)」の略であり、文書の改訂履歴や変更点を読者に明確に伝える際に特に役立ちます。例えば、契約書や報告書、利用規約などのドキュメントが更新された際、どの部分が新規に追加されたのかを視覚的に分かりやすく表示することができます。

ブラウザでは、ins要素で囲まれたテキストは通常、下線が引かれて表示されるため、変更点が瞬時に把握可能です。この視覚的な表現は、ドキュメントを印刷する際にもそのまま適用されることが多く、印刷物においても改訂箇所がはっきりと示されます。

この要素自体には、直接的に機能を制御する「引数」という概念はありませんが、datetime属性を付与することで、そのテキストが挿入された正確な日時を指定することが可能です。これにより、いつ、どのタイミングで情報が追加されたのかを機械的にも明確にすることができます。HTMLの要素であるため、特定の処理結果を返す「戻り値」という機能は持っていません。ins要素は、コンテンツの意図を明確にし、文書の変更点を効果的に伝達するための重要なセマンティック要素です。

ins要素は、HTML文書に新しく追加されたテキストコンテンツであることを意味的に示します。ブラウザや印刷時には、通常下線が引かれて表示されることが多いですが、これはデフォルトのスタイルであり、見た目はCSSで自由に制御できます。単にテキストに下線を引きたいだけであれば、ins要素を使わずCSSのtext-decorationプロパティを利用してください。ins要素は、改訂履歴など「内容が挿入された」という事実を伝える場合に適切です。datetime属性を使用すると、挿入された具体的な日時を記録でき、文書の変更履歴の透明性を高めます。特に、変更点が重要な契約書や報告書などを印刷する際、読者に新しく追加された箇所を明確に伝えるために役立ちます。

HTML ins要素と印刷時の改ページ制御

1<!DOCTYPE html>
2<html lang="ja">
3<head>
4    <meta charset="UTF-8">
5    <meta name="viewport" content="width=device-width, initial-scale=1.0">
6    <title>HTML ins要素と印刷時の改ページ制御</title>
7    <style>
8        /* 画面表示時の基本的なスタイル */
9        body {
10            font-family: sans-serif;
11            margin: 20px;
12            line-height: 1.6;
13        }
14
15        /* 削除されたテキストのスタイル */
16        del {
17            color: gray;
18            text-decoration: line-through;
19        }
20
21        /* 挿入されたテキストのスタイル */
22        ins {
23            color: green;
24            text-decoration: underline;
25        }
26
27        /* 印刷時のスタイル定義 */
28        @media print {
29            /* 挿入されたテキスト(ins要素)を印刷時に目立たせる */
30            ins {
31                background-color: #e0ffe0; /* 薄い緑色の背景 */
32                color: black;              /* 文字色は黒 */
33                text-decoration: none;     /* 下線をなくし、背景色で強調 */
34                padding: 0 2px;            /* わずかなパディング */
35            }
36
37            /* 削除されたテキスト(del要素)は印刷時に表示しない */
38            del {
39                display: none;
40            }
41
42            /* 特定のセクション(例: 変更内容を含む段落)の前に改ページを挿入する */
43            .section-with-major-change {
44                page-break-before: always; /* この要素の前に必ず改ページ */
45                margin-top: 1cm;           /* 改ページ後の上部余白 */
46                border-top: 1px dashed #ccc; /* 区切り線 */
47                padding-top: 10px;
48            }
49
50            /* ins要素自体に改ページを適用する例 (非推奨であり、通常は親要素に適用します) */
51            /* ins要素は通常インライン要素ですが、display: block; を指定することでブロック要素のように扱えます。
52               しかし、ins要素の意図からは外れるため、特別な場合を除き推奨されません。 */
53            ins.page-break-block {
54                display: block;            /* ブロック要素として表示 */
55                page-break-before: always; /* このins要素の前に改ページ */
56                page-break-after: always;  /* このins要素の後に改ページ */
57                padding: 15px;
58                border: 1px solid #4CAF50; /* 境界線を追加 */
59                background-color: #f0fff0;
60                margin: 20px 0;
61            }
62        }
63    </style>
64</head>
65<body>
66    <h1>文書変更履歴の表示と印刷時の制御</h1>
67
68    <p>
69        この段落は文書の通常のテキストです。
70        特に変更された部分はありません。
71    </p>
72
73    <p class="section-with-major-change">
74        これは重要な変更を含むセクションです。
75        以前の記述では、<del>古い情報がここにありました。</del>
76        しかし、現在では<ins>最新の情報に更新されました。</ins>
77        この変更はシステム全体に影響するため、印刷時に新しいページから始めることが望ましいです。
78    </p>
79
80    <p>
81        別の箇所でも小さな修正が行われました。
82        <ins>新しい機能が追加</ins>され、
83        <del datetime="2023-10-26">一部のバグが修正されました</del><ins datetime="2023-11-15">パフォーマンスが改善されました</ins>84        これらの変更はそれほど重要ではないため、改ページは適用しません。
85    </p>
86
87    <h2>特定のins要素の前後に改ページを強制する例</h2>
88    <p>
89        以下のテキストは、非常に長い変更内容や、独立した注釈として追加された場合を想定しています。
90        通常、このような改ページはins要素の親要素(例: 段落やセクション)に適用されますが、
91        ここでは学習目的のためにins要素自体に直接適用する方法を示します。
92    </p>
93    <ins class="page-break-block">
94        この部分全体が、<br>
95        印刷時に独立したページとして扱われることを意図しています。<br>
96        これは、例えば新しい法規制に関する全文の追加など、<br>
97        非常に長い追記があった場合に利用される可能性があります。<br>
98        ただし、`ins`要素が本来インライン要素であることと、<br>
99        コンテンツフローへの影響を考慮し、慎重に利用してください。
100    </ins>
101    <p>
102        これは上記の特別な`ins`要素の後に続く段落です。
103        新しいページから始まっているはずです。
104    </p>
105
106    <p>
107        最終的な段落です。
108    </p>
109</body>
110</html>

HTMLのins要素は、文書に新しく「挿入された」テキストを示すために使われます。これにより、以前のバージョンから変更された箇所を明確に表示できます。例えば、削除されたテキストを示すdel要素と組み合わせて、文書の改訂履歴を視覚的に分かりやすく表現する際に役立ちます。ins要素自体には、特定の引数や戻り値は定義されていません。

提供されたサンプルコードでは、このins要素の基本的な使い方に加え、ウェブページを印刷する際の表示方法を細かく制御する方法が示されています。CSSの@media printブロックを使うことで、画面で閲覧している時とは異なるスタイルを印刷時にのみ適用できます。具体的には、ins要素で示された挿入テキストに薄い緑色の背景を付けて目立たせたり、del要素(削除されたテキスト)を印刷時には表示しないように設定しています。

さらに重要な点として、page-break-before: always;のようなCSSプロパティを使って、特定の要素の前に強制的に改ページを挿入する方法が紹介されています。これにより、例えば「重要な変更を含むセクション」など、ユーザーが特に注目すべき情報を新しいページから印刷し始めることができます。サンプルでは、ins要素自体に改ページを適用する例も示されていますが、ins要素は通常テキストの一部として扱われるインライン要素であるため、一般的には段落やセクションといった親要素に改ページを設定することが推奨されます。この機能は、契約書や技術文書など、変更履歴を正確かつ分かりやすく印刷する必要がある場合に特に有用です。

ins要素は、文書に挿入されたテキストを示すために使用され、主に変更履歴の可視化に役立ちます。レイアウトや印刷時の改ページ制御は、CSSを用いて行うことが基本です。

印刷時のスタイルは@media printブロック内で定義することで、画面表示時とは異なる見え方や動作を設定できます。改ページを制御するpage-break-beforeなどのCSSプロパティは、通常、段落(<p>)やセクション(<div>など)といったブロックレベル要素に適用するのが一般的です。

ins要素はデフォルトでインライン要素であるため、直接改ページを適用するにはdisplay: block;を指定する必要がありますが、これはins要素の本来の役割から外れる場合があるため、特別な意図がない限りは、改ページを適用したい箇所の親となるブロック要素にスタイルを適用することを検討してください。このサンプルコードでは、学習目的でins要素に直接改ページを適用する例も示していますが、その使用は通常推奨されない点に注意が必要です。適切な要素にスタイルを適用することで、HTMLの意味論を保ちつつ、印刷時の見栄えを調整できます。

関連コンテンツ

関連IT用語

関連プログラミング言語