aboutsummaryrefslogtreecommitdiff
path: root/files/zh-cn/web/css/overscroll-behavior-x/index.html
blob: 91364ff10d99ca3fa6bb31d8ace34140b51d0d31 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
---
title: overscroll-behavior-x
slug: Web/CSS/overscroll-behavior-x
tags:
  - overscroll-behavior-x
  - 层叠式样式表
  - 层叠式样式表属性
  - 层叠式样式表盒子模型
  - 引用
  - 非标准
translation_of: Web/CSS/overscroll-behavior-x
---
<div>{{CSSRef}}</div>

<p><span class="seoSummary"><strong><code>overscroll-behavior-x</code></strong> 这个CSS属性用来控制当滚动到区域的水平边界时的浏览器行为。</span></p>

<div class="note">
<p><strong>备注</strong>: 详细的解释请访问 {{cssxref("overscroll-behavior")}} </p>
</div>

<pre class="brush:css no-line-numbers">/* Keyword values */
overscroll-behavior: auto; /* default */
overscroll-behavior: contain;
overscroll-behavior: none;

/* Global values */
overflow: inherit;
overflow: initial;
overflow: unset;
</pre>

<p>{{cssinfo}}</p>

<h2 id="语法">语法</h2>

<p><code>overscroll-behavior-x</code> 属性可以选用下列值。</p>

<h3 id="值"></h3>

<dl>
 <dt><code>auto</code></dt>
 <dd>默认的滚动溢出行为表现的和正常一样。</dd>
 <dt><code>contain</code></dt>
 <dd>默认的滚动溢出行为将被内部的元素观察到,(例如: “bounce”效果或者刷新),但是相邻的区域不会产生连续滚动效果,例如: 在下面的元素不会被滚动。</dd>
 <dt><code>none</code></dt>
 <dd>相邻的滚动区域不会有连续滚动效果,并且默认的滚动溢出行为会被阻止。</dd>
</dl>

<h3 id="正式语法">正式语法</h3>

<pre class="syntaxbox">{{csssyntax}}</pre>

<h2 id="示例">示例</h2>

<p>在这个简单的<a href="https://mdn.github.io/css-examples/overscroll-behavior/overscroll-behavior-x">例子</a>中(<a href="https://github.com/mdn/css-examples/blob/master/overscroll-behavior/overscroll-behavior-x.html">源代码</a>), 有两个块级别的盒子, 一个在另一个的里面. 外部的盒子设置有一个大的 {{cssxref("width")}} 所以整个页面会水平滚动. 内部的盒子设置有一个小的宽度(和 {{cssxref("height")}}) 所以他位于观察点内合适的地方,但是他的内容被设置了一个大的 <code>width</code>, 所以它会水平的滚动.</p>

<p>默认情况下, 当内部的盒子被滚动达到边界的时候,整个页面将开始滚动,这个行为有可能不是我们期望的. 为了避便这个行为,你可以设置 <code>overscroll-behavior-x: contain</code> 在里面的盒子上:</p>

<pre class="brush: css">main &gt; div {
  height: 300px;
  width: 500px;
  overflow: auto;
  position: relative;
  top: 100px;
  left: 100px;
  overscroll-behavior-x: contain;
}</pre>

<h2 id="规格">规格</h2>

<table class="standard-table">
 <thead>
  <tr>
   <th scope="col">规格</th>
   <th scope="col">状态值</th>
   <th scope="col">注释</th>
  </tr>
 </thead>
 <tbody>
  <tr>
   <td>{{SpecName('Overscroll Behavior', '#propdef-overscroll-behavior-x', 'overscroll-behavior-x')}}</td>
   <td>{{Spec2('Overscroll Behavior')}}</td>
   <td> </td>
  </tr>
 </tbody>
</table>

<h2 id="浏览器兼容性">浏览器兼容性</h2>

<div class="hidden">这个页面上的兼容性表格是从结构化数据生成的,如果你希望贡献新的数据,请check out <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> 并发送一个pull request给我们.</div>

<p>{{Compat("css.properties.overscroll-behavior-x")}}</p>

<h2 id="See_also">See also</h2>

<ul>
 <li><a href="https://developers.google.com/web/updates/2017/11/overscroll-behavior#demo">Take control of your scroll: customizing pull-to-refresh and overflow effects</a></li>
</ul>

<p> </p>