연습장

7-1 패턴 본문

Sass

7-1 패턴

js0616 2024. 8. 31. 20:58

https://imagineu.tistory.com/23#main.scss

 

[CSS] SCSS 아키텍처 7-1 pattern 폴더 및 파일 정리 하는 기준 (+ 실제 구성)

CSS 공부를 위해 Udemy에서 advanced css인강을 하나 들었었는데, 그 인강에서 SCSS 파일들을 구분해놓은 방식이 신기했었다. 나중에 알고보니까 그렇게 파일을 구분해놓은 것이 CSS 아키텍처 중 하나인

imagineu.tistory.com

 

https://sass-guidelin.es/ko/#section-37

 

Sass Guidelines — Korean translation

분별 있고, 유지∙확장 가능한 Sass 작성을 위한 주관적인 스타일가이드.

sass-guidelin.es

 

7-1 패턴

abstracts, base, components, layout, pages, themes, vendors, + main

sass/
|
|abstracts/
|   |_variables.scss    # Sass 변수
|   |_functions.scss    # Sass 함수
|   |_mixins.scss       # Sass 믹스인
|   |_placeholders.scss # Sass 플레이스홀더
|
|base/
|   |_reset.scss       # 리셋/정규화
|   |_typography.scss  # 타이포그래피 규칙
|   …                    # 기타.
|
|components/
|   |_buttons.scss     # 버튼
|   |_carousel.scss    # 캐러셀
|   |_cover.scss       # 커버
|   |_dropdown.scss    # 드롭다운
|   …                    # 기타.
|
|layout/
|   |_navigation.scss  # 네비게이션
|   |_grid.scss        # 그리드 시스템
|   |_header.scss      # 헤더
|   |_footer.scss      # 푸터
|   |_sidebar.scss     # 사이드바
|   |_forms.scss       #
|   …                    # 기타.
|
|pages/
|   |_home.scss        # 한정 스타일
|   |_contact.scss     # 연락처 한정 스타일
|   …                    # 기타.
|
|themes/
|   |_theme.scss       # 디폴트 테마
|   |_admin.scss       # 관리자 테마
|   …                    # 기타.
|
|vendors/
|   |_bootstrap.scss   # Bootstrap
|   |_jquery-ui.scss   # jQuery UI
|   …                    # 기타.
|
`– main.scss             # 메인 Sass 파일

 

 

abstracts

  • 프로젝트에서 사용되는 모든 Sass 도구와 헬퍼를 모읍니다. 모든 전역 변수, 함수, 믹스인, 플레이스홀더
  • 컴파일되었을 때 한 줄의 CSS도 산출하지 않아야 한다 
  • utilities/  또는  helpers/ 

base

  • 리셋 파일, 타이포그래피 규칙, 그리고 아마도 자주 사용되는 HTML 요소에 대한 표준 스타일을 정의

components

  • 슬라이더, 로더, 위젯, 그리고 기본적으로 이들과 비슷한 것을 비롯해 온갖 구체적인 모듈
  • modules

layout

  • 사이트나 어플리케이션의 레이아웃에 기여하는 모든 것
  • partials 

pages

  • 페이지에 한정된 스타일

themes

  • 여러 다른 테마

vendors

  • 대부분의 프로젝트는 Normalize, Bootstrap, jQueryUI, FancyCarouselSliderjQueryPowered 등의 외부 라이브러리와 프레임워크에서 나오는 모든 CSS 파일을 담고 있는 vendors/ 폴더
  • 만약 어느 vendor의 한 부분을 덮어써야 한다면, 덮어쓰는 vendor의 이름을 그대로 딴 파일들을 담는 여덟 번째 폴더인 vendors-extensions/를 만드는 것을 추천
  • vendors-extensions/_boostrap.scss는 Bootstrap의 기본 CSS 일부를 재선언하는 모든 CSS 규칙을 담고 있는 파일입니다.

main

  • 메인 파일은 전체 코드베이스에서 언더스코어로 시작하지 않는 유일한 Sass 파일이어야 합니다. 
  • @import와 주석 외에는 아무것도 포함하지 않아야 합니다.

 

 

 

새로운 변수는 다음의 기준이 충족될 때에만 생성되어야 합니다.

  • 값이 적어도 두 번 반복된다;
  • 값이 적어도 한 번은 수정될 가능성이 크다;
  • 값의 실현은 모두 변수와 관련되어 있다(즉, 우연에 의한 것이 아니라).

 

 

 

'Sass' 카테고리의 다른 글

06. Live Sass Compiler  (0) 2024.08.21
요약  (0) 2024.08.08
05. Webpack 개발 환경에서 Sass 사용하기  (0) 2024.08.08
04. 기본 내장 함수  (0) 2024.08.08
03. Nesting, import, extend, 조건과 반복, Mixin, Function  (0) 2024.08.08