CSSだけで作るシンプルなニュースティッカー

Ads

Result


メディアサイト等でまだ見かけるやつ。
:hoverで一時停止するようにしています。

css

@keyframes ticker {/*アニメーション設定。右から左に流す、を繰り返す*/
  0% {
    transform: translate(0, 0);
    visibility: visible;
  }
  100% {
    transform: translate(-100%, 0);
  }
}
.ticker-wrap {/*ティッカーを包括している親要素*/
  position: fixed;
  bottom: 0;
  width: 100%;
  overflow: hidden;
  height: 2rem;
  background-color: rgba(0, 0, 0, 0.9);
  padding-left: 100%;
  box-sizing: content-box;
}
.ticker-wrap .ticker {/*ティッカー本体*/
  display: inline-block;
  height: 2rem;
  line-height: 2rem;
  white-space: nowrap;
  padding-right: 100%;
  box-sizing: content-box;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
  animation-name: ticker;
  animation-duration: 30s;
}
.ticker-wrap .ticker__item {/*個別設定*/
  display: inline-block;
  padding: 0 2rem;
  font-size: 1rem;
  color: white;
}

.ticker-wrap:hover .ticker{/*本体にマウスホバーしたらアニメーションを一時停止*/
  animation-play-state: paused;
}

html

<div class="ticker-wrap">
<div class="ticker">
  <div class="ticker__item">CSSだけでニュースティッカー</div>
  <div class="ticker__item">いろいろなニュース</div>
  <div class="ticker__item">CSSは難しい</div>
  <div class="ticker__item">今日はいい天気だ</div>
 
</div>
</div>

via

Pure CSS Ticker (Horizontal)