찾다
웹 프론트엔드CSS 튜토리얼CSS로 사용자 정의 스크롤바 만들기: 종합 가이드

Creating Custom Scrollbars with CSS: A Comprehensive Guide

개발자는 최신 웹 브라우저를 사용하여 CSS를 사용하여 스크롤 막대의 모양을 사용자 정의할 수 있으므로 기능을 유지하면서 웹 애플리케이션의 시각적 매력을 향상시킬 수 있습니다. 이 가이드에서는 브라우저 간 호환성을 갖춘 사용자 정의 스크롤바를 구현하는 방법을 살펴봅니다.

기본 설정

먼저 사용자 정의 스크롤바를 포함할 컨테이너를 설정해 보겠습니다.

<div class="scrollbar-container">
  <h3 id="Visible-custom-scrollbar">Visible custom scrollbar</h3>
  <p>
    <!-- Content that creates scrollable overflow -->
  </p>
</div>

컨테이너 스타일링

스크롤 가능한 컨테이너에는 특정 크기와 오버플로 속성이 필요합니다.

.scrollbar-container {
  height: 50%;           /* Fixed height to enable scrolling */
  width: 50%;           /* Container width */
  margin: 0 auto;       /* Center the container */
  overflow: auto;       /* Enable scrolling */
  padding: 1rem;        /* Internal spacing */
}

크로스 브라우저 구현

WebKit 브라우저(Chrome, Safari, Edge)

WebKit 기반 브라우저의 경우 ::-webkit-scrollbar 의사 요소를 사용합니다.

.scrollbar-container::-webkit-scrollbar {
  width: 4px;                    /* Width of the scrollbar */
  background-color: white;       /* Background color */
  border-radius: 100vw;         /* Rounded corners */
}

.scrollbar-container::-webkit-scrollbar-track {
  background: white;            /* Track color */
  border-radius: 100vw;        /* Rounded corners for track */
}

.scrollbar-container::-webkit-scrollbar-thumb {
  background: plum;            /* Scrollbar thumb color */
  border-radius: 100vw;       /* Rounded corners for thumb */
}

파이어폭스

Firefox에서는 스크롤바 너비 및 스크롤바 색상 속성을 사용하는 다른 접근 방식이 필요합니다.

@-moz-document url-prefix() {
  .scrollbar-container {
    scrollbar-width: thin;           /* Width of the scrollbar */
    scrollbar-color: fuchsia white;  /* thumb and track colors */
  }  
}

디자인 고려 사항

이 구현에는 여러 가지 신중한 디자인 선택이 포함됩니다.

  1. 테두리 반경: 100vw 값은 트랙과 썸 모두에 대해 완벽하게 둥근 모서리를 만듭니다.
  2. 최소 너비: 4픽셀 너비는 스크롤 막대를 눈에 띄지 않게 유지합니다.
  3. 색상: 자두색/자홍색 엄지손가락이 있는 흰색 트랙은 시각적 매력을 유지하면서 좋은 대비를 제공합니다.
  4. 일관된 타이포그래피: 디자인은 더 나은 가독성을 위해 Rubik 글꼴군을 사용합니다.
@import url(https://fonts.googleapis.com/css2?family=Rubik);

CSS 변수

일관적인 테마를 위해 CSS 변수를 사용하는 예:

:root {
  --primary-text-color: #222;
  --secondary-text-color: #fff;
  --primary-bg-color: #222;
  --secondary-bg-color: #fff;
  --tertiary-bg-color: #ddd;
}

브라우저 호환성

  • WebKit 브라우저(Chrome, Safari, Edge): 세부적인 사용자 정의를 완벽하게 지원
  • Firefox: 스크롤 막대 너비 및 스크롤 막대 색상을 사용한 단순화된 사용자 정의
  • Internet Explorer: 사용자 정의 스크롤바를 지원하지 않습니다
  • 레거시 Edge: 제한적 지원

모범 사례

  1. 사용성 유지: 스크롤바의 가시성과 기능을 유지하세요
  2. 일관된 스타일: 스크롤바 색상을 사이트 테마와 일치시키세요
  3. 테스트: 다양한 브라우저에서 모양 확인
  4. 반응형 디자인: 다양한 뷰포트 크기에서 스크롤바가 어떻게 나타나는지 고려

최종 결과

결론

사용자 정의 스크롤 막대는 기능을 유지하면서 웹 애플리케이션의 시각적 매력을 향상시킬 수 있습니다. 이러한 패턴을 따르고 브라우저 간 호환성을 고려하면 사용자에게 일관되고 매력적인 스크롤 경험을 제공할 수 있습니다.

위 내용은 CSS로 사용자 정의 스크롤바 만들기: 종합 가이드의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
Flexbox vs Grid : 둘 다 배워야합니까?Flexbox vs Grid : 둘 다 배워야합니까?May 10, 2025 am 12:01 AM

예, YoushouldLearnbothflexBoxAndgrid.1) FlexBoxisIdealforone-Dimensional, FlexiblelayoutSlikenavigationMenus.2) GridexCelsIntwo-Dimensional, ComplexDesignsSuchasmagazinElayouts.3) 결합 된 BothenSlayoutFlexibility 및 HeartingFortructur

