# Affix 固定

スクロールが閾値に達した際に要素をビューポートの上部または下部に固定します。上部に固定するツールバーなどでよく使われます。

固定
<template>
  <div class="demo-col" style="max-width: 640px">
    <p class="demo-note">下のコンテナ内をスクロールすると、上部固定バーは上端から 12px の位置で固定されます</p>
    <div ref="scroller" class="anchor-scroller">
      <div v-for="i in 12" :key="i" class="anchor-sec">
        <h3>第 {{ i }} 段</h3>
        <p>上下にスクロールして固定バーの挙動を確認してください。</p>
      </div>
    </div>
    <LhAffix :target="scrollerEl" :offset-top="12">
      <div class="affix-bar">上部固定バー(offsetTop=12)</div>
    </LhAffix>
    <p class="demo-note">Affix はスクロールコンテナの外側かつコンテナの後に配置します。スクロール時に自動的に fixed になります。</p>
  </div>
</template>

<script>
export default {
  data: () => ({
    scrollerEl: undefined,
  }),
}
</script>

# Props

プロパティ 説明 型 デフォルト値
offsetTop ビューポート上端から何ピクセルで上部固定をトリガーするか number —
offsetBottom ビューポート下端から何ピクセルで下部固定をトリガーするか(offsetTop より優先) number —
target スクロールを監視するコンテナ(セレクタまたは要素、デフォルトはビューポート) string \| HTMLElement —
sx sx によるレイアウト省略記法 — —

ヒント

target はスクロール可能なコンテナ(overflow: auto)である必要があります。上部固定の内容がコンテナの可視領域を超える場合、Affix がコンテナの端で切り取られることがあるため、内容の高さはコンパクトに保ってください。

Copyright © 2024-2026 FengMo WenXue