CSS scroll-margin-inline-start 屬性
定義和用法
scroll-margin-inline-start
屬性指定在行內方向上,吸附位置與容器之間的距離。
這意味著,當你停止滾動時,滾動將快速調整,并在子元素起始處的吸附位置與容器之間,在行內方向上停止于指定的距離。
行內方向是指下一字符相對于現有字符在行中的位置放置的方向,這也是具有 CSS display: inline; 的標簽(如 <a> 和 <strong> 標簽)在文本中的布局方式。行內方向取決于書寫語言,例如阿拉伯語的新字符是從右到左排列的,因此行內方向是從右到左的,而英文頁面的行內方向是從左到右的。行內方向可以通過 CSS 屬性 direction
和 writing-mode
定義。
吸附位置是指當你停止滾動時,子元素在容器中吸附到位的位置。
注意:此屬性僅在 scroll-snap-align
屬性為行內方向設置為 'start' 時才起作用。
CSS 的 scroll-margin-inline
和 scroll-margin-block
屬性與 CSS 屬性 CSS scroll-margin-top 屬性
、scroll-margin-bottom
、scroll-margin-left
和 scroll-margin-right
非常相似,但 scroll-margin-block
和 scroll-margin-inline
屬性依賴于塊方向和行內方向。
實例
例子 1
設置行內方向上,從吸附位置到可滾動容器的距離:
div { scroll-margin-inline-start: 20px; }
例子 2
當 <div> 元素的 writing-mode
屬性值設置為 vertical-rl 時,行內方向是向下。結果是元素的起始位置從左側移動到頂部:
div { scroll-margin-inline-start: 20px; writing-mode: vertical-rl; }
例子 3
當 <div> 元素的 direction
屬性值設置為 rtl 時,行內方向是從右到左。結果是元素的起始位置從左側(相對于原方向而言,實際上仍是在右側開始,但這里的“左側”是指原默認方向(ltr)的左側)調整:
div { scroll-margin-inline-start: 20px; direction: rtl; }
CSS 語法
inset-inline-start: 0|value|initial|inherit;
屬性值
值 | 描述 |
---|---|
0 | 默認。元素的默認內嵌距離。 |
length |
指定以 px、pt、cm 等為單位的距離。允許負值。 請參閱:CSS 單位。 |
initial | 將此屬性設置為其默認值。參閱 initial。 |
inherit | 從其父元素繼承此屬性。參閱 inherit。 |
技術細節
默認值: | 0 |
---|---|
繼承性: | 否 |
動畫制作: | 不支持。請參閱:動畫相關屬性。 |
版本: | CSS3 |
JavaScript 語法: | object.style.scrollMarginInlineStart="30px" |
瀏覽器支持
表格中的數字表示首個完全支持該屬性的瀏覽器版本。
Chrome | Edge | Firefox | Safari | Opera |
---|---|---|---|---|
69.0 | 79.0 | 68.0 | 14.1 | 56.0 |