НачалоОсновыКомпонентыТексты

Sheet layout

Sheet layout ставит боковую шторку рядом с содержимым, а не поверх него, когда хватает места. Когда не хватает, шторка открывается модально.

Стабильный
ОбзорИспользованиеAPIДоступность
View deployment

Make the window narrower: the sheet stops sitting beside this text and opens over it.

Built from main 2 minutes ago.

Done
<tk-sheet-layout content-min="240" style="--tk-sheet-size: 280px; min-block-size: calc(var(--space-96) * 3);">
  <div>
    <tk-button onclick="document.getElementById('deployment').show()">View deployment</tk-button>
    <p>Make the window narrower: the sheet stops sitting beside this text and opens over it.</p>
  </div>
  <tk-sheet id="deployment" heading="Deployment" side="right">
    <p>Built from main 2 minutes ago.</p>
    <tk-button slot="footer" onclick="this.closest('tk-sheet').close()">Done</tk-button>
  </tk-sheet>
</tk-sheet-layout>

Как это работает

<tk-sheet-layout content-min="640">
  <main>
    <tk-button onclick="document.getElementById('deployment').show()">View deployment</tk-button>
  </main>
  <tk-sheet id="deployment" heading="Deployment" side="right">
    <p>Built from main 2 minutes ago.</p>
  </tk-sheet>
</tk-sheet-layout>
  • Положите в Sheet layout содержимое страницы и Sheet с side="left" или side="right".
  • Когда ширина Sheet layout не меньше content-min плюс ширина шторки, шторка встраивается: открывается колонкой рядом с содержимым, а содержимое сужается. Ничего не закрыто, страницей можно пользоваться.
  • Когда ширины не хватает, шторка открывается модально поверх страницы.
  • Если ширина меняется, пока шторка открыта, она переключается на месте. Введённый текст, прокрутка и фокус остаются.
  • mode у шторки подсказывает, как она открыта: docked или modal.

Где ставить шторку

  • Ставьте шторку left перед содержимым, а right — после него, чтобы порядок Tab совпадал с тем, что видно на экране.
  • Встроенная шторка отстоит на space-8 (8px) от краёв своей колонки и остаётся на виду, пока страница прокручивается.
  • Шторки top и bottom не встраиваются. Они открываются модально.
  • Чтобы изменить ширину, задайте шторке --tk-sheet-size. Sheet layout учитывает её, когда решает, хватает ли места.