読み込み中...

HTMLの取り消し線を完全ガイド!初心者から上級者まで使える7つのテクニック

HTMLで取り消し線を使う方法を学ぶ初心者 HTML
この記事は約12分で読めます。

【サイト内のコードはご自由に個人利用・商用利用いただけます】

この記事では、プログラムの基礎知識を前提に話を進めています。

説明のためのコードや、サンプルコードもありますので、もちろん初心者でも理解できるように表現してあります。

本記事のサンプルコードを活用して機能追加、目的を達成できるように作ってありますので、是非ご活用ください。

※この記事は、一般的にプロフェッショナルの指標とされる『実務経験10,000時間以上』を満たす現役のプログラマチームによって監修されています。

※Japanシーモアは、常に解説内容のわかりやすさや記事の品質に注力しております。不具合、分かりにくい説明や不適切な表現、動かないコードなど気になることがございましたら、記事の品質向上の為にお問い合わせフォームにてご共有いただけますと幸いです。
(送信された情報は、プライバシーポリシーのもと、厳正に取扱い、処分させていただきます。)

はじめに

この記事では、Webページでよく見かける取り消し線の効果的な使用方法について、初心者から上級者まで幅広く役立つ情報を紹介します。

取り消し線は単なるテキスト装飾に留まらず、特定の内容を視覚的に打ち消すことで読者の注意を引き、メッセージの明確化を助ける重要な役割を担います。

本ガイドでは、基本的なHTMLタグの使用から、CSSやJavaScriptを活用した応用技術まで、詳細な解説と共に、実際のWeb開発にすぐに活かせる知識を身につけることができます。

●HTML取り消し線の基本

HTMLにおける取り消し線は、<s>タグや<del>タグを使用して表現されます。

これらのタグは視覚的にテキストを横切る線を加えることで、テキストが削除されたり、変更されたりしたことを表します。

特に<del>タグは、文書内での変更履歴を表す際に有効で、変更前の内容を保持しつつ、その変更がいつ行われたかの情報も含めることが可能です。

○取り消し線とは何か?

取り消し線は、文書やウェブページにおいて特定のテキスト部分を取り消したいときに使用される視覚的な手法です。

この線は通常、テキストの上に水平に引かれ、テキストの意味を無効にするかのように見せかけます。

マーケティングの分野では、価格の割引やキャンペーン中の旧価格を表す際に効果的に用いられます。

○HTMLで取り消し線を使用する方法

取り消し線をHTMLで実装するには、<s>タグまたは<del>タグを使用します。

<s>タグは、単純に視覚的な取り消し線をテキストに追加する場合に利用されます。

<p>通常価格<s>¥5000</s>セール価格¥3500</p>

このコードは、「通常価格」と表示された価格に取り消し線を加え、セール中の新しい価格を隣に表示しています。

これにより、ユーザーは価格が下がったことを直感的に理解できます。

一方、<del>タグは、文書の編集過程を示すために使われることが多く、元のテキストに対する変更点を明確にします。

このタグを使用した例を見てみましょう。

<p>この文章は<del datetime="2023-04-10">重要ではない</del>重要です。</p>

この例では、<del>タグが適用された部分に「重要ではない」というテキストが取り消され、その変更がいつ行われたかの情報もdatetime属性を使用して記録されています。

●取り消し線の使い方

取り消し線を利用する方法は多岐にわたります。

HTMLでの基本的な使用法を学んだ後は、さらにCSSやJavaScriptを駆使して、より動的でユーザーの操作に応じた取り消し線の表示を実現する方法を探求しましょう。

ここでは、初心者でも理解しやすいように、具体的なコード例を交えながら、取り消し線のさまざまな応用方法を段階的に解説していきます。

○サンプルコード1:単語に取り消し線を追加する

Webページでよく見かけるキャンペーン情報やセールの価格表示において、古い価格に取り消し線を引くことは一般的です。

ここでは、HTMLとCSSを使用して、特定の単語に対して取り消し線を追加する方法を紹介します。

<!-- HTMLで取り消し線を追加する基本的な方法 -->
<p>定価<s>¥5,000</s> セール価格¥3,000</p>

この例では、<s>タグを使用して「定価¥5,000」の部分に取り消し線を引いています。

これにより、視覚的に価格が下がったことが一目でわかります。

○サンプルコード2:CSSを使った取り消し線のスタイル変更

取り消し線の見た目をカスタマイズするにはCSSを活用します。

