CSS

二重の打ち消し線にする方法

投稿日:

あるサイトの更新で、日付を打ち消し線で消して、次の行に新しく正しい日付を掲載するよう修正してほしいとの要望がありました。

打ち消し線は、cssでスタイルをもたせてやればスグにできます。

 

ところが、

 

打ち消し線は一重じゃなくて二重線にして〜というクライアントからの修正依頼が。。。

 

!? 二重線ってどうすればいいの???

 

ってことで、急きょ方法を探しました。

結論から言うと、画像で二重線を作って文字に重ねるんです。

いろいろと検索してみたけれど、残念ながらHTML・CSSで打ち消し線の太さを変えたり、二重線にしたりする方法はありませんでした。
HTMLでは、<strike> 〜 </strike>または<s> 〜 </s>で取り消したい文字を囲むと一重線で取り消し線が引けます。でも、線の色は文字と同じ。
また、<del> 〜 </del>でも取り消し線が引けますが、del要素は、上のstrike要素、s要素が「訂正」というニュアンスに対し、「削除」という意味を持っており、検索エンジンからの評価を下げてしまう可能性があるので使用する場所を選びます。

strike要素やs要素は古いHTML要素で、HTML5では完全に廃止になっています。なので、できるだけCSSを使用したほうがよいようです。

最終的に、「背景画像に線の画像を配置して擬似的に二重線に見せる」という荒技で対処しました。

CSSで二重の取り消し線を引く方法

二重線の画像を用意します。(透過処理も忘れずに!)

             
(こちらの画像はご自由にお使いいただいても構いません。)

CSSの設定をしてから、二重線を引きたい文字を
<span class=”doubleline”> 〜 </span>で囲みます。

 

●CSS

.doubleline { /*二重取り消し線*/
background-image:url(画像のURL);
background-repeat:repeat-x;
background-position: center;
}

●HTML

<p><span class="double line">二重の取り消し線</span>を引きます。</p>

 

 

●ブラウザでの表示

二重の取り消し線を引きます。

 

「text-decoration」を使った場合は、文字の上に取り消し線が乗ります。
二重の取り消し線の場合は、背景画像なので、文字の下に二重線が引かれます。でも、実際の画面上ではそんなに気にならないと思います。

 

CSSで一重の取り消し線を引く方法

「text-decoration」プロパティに「line-through」を指定することによって、取り消し線を引くことができます。

●HTML

<p>取り消し線を引きます。</p>

 

●CSS

p { text-decoration: line-through; }

 

●ブラウザでの表示

取り消し線を引きます。

 

この場合は、文字の色と取り消し線の色が同じになります。

取り消し線の色を変えるには?

文字の色と取り消し線の色を変えたいときは、文字部分を<span> 〜 </span>で囲んでグループ化し、この範囲の文字の色に黒を指定します。

 

●HTML

<p><span>取り消し線を赤にします。</span></p>

 

●CSS

p {
  color: red;
  text-decoration: line-through;
  }
span {
   color: black
  }

 

●ブラウザでの表示

取り消し線を赤にします。

保存保存

本サイトの内容に誤りや不正確な記述がある場合やサンプルに基づくいかなる結果も一切の責任を負いかねますので、あらかじめご了承ください。

-CSS

執筆者:

関連記事

no image

リストマーカや番号の左側の隙間について

<ol>や<ul>といった箇条書きを指定した場合、リストマーカや番号の左側に大きな隙間ができてしまう。 ここは、CSSで何も指定していなくても、ブラウザが気を利かせてある程度の …

CSS★floatの解除にclearfix

floatの解除方法はいくつかありますが、 clearfixを使う方法が1番使い勝手がよいのでメモ。 floatを設定すると、要素が浮くことになり、 高さが消失してしまいます。 きちんとfloatを解 …

no image

コメントアウトの書き方★html & css & php

WEB制作ではhtml & css & phpを触ることが多いですが、コメントアウトの書き方がぞれぞれ違うので忘れないようにメモ。 ちなみに、コメントアウトとは、ソースコード側に書いて …

no image

CSS 重なり順序を指定する

背景画像を複数重ねるなら CSS3 より、要素に複数の背景を適用できるようになりました。 複数の背景は、最初に指定した背景が最前面、最後に指定した背景が最も奥のレイヤーになるように、指定した順に重ねて …

no image

CSS★リンク文字の一部分だけ色を変更する

リンク文字のホバーエフェクトでつまずいたときのメモ。 <HTML> <a href=“#” class=”demo1″> リンクテキストのマウスオーバー リンクテキストとマウス …

サイト制作・グラフィック制作をしているデザイナーです。制作で躓いたことの備忘録としてこのブログを始めました。
たくさんの検索結果から、実際に何度も何度も自分で試してみて、自分に合うなと思った方法やうまくいった方法をこのブログに書き留めています。
プログラム関係のことはもっぱらコピペ派。
自分でゴリゴリ書くことはできません。。。プログラムが分かる人がうらやましいです。
そんな私でもなんとかサイト制作ができるのはグーグル先生と貴重な情報をおしげもなく公開してくださっているたくさんの方々のおかげ。
有志のみなさまに日々感謝しつつ制作させていただいています。