- CSS 教程
- CSS - 教程
- CSS - 简介
- CSS - 语法
- CSS - 选择器
- CSS - 包含
- CSS - 度量单位
- CSS - 颜色
- CSS - 背景
- CSS - 字体
- CSS - 文本
- CSS - 图像
- CSS - 链接
- CSS - 表格
- CSS - 边框
- CSS - border-block 属性
- CSS - 边框内联
- CSS - 边距
- CSS - 列表
- CSS - Padding 属性
- CSS - 光标
- CSS - 轮廓
- CSS - 维度
- CSS - 滚动条
- CSS - 内联块
- CSS - 下拉列表
- CSS - visibility 属性
- CSS - Overflow 属性
- CSS - 清除修复
- CSS - float(浮点)
- CSS - 箭头
- CSS - resize 属性
- CSS - quotes 属性
- CSS - order 属性
- CSS - Position 属性
- CSS - hypens 属性
- CSS - :hover(悬停)
- CSS - display(显示)
- CSS - focus 属性
- CSS - zoom(缩放)
- CSS - translate 属性
- CSS - Height 属性
- CSS - hyphenate-character 属性
- CSS - Width 属性
- CSS - opacity 属性
- CSS - z-index 属性
- CSS - bottom 属性
- CSS - 导航栏
- CSS - 覆盖
- CSS - 表单
- CSS - 对齐
- CSS - 图标
- CSS - 图片库
- CSS - 注释
- CSS - 加载器
- CSS - Atrribute 选择器属性
- CSS - 运算器
- CSS - root
- CSS - 盒子模型
- CSS - 计数器
- CSS - Clip (Obsolete) 属性
- CSS - writing-mode 属性
- CSS - Unicode-bidi 属性
- CSS - min-content 属性
- CSS - 全部
- CSS - inset 属性
- CSS - isolation 属性
- CSS - overscroll-behavior 属性
- CSS - justify-items 属性
- CSS - justify-self 属性
- CSS - tab-size 属性
- CSS - pointer-event 属性
- CSS - place-content 属性
- CSS - place-items 属性
- CSS - place-self 属性
- CSS - max-block-size 属性
- CSS - min-block-size 属性
- CSS - mix-blend-mode 属性
- CSS - max-inline-size 属性
- CSS - min-inline-size 属性
- CSS - offset 属性
- CSS - accent-color 属性
- CSS - user-select 属性
- CSS 高级
- CSS - grid 属性
- CSS - Grid 布局
- CSS - flexbox
- CSS - vertical-align 属性
- css - positioning
- css - layers
- css - pseudo_classes
- CSS - 伪元素
- CSS - @ 规则
- CSS 滤镜 - text-effect 属性
- CSS 分页媒体
- CSS 打印
- CSS - 布局
- CSS - 验证
- CSS - 图像精灵
- CSS - !important
- CSS - 数据类型
- CSS3 教程
- CSS - 圆角
- CSS - 边框图像
- CSS - 多种背景
- CSS - 渐变
- CSS - box-shadow 属性
- CSS - box-decoration-break 属性
- CSS - caret-color 属性
- CSS - text-shadow 属性
- CSS - 2D 转换
- CSS - 3D 变换
- CSS - transition 属性
- CSS - 动画
- CSS - 多列布局
- CSS - 盒子大小调整
- CSS - 工具提示
- CSS - buttons
- CSS - 分页
- CSS - 变量
- CSS - 媒体查询
- CSS - 值函数
- CSS - 数学函数
- CSS - Mask 属性
- CSS - shape-outside 属性
- CSS - 样式图像
- CSS - 特异性
- CSS - 自定义属性
- CSS 响应式
- CSS - 响应式网页设计 (RWD)
- CSS - 响应式设计视口
- CSS - 响应式网格视图
- CSS - 响应式媒体查询
- CSS - 响应式图像
- CSS - 响应式视频
- CSS - 响应式框架
- CSS 引用
- CSS - 所有属性列表
- CSS - 颜色引用
- CSS - 浏览器支持参考
- CSS - 网页字体
- CSS 工具
- CSS - PX 到 EM 的转换
CSS - overscroll-behavior 属性
CSS overscroll-behavior 属性 是一个速记属性,用于确定浏览器在到达滚动区域的边界时执行的操作。
此属性的构成属性是 overscroll-behavior-x 和 overscroll-behavior-y。
滚动链接是当用户滚动超过可滚动元素的边界(顶部、底部、左侧或右侧)时观察到的一种行为,从而导致在祖先元素上滚动。这会在滚动中产生连锁效应。
例如,如果网页上有一个模式对话框,则该对话框包含可以垂直滚动的内容。当您到达此模式的可滚动区域的末尾时,将继续滚动到模式对话框后面的主页内容上。这种连续滚动体验称为滚动链接。
这种行为可能是可取的,也可能是不可取的,为了避免它,使用了属性 overscroll-behavior。该属性仅应用于可滚动容器。在 <iframe> 上设置此属性不起作用,因此需要在 iframe 文档的 <html> 和 <body> 元素上设置此属性。
可能的值
CSS overscroll-behavior 属性定义为下面给出的一个或两个关键字。这两个关键字分别指定 x 轴和 y 轴上的值。当只指定一个值时,x 轴和 y 轴都具有相同的值。
- auto - 默认滚动行为是正常的。
- contain − 滚动行为仅在设置值的元素中可见。不对相邻元素设置滚动。
- none - 未看到滚动链接行为。避免了默认的滚动溢出行为。
适用于
所有未替换的块级元素和未替换的内联块元素。
语法
overscroll-behavior = [ contain | auto | none ]{1,2}
CSS overscroll-behavior - auto 值
以下示例演示了 overscroll-behavior: auto 的用法,该 auto 将滚动效果设置为连续。因此,当达到可滚动元素的边界时,在滚动时,父元素将被滚动。
<html>
<head>
<style>
div {
margin: 5px 15px;
padding: 3px;
border: solid black 1px;
overflow: auto;
border: 2px solid black;
}
#main-box {
display: flex;
flex-wrap: wrap;
background-color: cornsilk;
height: 800px;
}
#box-1 {
background-color: lightblue;
overscroll-behavior: auto;
}
#main-box > div {
flex: 1;
height: 150px;
}
</style>
</head>
<body>
<h1>overscroll-behavior Property</h1>
<p>The box displayed below has overscroll-behavior set as auto, which is the default value.</p>
<p>Scroll the blue box using the mouse and once it is scrolled completely keep scrolling and see the parent element gets scrolled.</p>
<div id="main-box">
<div id="box-1">
<h2>overscroll-behavior: auto</h2>
<p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Quos voluptatum adipisci harum? Repudiandae doloribus aspernatur ex odit rem quasi eligendi perspiciatis impedit porro reiciendis? Ipsa fugit reprehenderit nesciunt quae voluptates, labore ducimus iste consectetur quibusdam sapiente modi et ab reiciendis assumenda ullam, voluptatibus maiores sunt cupiditate amet. Magnam vel explicabo tempora ad numquam cumque soluta aliquid dolore, ducimus et obcaecati perferendis voluptatibus beatae quasi, facilis nihil culpa dolorum modi officia ab similique at. Iure ab, eius amet similique quaerat tempore, exercitationem aperiam fugiat pariatur error ratione laborum autem nam neque quae quo sed ipsam ullam animi officiis. Magnam assumenda facere similique molestiae harum ratione, esse, laboriosam cum vel quisquam labore est tenetur vero quas ex eum atque voluptatibus temporibus voluptate iste ipsam fugiat reiciendis dolor velit. Delectus molestiae deleniti quam, nisi ullam perspiciatis doloribus dolore dolores, ratione, reprehenderit rerum. Saepe ex, maiores reiciendis aperiam laudantium ipsa ipsam iure amet aliquid at suscipit labore voluptate et iste architecto fugit esse est a eum dicta asperiores error exercitationem minus. Praesentium voluptatem recusandae accusamus veritatis voluptate! Officia nostrum esse vitae fuga odit ab optio quia autem consequuntur, ea modi dignissimos enim assumenda voluptatibus maxime explicabo aliquid repellendus magni molestias hic dolores earum tenetur.</p>
</div>
</div>
</body>
</html>
CSS overscroll-behavior - contain 比较
以下示例演示了 overscroll-behavior: contain 的用法,该 include 将包含的滚动效果设置为应用它的元素。因此,当达到可滚动元素的边界时,在滚动时,父元素不会被滚动。
<html>
<head>
<style>
div {
margin: 5px 15px;
padding: 3px;
border: solid black 1px;
overflow: auto;
border: 2px solid black;
}
#main-box {
display: flex;
flex-wrap: wrap;
background-color: darkcyan;
height: 800px;
}
#box-1 {
background-color: pink;
}
#box-2 {
background-color: aliceblue;
overscroll-behavior: contain;
}
#main-box > div {
flex: 1;
height: 150px;
}
</style>
</head>
<body>
<h1>overscroll-behavior Property</h1>
<p>The two boxes displayed below has overscroll-behavior set as auto and contain, respectively.</p>
<p>Scroll the first pink box using the mouse and once it is scrolled completely keep scrolling and see the parent element gets scrolled.</p>
<p>Scroll the second white box using the mouse and once it is scrolled completely keep scrolling and see the parent element not getting scrolled.</p>
<div id="main-box">
<div id="box-1">
<h3>overscroll-behavior: auto</p>
<p>
Lorem ipsum dolor sit amet consectetur adipisicing elit. Quos voluptatum adipisci harum? Repudiandae doloribus aspernatur ex odit rem quasi eligendi perspiciatis impedit porro reiciendis? Ipsa fugit reprehenderit nesciunt quae voluptates, labore ducimus iste consectetur quibusdam sapiente modi et ab reiciendis assumenda ullam, voluptatibus maiores sunt cupiditate amet. Magnam vel explicabo tempora ad numquam cumque soluta aliquid dolore, ducimus et obcaecati perferendis voluptatibus beatae quasi, facilis nihil culpa dolorum modi officia ab similique at. Iure ab, eius amet similique quaerat tempore, exercitationem aperiam fugiat pariatur error ratione laborum autem nam neque quae quo sed ipsam ullam animi officiis. Magnam assumenda facere similique molestiae harum ratione, esse, laboriosam cum vel quisquam labore est tenetur vero quas ex eum atque voluptatibus temporibus voluptate iste ipsam fugiat reiciendis dolor velit. Delectus molestiae deleniti quam, nisi ullam perspiciatis doloribus dolore dolores, ratione, reprehenderit rerum. Saepe ex, maiores reiciendis aperiam laudantium ipsa ipsam iure amet aliquid at suscipit labore voluptate et iste architecto fugit esse est a eum dicta asperiores error exercitationem minus. Praesentium voluptatem recusandae accusamus veritatis voluptate! Officia nostrum esse vitae fuga odit ab optio quia autem consequuntur, ea modi dignissimos enim assumenda voluptatibus maxime explicabo aliquid repellendus magni molestias hic dolores earum tenetur.
</p>
</div>
<div id="box-2">
<h3>overscroll-behavior: contain</p>
<p>
Lorem ipsum dolor sit amet consectetur adipisicing elit. Quos voluptatum adipisci harum? Repudiandae doloribus aspernatur ex odit rem quasi eligendi perspiciatis impedit porro reiciendis? Ipsa fugit reprehenderit nesciunt quae voluptates, labore ducimus iste consectetur quibusdam sapiente modi et ab reiciendis assumenda ullam, voluptatibus maiores sunt cupiditate amet. Magnam vel explicabo tempora ad numquam cumque soluta aliquid dolore, ducimus et obcaecati perferendis voluptatibus beatae quasi, facilis nihil culpa dolorum modi officia ab similique at. Iure ab, eius amet similique quaerat tempore, exercitationem aperiam fugiat pariatur error ratione laborum autem nam neque quae quo sed ipsam ullam animi officiis. Magnam assumenda facere similique molestiae harum ratione, esse, laboriosam cum vel quisquam labore est tenetur vero quas ex eum atque voluptatibus temporibus voluptate iste ipsam fugiat reiciendis dolor velit. Delectus molestiae deleniti quam, nisi ullam perspiciatis doloribus dolore dolores, ratione, reprehenderit rerum. Saepe ex, maiores reiciendis aperiam laudantium ipsa ipsam iure amet aliquid at suscipit labore voluptate et iste architecto fugit esse est a eum dicta asperiores error exercitationem minus. Praesentium voluptatem recusandae accusamus veritatis voluptate! Officia nostrum esse vitae fuga odit ab optio quia autem consequuntur, ea modi dignissimos enim assumenda voluptatibus maxime explicabo aliquid repellendus magni molestias hic dolores earum tenetur.
</p>
</div>
</div>
</body>
</html>
CSS overscroll-behavior - auto contain 值
以下示例演示了 overscroll-behavior: auto contain(两个值)的使用,该操作将滚动效果设置为 auto on x 轴,并将滚动效果设置为 contained on y 轴。因此,当达到可滚动元素的垂直边界时,在滚动时,父元素不会滚动(包含),而是将水平边界设置为自动,这会导致父元素在 x 轴上滚动。
<html>
<head>
<style>
#main-box, #box-2 {
margin: 15px;
padding: 3px;
border: solid black 1px;
overflow: auto;
}
#main-box p {
width: 200%;
}
#main-box {
background-color: rgb(197, 255, 236);
height: 1300px;
width: 2000px;
}
#box-2 {
float: left;
height: 250px;
width: 30%;
background-color: rgb(255, 205, 213);
overscroll-behavior: auto none;
}
</style>
</head>
<body>
<h1>overscroll-behavior - Two value Syntax</h1>
<p>The two value syntax is used with overscroll-behavior as auto on x axis and none on y-axis.</p>
<div id="main-box">
<div id="box-2">
<h3>overscroll-behavior: auto none</p>
<p>
Lorem ipsum dolor sit amet consectetur adipisicing elit. Quos voluptatum adipisci harum? Repudiandae doloribus aspernatur ex odit rem quasi eligendi perspiciatis impedit porro reiciendis? Ipsa fugit reprehenderit nesciunt quae voluptates, labore ducimus iste consectetur quibusdam sapiente modi et ab reiciendis assumenda ullam, voluptatibus maiores sunt cupiditate amet. Magnam vel explicabo tempora ad numquam cumque soluta aliquid dolore, ducimus et obcaecati perferendis voluptatibus beatae quasi, facilis nihil culpa dolorum modi officia ab similique at. Iure ab, eius amet similique quaerat tempore, exercitationem aperiam fugiat pariatur error ratione laborum autem nam neque quae quo sed ipsam ullam animi officiis. Magnam assumenda facere similique molestiae harum ratione, esse, laboriosam cum vel quisquam labore est tenetur vero quas ex eum atque voluptatibus temporibus voluptate iste ipsam fugiat reiciendis dolor velit. Delectus molestiae deleniti quam, nisi ullam perspiciatis doloribus dolore dolores, ratione, reprehenderit rerum. Saepe ex, maiores reiciendis aperiam laudantium ipsa ipsam iure amet aliquid at suscipit labore voluptate et iste architecto fugit esse est a eum dicta asperiores error exercitationem minus. Praesentium voluptatem recusandae accusamus veritatis voluptate! Officia nostrum esse vitae fuga odit ab optio quia autem consequuntur, ea modi dignissimos enim assumenda voluptatibus maxime explicabo aliquid repellendus magni molestias hic dolores earum tenetur.
</p>
</div>
</div>
</body>
</html>
CSS overscroll-behavior - 关联属性
下表列出了与 overscroll-behavior 属性关联的 CSS 属性:
属性 | 描述 |
---|---|
overscroll-behavior-x | 设置当达到滚动区域的水平边界时浏览器的行为。 |
overscroll-behavior-y | 设置当达到滚动区域的垂直边界时浏览器的行为。 |
overscroll-behavior-block | 设置当达到滚动区域的块方向边界时浏览器的行为。 |
overscroll-behavior-inline | 设置在达到滚动区域的内联方向边界时浏览器的行为。 |