Chrome 81부터는 이벤트 리스너를 추가하여 있습니다.
CSS 스크롤 스냅 이를 통해 웹 개발자는 스크롤 스냅 위치를 스크롤할 수 있습니다. 현재 구현 방식의 한 가지 단점은 표시 영역이 변경되는 경우와 같이 레이아웃이 변경될 때 스크롤 맞추기가 제대로 작동하지 않습니다. 회전할 수 있습니다. 이 단점은 Chrome 81에서 해결되었습니다.
상호 운용성
대부분의 브라우저는 CSS 스크롤 스냅을 기본적으로 지원합니다. 자세한 내용은 CSS를 사용할 수 있나요? 스크롤 Snap?에서 자세한 내용을 확인하세요.
Chrome은 현재 레이아웃 후에 스크롤 스냅을 구현하는 유일한 브라우저입니다.
있습니다. Firefox에는
티켓 열기
Safari에서도 공개되어 있으며
녹화 후 다시 촬영하기 위한 티켓을 제공합니다.
콘텐츠가 변경됩니다. 지금은 이 동작을 시뮬레이션할 수 있습니다.
다음 코드를 이벤트 리스너에 추가하여 맞추기를 강제로 실행합니다.
javascript
scroller.scrollBy(0,0);
그러나 스크롤러가 동일한
요소가 포함됩니다.
배경
CSS 스크롤 스냅
CSS 스크롤 스냅 기능을 사용하면 웹 개발자가 스크롤 스냅 위치를 선언하여 스크롤 환경을 구현합니다. 이러한 위치 스크롤 가능한 콘텐츠가 컨테이너에 올바르게 정렬되도록 하여 부정확한 스크롤 문제를 극복할 수 있습니다. 즉, 스크롤 스냅은 다음과 같습니다.
- 스크롤 시 어색한 스크롤 위치를 방지합니다.
- 콘텐츠에 페이징하는 효과를 만듭니다.
페이지로 나눈 도움말과 이미지 캐러셀은 스크롤의 두 가지 일반적인 사용 사례입니다. 스냅 사진입니다.
<ph type="x-smartling-placeholder">단점
<ph type="x-smartling-placeholder">스크롤 스냅을 사용하면 사용자가 콘텐츠를 쉽게 탐색할 수 있지만 콘텐츠와 레이아웃의 변화에 적응하지 못하므로 이로 인해 제공합니다 다음 예에 나와 있습니다. 위에서 사용자는 창의 크기를 조정할 때마다 스크롤 위치를 이전에 맞춰진 요소를 찾습니다. 레이아웃을 유발하는 몇 가지 일반적인 시나리오 변경사항은 다음과 같습니다.
- 창 크기 조절
- 기기 회전
- DevTools 열기
처음 두 시나리오는 CSS 스크롤 스냅이 사용자에게 덜 매력적으로 보이게 하고 세 번째는 디버깅할 때 개발자에게 악몽입니다. 개발자는 또한 역동적인 환경을 만들고자 할 때 이러한 단점을 고려해 보세요. 콘텐츠 추가, 삭제 또는 이동과 같은 작업을 지원합니다.
이 문제의 일반적인 해결 방법은 다음을 통해 프로그래매틱 스크롤을 실행하는 리스너를 추가하는 것입니다. 언급된 레이아웃 중 하나가 있을 때마다 맞추기를 강제로 실행하는 JavaScript 일어날 수 있습니다 이 해결 방법은 사용자가 이전과 동일한 콘텐츠로 다시 돌아갈 수 있습니다. 추가 취급이 있는 경우 JavaScript는 이 CSS 기능의 목적을 거의 무효화하는 것으로 보입니다.
Chrome 81에서 레이아웃 변경 후 다시 맞추기를 기본적으로 지원합니다.
언급된 단점은 Chrome 81에서 더 이상 존재하지 않으며, 스크롤러는 유지됩니다. 레이아웃 변경 후에도 맞춰집니다. 필요한 경우 가장 가까운 맞추기 위치에 다시 맞춥니다. 만약 스크롤러는 이전에 여전히 존재하는 요소에 맞춰졌습니다. 스크롤러가 변경된 레이아웃으로 돌아가려고 시도합니다. 주의할 점 다음에서 레이아웃이 변경되면 어떻게 되나요? 예를 참고하세요.
자세한 내용은 레이아웃 변경 후 다시 맞추기 사양 확인하세요.
예: 고정 스크롤바
'레이아웃 변경 후 스냅'을 사용하면 개발자가 CSS 행:
.container {
scroll-snap-type: y proximity;
}
.container::after {
scroll-snap-align: end;
display: block;
}
자세한 내용이 궁금하신가요? 다음 데모 채팅을 참조하세요. UI를 사용합니다.
<ph type="x-smartling-placeholder">향후 작업
모든 재스냅 스크롤 효과는 현재 즉시 적용됩니다. 잠재적인 후속 조치는 부드러운 스크롤로 재스냅하기 지원 효과가 있습니다. 사양 문제를 참고하세요. 참조하세요.
의견
여러분의 의견은 레이아웃 변경 후 다시 맞추기를 개선하는 데 매우 중요합니다. 계속 진행하세요. 직접 사용해 보고 Chromium 엔지니어에게 당신이 무엇을 할 수 있는지 생각해야 합니다.