From 33058f2b292b3a581333bdfb21b8f671898c5060 Mon Sep 17 00:00:00 2001 From: Peter Bengtsson Date: Tue, 8 Dec 2020 14:40:17 -0500 Subject: initial commit --- files/ja/web/css/overscroll-behavior/index.html | 113 ++++++++++++++++++++++++ 1 file changed, 113 insertions(+) create mode 100644 files/ja/web/css/overscroll-behavior/index.html (limited to 'files/ja/web/css/overscroll-behavior/index.html') diff --git a/files/ja/web/css/overscroll-behavior/index.html b/files/ja/web/css/overscroll-behavior/index.html new file mode 100644 index 0000000000..7f409ead4c --- /dev/null +++ b/files/ja/web/css/overscroll-behavior/index.html @@ -0,0 +1,113 @@ +--- +title: overscroll-behavior +slug: Web/CSS/overscroll-behavior +tags: + - CSS + - CSS Box Model + - CSS Property + - Reference + - overscroll-behavior + - 'recipe:css-property' +translation_of: Web/CSS/overscroll-behavior +--- +
{{CSSRef}}
+ +

CSS の overscroll-behavior プロパティは、スクロール領域の境界に達したときにブラウザーが何をするかを設定します。これは {{cssxref("overscroll-behavior-x")}} および {{cssxref("overscroll-behavior-y")}} の一括指定です。

+ +
/* キーワード値 */
+overscroll-behavior: auto; /* 既定 */
+overscroll-behavior: contain;
+overscroll-behavior: none;
+
+/* 二つの値 */
+overscroll-behavior: auto contain;
+
+/* グローバル値 */
+overscroll-behavior: inherit;
+overscroll-behavior: initial;
+overscroll-behavior: unset;
+
+ +

既定では、モバイルブラウザーは「跳ね返る」効果を見せたり、ページの最上部又は最下部 (またはその他のスクロール領域) に達したときにページを更新したりする機能を提供する傾向があります。内容がスクロールするページの上に、内容がスクロールするダイアログが表示されている時、ダイアログボックスのスクロール境界に達したときに、下のページがスクロールし始めるという動きをするのに気が付いたかもしれません。 — これはスクロール連鎖と呼ばれています。

+ +

場合によっては、この動きが望ましくないことがあります。 overscroll-behavior を使用すると、望ましくないスクロール連鎖を抑止したり、ブラウザー版の Facebook や Twitter アプリなどに見られる「引いて更新」の類の動きを実現したりすることができます。

+ +

構文

+ +

overscroll-behavior プロパティは、次の値の一覧のうち1つまたは2つのキーワードで指定します。

+ +

2つのキーワードでは、 overscroll-behavior のそれぞれ x 及び y 軸の値を指定します。値が1つだけ指定された場合は、 x および y が同じ値とみなされます。

+ +

+ +
+
auto
+
スクロールの末端における既定の振る舞いが通常通りに発生します。
+
contain
+
この値が設定された要素の内部では、スクロールの末端における既定の振る舞いが見られますが、隣接するスクロール領域に対するスクロール連鎖はありません。例えば、基底となる要素はスクロールしません。
+
none
+
隣接するスクロール領域に対するスクロール連鎖はなく、スクロールの末端における既定の振る舞いが抑制されます。
+
+ +

公式定義

+ +

{{cssinfo}}

+ +

形式文法

+ +
{{csssyntax}}
+ +

+ +

下の要素がスクロールするのを抑止する

+ +

overscroll-behavior の例 (ソースコードはこちら) は、全画面で擬似連絡先の一覧を、ダイアログボックスでチャットウィンドウを表示します。

+ +

+ +

どちらの領域もスクロールします。ふつう、チャットウィンドウをスクロール境界に当たるまでスクロールすると、下の連絡先ウィンドウもスクロールを始めます。これは望ましくないことです。これは、次のようにチャットウィンドウに overscroll-behavior-y (overscroll-behavior でも可) を使用することで抑止することができます。

+ +
.messages {
+  height: 220px;
+  overflow: auto;
+  overscroll-behavior-y: contain;
+} 
+ +

連絡先が冒頭又は末端までスクロールしたときの標準のスクロール末端効果を抑止したいかもしれません (例えば Android 版 Chrome は、冒頭の境界を超えてスクロールしようとするとページを再読み込みします)。これは {{htmlelement("body")}} 要素に overscroll-behavior: none を設定することで抑止することができます。

+ +
body {
+  margin: 0;
+  overscroll-behavior: none;
+}
+ +

仕様書

+ + + + + + + + + + + + + + + + +
仕様書状態備考
{{SpecName('CSS Overscroll Behavior', '#propdef-overscroll-behavior', 'overscroll-behavior')}}{{Spec2('CSS Overscroll Behavior')}}
+ +

ブラウザーの互換性

+ + + +

{{Compat("css.properties.overscroll-behavior")}}

+ +

関連情報

+ + -- cgit v1.2.3-54-g00ecf