CSSを使うことで、線の色や太さ、スタイルを自由に設定でき、ページのデザインに合わせた取り消し線を表現することが可能です。

<!-- CSSを利用して取り消し線のスタイルをカスタマイズする方法 -->
<style>
  .discount {
    text-decoration: line-through;
    text-decoration-color: red; /* 線の色 */
    text-decoration-style: wavy; /* 線のスタイル */
  }
</style>
<p>定価<span class="discount">¥5,000</span> セール価格¥3,000</p>

このコードでは、.discount クラスに対して text-decoration プロパティを使用し、赤色の波線で取り消し線を表示しています。

これにより、通常の直線ではなく、目を引くデザインで情報を伝えることができます。

○サンプルコード3:JavaScriptで動的に取り消し線を制御する

Webページにインタラクティブな要素を加えたい場合、JavaScriptを使用してユーザーの操作に応じて取り消し線を動的に表示したり隠したりすることができます。

例えば、ボタンをクリックすることで取り消し線をトグル(オン・オフ切り替え)することが可能です。

<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>取り消し線の動的制御</title>
<style>
  .toggle {
    text-decoration: line-through;
    display: none; /* 初期状態では非表示 */
  }
</style>
</head>
<body>
<p>セール価格<span id="price">¥3,000</span></p>
<button onclick="toggleLineThrough()">価格を切り替え</button>

<script>
function toggleLineThrough() {
  var price = document.getElementById('price');
  price.style.display = (price.style.display == 'none' ? '' : 'none');
}
</script>
</body>
</html>

このスクリプトでは、toggleLineThrough 関数がボタンクリックによって呼び出され、指定したID(price)の要素に対してCSSスタイルを動的に適用・解除します。

これにより、ユーザーが直接、価格表示の状態をコントロールできるようになります。

●よくあるエラーと対処法

Web開発において取り消し線を利用する際には、いくつかの一般的なエラーに遭遇することがあります。

これらの問題が発生する原因とその対処法を理解することで、より効率的かつ効果的に取り消し線をWebページに実装することが可能になります。

○エラー例1:取り消し線が表示されない場合

取り消し線が表示されない一番の原因は、HTMLタグが正しく使用されていない、またはCSSでのスタイル指定が適切でない場合です。

例えば、<s>タグの代わりに誤って別のタグを使用している、またはCSSのtext-decorationプロパティが無効になっていることが考えられます。

解決策として、まず、HTMLタグが正しく<s>または<del>であることを確認します。

次に、CSSファイルが正しくリンクされているか、またスタイルが正しく適用されているかを検証してください。

<!-- 正しく取り消し線を表示するHTML -->
<p>この価格<s>¥10,000</s>はセール中です!</p>
/* CSSで明示的に取り消し線を追加する場合 */
s {
    text-decoration: line-through;
}

このように、CSSでtext-decoration: line-through;を適切に設定することで、確実に取り消し線が表示されるようになります。

○エラー例2:取り消し線のスタイルが適用されない場合

取り消し線のスタイルが期待どおりに適用されない場合は、CSSのカスケードや継承の問題が原因である可能性があります。

他のCSSルールによって取り消し線のスタイルが上書きされていることが考えられます。

解決策として、CSSの特異性と継承を考慮し、適用したいスタイルが他のスタイルによって上書きされないようにします。

/* 特異性を高めて取り消し線のスタイルを強制適用する */
html body p s {
    text-decoration: line-through solid red;
}

この例では、より具体的なセレクタを使用して取り消し線のスタイルを定義しています。

これにより、他の一般的なスタイルの影響を受けにくくなり、意図したデザインを確実に適用できます。

●取り消し線の応用例

取り消し線は、Webデザインだけでなく、インタラクティブなユーザーインターフェースの設計にも効果的に活用できます。

プロモーション価格の表示や、ユーザーのインタラクションに基づく動的な内容変更など、さまざまなシナリオで取り消し線を用いることで、情報の提示方法を工夫し、ユーザーの関心を引きつけることが可能です。

○サンプルコード4:取り消し線を使ったプロモーション価格表示

オンラインショップでセールを実施する際、元の価格に取り消し線を加えてから、新しいセール価格を隣に表示することが一般的です。

この方法は、ユーザーに対して割引額の魅力を直感的に伝える効果があります。

<!-- セール価格表示の例 -->
<p>定価 <s>¥12,000</s> セール価格¥9,000</p>