궤도 역학 (또는 CSS 키 프레임 애니메이션을 최적화하는 방법)궤도 역학 (또는 CSS 키 프레임 애니메이션을 최적화하는 방법)May 09, 2025 am 09:57 AM

자신의 코드를 리팩터링하는 것은 어떤 모습입니까? John Rhea는 자신이 쓴 오래된 CSS 애니메이션을 선택하고 최적화하는 사고 과정을 살펴 봅니다.

CSS 애니메이션 : 만들기가 어렵습니까?CSS 애니메이션 : 만들기가 어렵습니까?May 09, 2025 am 12:03 AM

cssanimationsarenherinly에 hardbutreepracticenderstandingofcsspropertiesandtimingflestions.1) startsimpleants withsimpleatslikeScalingabuttononHoverusingKeyframes.2) useAsingfuctionslikecubic-bezierfornateffects, 그러한 분위기, 3)

@keyframes CSS : 가장 많이 사용되는 트릭@keyframes CSS : 가장 많이 사용되는 트릭May 08, 2025 am 12:13 AM

@keyframesispopularduetoitstativerstatility 및 powerincreatingsmoothcssanimations.keytricksinclude : 1) states 사이에 moothtransitionsbettites, 2) 애니메이션 multiplepropertiessimultory, 3) vendorPixesforBrowsercompatibility, 4) 빗질을 사용하여

CSS 카운터 : 자동 번호 매기기에 대한 포괄적 인 안내서CSS 카운터 : 자동 번호 매기기에 대한 포괄적 인 안내서May 07, 2025 pm 03:45 PM

csScounterSearedTomanageAutomaticNumberingInberingInwebDesigns.1) 1) theCanbeusedfortablestoffContents, ListItems 및 CustomNumbering.2) AdvancedUsesInSinestedNumberingsystems.3) CreativeUseNvolvecust를 CreativeSinvolecust.4) CreativeSinvolvecust

스크롤 구동 애니메이션을 사용한 현대 스크롤 그림자스크롤 구동 애니메이션을 사용한 현대 스크롤 그림자May 07, 2025 am 10:34 AM

특히 모바일 장치에 스크롤 그림자를 사용하는 것은 Chris가 이전에 다룬 미묘한 UX입니다. Geoff는 애니메이션 타임 라인 속성을 사용하는 새로운 접근 방식을 다루었습니다. 또 다른 방법이 있습니다.

이미지 맵 재 방문이미지 맵 재 방문May 07, 2025 am 09:40 AM

빠른 새로 고침을 통해 실행합시다. 이미지 맵은 html 3.2로 돌아가는데, 먼저 서버 측 맵과 클라이언트 측지 맵은 맵 및 영역 요소를 사용하여 이미지를 통해 클릭 가능한 영역을 정의했습니다.

DEVS 상태 : 모든 개발자를위한 설문 조사DEVS 상태 : 모든 개발자를위한 설문 조사May 07, 2025 am 09:30 AM

Devs State Survey는 이제 참여에 개방되어 있으며, 이전 설문 조사와 달리 코드, 직장, 건강, 취미 등을 제외한 모든 것을 포함합니다. 

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

mPDF

mPDF

mPDF는 UTF-8로 인코딩된 HTML에서 PDF 파일을 생성할 수 있는 PHP 라이브러리입니다. 원저자인 Ian Back은 자신의 웹 사이트에서 "즉시" PDF 파일을 출력하고 다양한 언어를 처리하기 위해 mPDF를 작성했습니다. HTML2FPDF와 같은 원본 스크립트보다 유니코드 글꼴을 사용할 때 속도가 느리고 더 큰 파일을 생성하지만 CSS 스타일 등을 지원하고 많은 개선 사항이 있습니다. RTL(아랍어, 히브리어), CJK(중국어, 일본어, 한국어)를 포함한 거의 모든 언어를 지원합니다. 중첩된 블록 수준 요소(예: P, DIV)를 지원합니다.

에디트플러스 중국어 크랙 버전

에디트플러스 중국어 크랙 버전

작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

PhpStorm 맥 버전

PhpStorm 맥 버전

최신(2018.2.1) 전문 PHP 통합 개발 도구

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기