コピペで使えるcssアニメーション

コピペで使えるCSSアニメーションをメモしておきます。
よかったらご自由にコピペして使ってください。

一文字ずつふわっと表示テキストアニメーション

<h1 class="title">
   <span>テ</span>
   <span>キ</span>
   <span>ス</span>
   <span>ト</span>
   <span>ア</span>
   <span>ニ</span>
   <span>メ</span>
   <span>ー</span>
   <span>シ</span>
   <span>ョ</span>
   <span>ン</span>
</h1>
.title {
  display: flex;
  overflow: hidden;
}

.title span {
  display: block;
  transform: translate(0, 105%);
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
}

.title.-visible span {
  transform: translate(0, 0);
}

.title span:nth-child(2) {
  transition-delay: 0.06s;
}
.title span:nth-child(3) {
  transition-delay: 0.12s;
}
.title span:nth-child(4) {
  transition-delay: 0.18s;
}
.title span:nth-child(5) {
  transition-delay: 0.24s;
}
.title span:nth-child(6) {
  transition-delay: 0.30s;
}
.title span:nth-child(7) {
  transition-delay: 0.36s;
}
.title span:nth-child(8) {
  transition-delay: 0.42s;
}
.title span:nth-child(9) {
  transition-delay: 0.48s;
}
.title span:nth-child(10) {
  transition-delay: 0.54s;
}
.title span:nth-child(11) {
  transition-delay: 0.6s;
}
<script src="https://code.jquery.com/jquery-3.6.0.slim.min.js"></script>
  <script type="text/javascript">
    const CLASSNAME = "-visible";
    const $target = $(".title");

    setInterval(() => {
    $target.addClass(CLASSNAME);})
  </script>

※jQueryのCDNを先に読み込まないと動きません。

背景が幕のように上がって文字がふわっと表示される

<div class="bg">
<span class="title">
<span class="text01">ANIMATION</span>
<span class="text02">BACKGROUND</span>
<span class="text03">テキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキスト</span>
</span>
</div>
.bg {
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 100vh;
  color: #fff;
  padding:0 100px;
}

.bg:before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #62c9c7;
  transform: translate(0, 100%);
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s;
  content: '';
}

.bg.-visible:before {
  transform: translate(0, 0);
}

/* テキストのスタイル */
.title {
  display: block;
  color: #fff;
  text-align: center;
}

.title span {
  display: block;
  opacity: 0;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s, opacity linear 2s;
}

.title .text01 {
  transform: translate(0, 40px);
  font-size: 20px;
  transition-delay: .5s;
}

.title .text02{
  transform: translate(0, 30px);
  font-size: 48px;
  transition-delay: .7s;
}

.title .text03 {
  margin-top: 18px;
  transform: translate(0, 30px);
  font-size: 16px;
  transition-delay: 1s;
}

.bg.-visible .title span {
  opacity: 1;
  transform: translate(0, 0);
}
<script src="https://code.jquery.com/jquery-3.6.0.slim.min.js"></script>
<script type="text/javascript">
const CLASSNAME = "-visible";
const $target = $(".bg");

setInterval(() => {
  $target.addClass(CLASSNAME);
});
</script>

画像使わずCSSのみでローディングアニメーション

<i class="loading-icon"></i>
.loading-icon {
  display: inline-block;
  box-sizing: border-box;
  width: 15px;
  height: 15px;
  border-radius: 50%;
  box-shadow:
    0 -30px 0 #eee,     /*  上  */
    21px -21px 0 #ddd,  /* 右上 */
    30px 0 0 #ccc,      /*  右  */
    21px 21px 0 #bbb,   /* 右下 */
    0 30px 0 #aaa,      /*  下  */
    -21px 21px 0 #999,  /* 左下 */
    -30px 0 0 #666,     /*  左  */
    -21px -21px 0 #000; /* 左上 */
  animation: rotate 1s steps(8) 0s infinite;
}

@keyframes rotate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

参考サイト

簡単CSSアニメーション&デザイン20選(ソースコードと解説付き)
こちらのページを参考にさせてもらいながら、メモの記述は少しアレンジしました。
ソースコードと解説がわかりやすく書かれていて、とても参考になりました。ありがとうございます。
メモ以外のステキなtipsもたくさん書かれているので、良かったら覗いてみてください。

ABOUT US

yukipan
Web制作会社で働いてます。パンダとかリラックマとか、まあるいものが好き。好奇心旺盛で、何にでも興味をもってしまう。とりあえずやってみてから取捨選択するのがモットー。今はグリーンカレーとチャイと株式投資がブーム。