【CSSのみで作成】スクロールを促すアニメーション
カテゴリ : CSSとは, html/css, HTMLとはWebページのヘッダー部分などに良くみられる、ページ下へのスクロールを促すためのサンプルと解説になります。
線が上から下にアニメーションをするシンプルな内容です。
svgやjs(jQuery )などは使用せず、CSS3のanimationプロパティのみで作成をします。
サンプルのコピー&ペーストのみで実装ができます。
記述例(html / css):
<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>無題ドキュメント</title>
<style>
#test{
background-color: #ccc;
height: 150px;
overflow: hidden
}
#test:after{
content:"";
display: block;
width: 1px;
border-left:1px #000 solid;
animation:scroll 2s ease 0s infinite normal;
margin: 0 auto 0;
}
@keyframes scroll{
0%{
height: 0;
}
50%{
height: 150px;
margin-top: 0;
}
100%{
margin-top: 150px;
height: 150px;
}
}
</style>
</head>
<body>
<p id="test"></p>
</body>
</html>
実際の動きはデモからご覧いただけます。
解説:
・HTMLの記述はp(id名test)のみとなります。
・CSSで#testに対しheightを指定し、overflow:hiddenで子要素がはみ出した場合の処理を隠すようにします。(背景色は領域確認用なので削除して構いません)
・#test内に:afterの記述で要素を作成、content:”” で内容は空としborder-leftでアニメーションさせる線を表現します。
・キーフレームの記述で0%時点で高さを0に、50%で高さを150pxにすることで上から下に線が描画されます。
・また50%時点でmargin-topを0に、100%でmargin-topを150pxにすることで線の上の位置を移動させるアニメーションを実装します。




