scroll-margin-inline-start
Scrolla manualmente il contenitore: noterai che i box si allineano a sinistra uno alla volta (effetto "snap"). Quando arrivi al box rosso Target, mantiene 50px di margine a sinistra grazie a scroll-margin-inline-start
, oppure clicca il bottone per scrollare automaticamente fino al box target.
⚠️ Usa JavaScript (scrollIntoView()
) per portare in vista il box con margine orizzontale sinistro di 50px.
<style>
html {
scroll-behavior: smooth;
}
.scroll-container {
overflow-x: auto;
white-space: nowrap;
border: 2px solid #ccc;
padding: 20px;
width: 290px;
scroll-snap-type: x mandatory;
}
.box {
display: inline-block;
width: 230px;
height: 150px;
margin-right: 20px;
background-color: #61afef;
color: white;
font-size: 18px;
text-align: center;
line-height: 150px;
border-radius: 10px;
scroll-snap-align: start;
}
.target-inline {
scroll-margin-inline-start: 50px;
background-color: #e06c75;
}
</style>
<div class="scroll-container">
<div class="box">Box 1</div>
<div class="box">Box 2</div>
<div class="box target-inline">Target</div>
<div class="box">Box 4</div>
<div class="box">Box 5</div>
<div class="box">Box 6</div>
<div class="box">Box 7</div>
</div>