CSS scroll-padding-inline 屬性
定義和用法
scroll-padding-inline
屬性指定在行內方向上,從容器到子元素吸附位置的距離。
這意味著當你停止滾動時,滾動將快速調整并停止在吸附位置與容器之間指定的距離處。
行內方向是指相對于一行中現有字符的位置,下一個字符被放置的方向。這也是具有 CSS display: inline; 的標簽(如 <a> 和 <strong> 標簽)在文本中的布局方式。行內方向取決于書寫語言,例如阿拉伯語的新字符從右到左排列,使得行內方向為從右到左,而英語頁面則具有從左到右的行內方向。行內方向可以通過 CSS 屬性 direction
和 writing-mode
來定義。
吸附位置是指當你停止滾動時,子元素在容器中吸附到位的位置。
注意:此屬性僅在行內方向上,scroll-snap-align
屬性設置為 'start' 或 'end' 時才有效。
scroll-padding-inline 屬性是以下屬性的簡寫屬性:
scroll-padding-inline
屬性的值可以通過不同方式設置:
如果 scroll-padding-inline 屬性有兩個值:
scroll-padding-inline: 10px 50px;
- 開始處的距離為 10px
- 結束處的距離為 50px
如果 scroll-padding-inline 屬性有一個值:
scroll-padding-inline: 10px;
- 開始處和結束處的距離均為 10px
要看到 scroll-padding-inline
屬性的效果,必須在子元素上設置 scroll-snap-align
屬性,并在父元素上設置 scroll-padding-inline
和 scroll-snap-type
屬性。
CSS 的 scroll-padding-block
和 scroll-padding-inline
屬性與 CSS 屬性 CSS scroll-padding-top 屬性
、scroll-padding-bottom
、scroll-padding-left
和 scroll-padding-right
非常相似,但 scroll-padding-block
和 scroll-padding-inline
屬性依賴于塊方向和行內方向。
實例
例子 1
設置行內方向上的滾動內邊距,從容器到吸附位置為 20px:
div { scroll-padding-inline: 20px; }
例子 2:圖片庫
在具有吸附行為的圖片畫廊中,可以使用 scroll-padding-inline
屬性將圖片從固定元素后面推出:
#container { scroll-padding-inline: 30px 0; }
例子 3
當容器元素的 writing-mode
屬性值設置為 'vertical-rl' 時,行內方向上的容器和子元素的起始位置從左側移動到頂部,結束位置從右側移動到底部。這會影響滾動吸附行為以及 scroll-padding-inline
屬性的工作方式:
#container { scroll-padding-inline: 20px 0; writing-mode: vertical-rl; }
例子 4
當容器元素的 direction
屬性值設置為 'rtl' 時,行內方向上的容器和子元素的起始位置從右側移動到左側。這會影響滾動吸附行為以及 scroll-padding-inline
屬性的工作方式:
#container { scroll-padding-inline: 20px 0; direction: rtl; }
CSS 語法
scroll-padding-inline: auto|value|initial|inherit;
屬性值
值 | 描述 |
---|---|
auto | 默認值。瀏覽器計算內邊距。 |
length |
以 px、pt、cm 等單位指定 scroll-padding-inline。 不允許使用負值。請參閱:CSS 單位。 |
% | 以包含元素寬度的百分比指定內邊距。 |
initial | 將此屬性設置為其默認值。參閱 initial。 |
inherit | 從其父元素繼承此屬性。參閱 inherit。 |
技術細節
默認值: | auto |
---|---|
繼承性: | 否 |
動畫制作: | 不支持。請參閱:動畫相關屬性。 |
版本: | CSS3 |
JavaScript 語法: | object.style.scrollPaddingInline="20px" |
瀏覽器支持
表格中的數字表示首個完全支持該屬性的瀏覽器版本。
Chrome | Edge | Firefox | Safari | Opera |
---|---|---|---|---|
69.0 | 79.0 | 68.0 | 15.0 | 56.0 |