0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

CSSでマーカーラインを実装しよう

Last updated at Posted at 2018-07-16

蛍光ペンで塗られたようなマーカー線をCSSで実装したのでメモです。

まずは失敗例
擬似要素でマーカー線を実装した例です。

HTML
<div class="box">
  <p>今日はとても暑かったです。気温は、東京で<span class="marker">40℃</span>って暑すぎだろ・・・</p>
</div>
CSS
.marker {
  position: relative;
}
.marker::after {
  content: '';
  background: orange;
  width: 100%;
  height: 10px;
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: -1;
}

これでもちゃんとマーカー線になってます。
ただ問題なのはマーカー線の部分が、折り返しにかかったときだけ上手く表示されません。(折り返しがない場合ならこの方法でも問題なしです。)

僕が実装したいのは、折り返してもちゃんとマーカー線が表示させたいので、別の方法を試してみます。

html
<div class="box">
  <p>今日はとても暑かったです。気温は、<span class="marker">東京で40℃</span>って暑すぎだろー</p>
</div>
css
.marker {
  background: linear-gradient(transparent 50%, orange 0%);
}

上手く出来ましたね:relaxed:
linear-gradientで解決することができました!

線の太さはtransparentの値をいじるだけです。

注意点:iOS で見てみると透明になるはずだった部分が黒くなるようです。

解決方法は
background: linear-gradient(rgba(255, 141, 0, 0) 50%, orange 0%);
transparent の部分を rgba() に変更すれば解決です!

0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?