このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docsコミュニティーについてもっと知り、仲間になるにはこちらから。
scroll-behavior
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2022年3月.
scroll-behavior はCSS のプロパティで、ナビゲーションや CSSOM のスクローリング API によってスクロールするボックスにスクロールが発生した際の、そのスクロールの振る舞いを設定します。
In this article
試してみましょう
scroll-behavior: auto;scroll-behavior: smooth;<section> <div> <p> スクロール先: <a href="#pageA">A</a> <a href="#pageB">B</a> <a href="#pageC">C</a> </p> <scroll-container> <scroll-page>A</scroll-page> <scroll-page>B</scroll-page> <scroll-page>C</scroll-page> </scroll-container> </div></section>.container { flex-direction: column;}.nav a { color: #009e5f;}scroll-container { border: 1px solid black; display: block; height: 200px; overflow-y: scroll; width: 200px;}scroll-page { align-items: center; display: flex; font-size: 5em; height: 100%; justify-content: center;}なお、ユーザーが実行したスクロールなど、その他のスクロールはこのプロパティの影響を受けません。このプロパティがルート要素に指定された場合は、代わりにビューポートに適用されます。このプロパティがbody 要素に指定された場合は、ビューポートには適用されません。
ユーザーエージェントは、このプロパティを無視することができます。
構文
css
/* キーワード値 */scroll-behavior: auto;scroll-behavior: smooth;/* グローバル値 */scroll-behavior: inherit;scroll-behavior: initial;scroll-behavior: revert;scroll-behavior: revert-layer;scroll-behavior: unset;scroll-behavior プロパティは、以下の一覧にあるキーワード値のうちの一つで指定します。
値
公式定義
| 初期値 | auto |
|---|---|
| 適用対象 | スクロールするボックス |
| 継承 | なし |
| 計算値 | 指定通り |
| アニメーションの種類 | アニメーション不可 |
形式文法
scroll-behavior =
auto|
smooth
例
>スクロールの動きをスムーズに設定
HTML
html
<nav> <a href="#page-1">1</a> <a href="#page-2">2</a> <a href="#page-3">3</a></nav><div> <div>1</div> <div>2</div> <div>3</div></div>CSS
css
a { display: inline-block; width: 50px; text-decoration: none;}nav,.scroll-container { display: block; margin: 0 auto; text-align: center;}nav { width: 339px; padding: 5px; border: 1px solid black;}.scroll-container { width: 350px; height: 200px; overflow-y: scroll; scroll-behavior: smooth;}.scroll-page { display: flex; align-items: center; justify-content: center; height: 100%; font-size: 5em;}結果
仕様書
| Specification |
|---|
| CSS Overflow Module Level 3> # smooth-scrolling> |