このHTMLコードは、定価として表示されていた12,000円に取り消し線を引き、新たにセール価格として9,000円を提示しています。

これにより、ユーザーは価格の差を明確に認識でき、購入意欲を刺激されます。

○サンプルコード5:取り消し線とテキスト装飾を組み合わせる

取り消し線は、テキストに追加のスタイルを加えることで、さらに注目を集めることができます。

例えば、取り消し線と色変更を組み合わせることで、視覚的なインパクトを強化できます。

<!-- 取り消し線と色変更を組み合わせたテキスト装飾 -->
<p><s style="color: grey;">旧価格¥15,000</s> <span style="color: red;">新価格¥10,000</span></p>

この例では、取り消し線を適用した旧価格に灰色を使用し、新価格には赤色を使用しています。

これにより、新旧の価格差が一目でわかりやすく表現されています。

○サンプルコード6:ユーザー操作による取り消し線の切り替え

ウェブサイトにおいてユーザーのアクションに応じて取り消し線の表示を切り替えたい場合、JavaScriptを使用して動的に制御することができます。

下記の例では、ボタンクリックによって価格表示に取り消し線を追加または除去する動作を表しています。

<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>動的な取り消し線の切り替え</title>
</head>
<body>
<p id="price">¥20,000</p>
<button onclick="toggleStrikethrough()">価格の切り替え</button>

<script>
function toggleStrikethrough() {
    var priceElement = document.getElementById('price');
    priceElement.style.textDecoration = priceElement.style.textDecoration === 'line-through' ? 'none' : 'line-through';
}
</script>
</body>
</html>

このスクリプトは、priceというIDを持つ段落のテキスト装飾をline-through(取り消し線)とnone(装飾なし)で切り替える機能を持っています。

ボタンをクリックすることで、ユーザー自身が価格表示のスタイルを変更できるようになっています。

●エンジニアなら知っておくべき豆知識

Web開発の現場では、HTML、CSS、JavaScriptの基本的な知識だけでなく、それらの技術がどのように連携し合っているのかを理解することが重要です。

また、ブラウザ間の互換性やパフォーマンスの最適化も、優れたウェブサイトやアプリケーションを構築する上で欠かせないスキルです。

○豆知識1:HTMLとCSS、JavaScriptの連携技術

HTML、CSS、JavaScriptは、Web開発において互いに補完し合う技術です。

HTMLがコンテンツの構造を定義する骨格であるのに対し、CSSはその見た目やスタイルを整え、JavaScriptはページに動的な要素やインタラクティブな機能を加える役割を果たします。

これらの技術を効果的に組み合わせることで、ユーザーにとって魅力的で機能的なウェブページを作成することが可能です。

例えば、HTMLでフォームを作成し、CSSで美しくスタイリングを施し、JavaScriptで入力値の検証を行うことができます。

フォームがただの入力受付ツールでなく、ユーザーとサイトが対話するためのゲートウェイとして機能します。

○豆知識2:ブラウザ互換性と最適化のポイント

ブラウザの互換性は、異なるブラウザ間でウェブページが一貫した見た目と動作を保つことを指します。

この互換性を確保することは、ユーザーが使用する多様なデバイスやブラウザに対応するために非常に重要です。

また、Webページのロード時間を短縮するための最適化技術も、ユーザー体験を向上させるために不可欠です。

ブラウザ互換性を高める一つの方法は、CSSのプレフィックスを適切に使用することです。

さまざまなブラウザで特定のCSS機能がサポートされる前に、ベンダー固有のプレフィックス(例えば、-webkit-、-moz-)を使用することで、新しいスタイルが予期せず表示されるのを防ぎます。

最適化のためには、画像サイズの削減、JavaScriptとCSSの圧縮、不要なリダイレクトの削除などが挙げられます。

この技術を用いることで、ページのロード時間を大幅に短縮し、最終的にユーザーのサイト滞在時間の向上につながります。

まとめ

この記事では、HTMLでの取り消し線の使用方法、様々なスタイリングオプション、そしてJavaScriptを活用した動的な制御方法を解説しました。

これらの技術を駆使することで、ウェブページにおける情報の提示方法をより効果的にし、ユーザーの体験を向上させることが可能です。

取り消し線は単なるテキスト装飾に留まらず、価格表示やプロモーションなど、さまざまな文脈で有効活用できることをご理解いただけたと思います。