<div id="top"></div>
<h1>CSSのみで実装したBack to Topのサンプル</h1>
<p>一番下までスクロールしてください。</p>
<p>一番下までスクロールしてください。</p>
<p>一番下までスクロールしてください。</p>
<p>一番下までスクロールしてください。</p>
<p>一番下までスクロールしてください。</p>
<p>一番下までスクロールしてください。</p>
<footer id="footer">footer</footer>
<a href="#top" id="backToTop">Back To Top</a>
html {
overflow: hidden;
}
body {
height: 100vh;
container-type: scroll-state;
overflow: auto;
scroll-behavior: smooth;
}
p + p {
margin-top: 50vh;
}
#footer {
display: grid;
place-items: center;
height: 300px;
background: #ccc;
}
#backToTop {
transform: translateY(0);
transition: transform 0.5s;
position: fixed;
bottom: 20px;
right: 20px;
padding: 10px 20px;
background: #333;
color: #fff;
text-decoration: none;
border: none;
border-radius: 5px;
cursor: pointer;
opacity: 1;
}
@container scroll-state(scrollable: bottom) {
#backToTop {
transform: translateY(100px);
opacity: 0;
}
}
一番下までスクロールしてください。
一番下までスクロールしてください。
一番下までスクロールしてください。
一番下までスクロールしてください。
一番下までスクロールしてください。
一番下までスクロールしてください。
Back To Top