안녕하세요! 동일한 CSS를 계속해서 작성했거나 다양한 화면 크기에 반응하는 디자인을 만드는 데 어려움을 겪었다면 잘 찾아오셨습니다. 이 글에서는 작업 흐름을 훨씬 더 원활하게 만들어준 정말 유용한 SASS 믹스인과 기능을 공유하겠습니다. 이 작은 도구를 사용하면 코드를 DRY(반복하지 마세요)로 유지하고 반응형 디자인, 레이어링, 캐시 버스팅 등을 쉽게 수행할 수 있어 많은 시간과 노력을 절약할 수 있습니다.
픽셀을 rems로 변환하거나, 더 깔끔한 레이아웃을 위해 Z-색인을 처리하거나, 재사용 가능한 도우미 클래스를 만드는 등 여기에서 여러분을 위한 정보를 제공합니다. 프로젝트에 쉽게 삽입하여 바로 사용할 수 있는 믹스인과 기능을 안내해 드리겠습니다.
제가 보여드릴 예시는 개선되거나 확장될 수 있으며, 온라인에서 더욱 다양한 예시를 찾아보실 수 있습니다. 하지만 이것들은 제가 개인적으로 가장 많이 사용하는 것들입니다. 뛰어들어 보세요!
- Pixel To Rem 기능
- 반응형 디자인을 위한 미디어 쿼리 믹스인
- 계층적 레이어링을 위한 Z-Index 기능
- 캐시 무효화 단일 또는 다중 배경 이미지
- 캐시 무효화 글꼴
- 절대 포지셔닝
- 텍스트 줄임표
- 아이템 호버
- 재사용을 위한 도우미 클래스
Pixel To Rem 기능
픽셀 값을 rem으로 변환합니다.
@function rem($pixel) { $convertedValue: ($pixel / 16) + rem; @return $convertedValue; } // Usage div { font-size: rem(32); width: rem(600); }
반응형 디자인을 위한 미디어 쿼리 믹스인
미디어 쿼리를 사용한 반응형 디자인을 위한 간단하고 읽기 쉬운 믹스인 사용법.
@mixin small { @media only screen and (max-width: 768px) { @content; } } @mixin medium { @media only screen and (max-width: 992px) { @content; } } @mixin large { @media only screen and (max-width: 1200px) { @content; } } // Usage .title { font-size: 16px; @include small { font-size: 14px; } @include medium { font-size: 18px; } @include large { font-size: 20px; } }
계층적 레이어링을 위한 Z-Index 기능
이 설정을 사용하면 레이아웃의 유연성과 확장성을 유지하면서 시각적 레이어의 깔끔한 계층 구조를 유지할 수 있습니다.
$z-index: ( dropdown: 6, mobileMenu: 7, stickyHeader: 8, tooltip: 10, modalBackdrop: 11, modal: 12, header: 15, notificationToast: 18, spinner: 20, ); @function z-index($key) { @return map-get($z-index, $key); } .header { z-index: z-index(header); }
캐시 무효화 단일 또는 다중 배경 이미지
ID를 사용하여 배경 이미지 캐시
$imageId: unique_id(); @mixin cacheBustBgImages($urls...) { $backgroundImages: (); @each $url in $urls { $backgroundImages: append( $backgroundImages, url("#{$url}?v=#{$imageId}"), comma ); } background-image: $backgroundImages; } // Single Image Usage .hero { @include cacheBustBgImages("asset/images/image.png"); background-size: cover; background-position: center; background-repeat: no-repeat; } // Multiple Image Usage .hero { @include cacheBustBgImages( "asset/images/image.png", "asset/images/other-image.png" ); background-size: cover; background-position: center; background-repeat: no-repeat; }
캐시 무효화 글꼴
ID를 사용하여 앱 글꼴을 캐시합니다.
$fontId: unique_id(); @font-face { font-family: "Custom Fonts"; src: url("asset/images/custom-font.eot?v=#{$fontId}"); src: url("asset/images/custom-font.eot?v=#{$fontId}#iefix") format("embedded-opentype"), url("asset/images/custom-font.woff2?v=#{$fontId}") format("woff2"), url("asset/images/custom-font.woff?v=#{$fontId}") format("woff"), url("asset/images/custom-font.ttf?v=#{$fontId}") format("truetype"), url("asset/images/custom-font.svg?v=#{$fontId}#svg") format("svg"); font-weight: normal; font-style: normal; font-display: swap; }
절대 위치 지정
절대 위치 지정 요소를 위한 믹스인입니다. 상, 우, 하, 좌 순서가 중요합니다.
@mixin absolute($top, $right, $bottom, $left) { position: absolute; top: $top; right: $right; bottom: $bottom; left: $left; } // Usage div { @include absolute(100px, 100px, auto, auto); }
텍스트 줄임표
넘치는 텍스트는 줄임표로 자릅니다.
@mixin text-ellipsis($max-width: 100%) { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; max-width: $max-width; } // Usage .element { @include text-ellipsis(200px); }
아이템 호버
호버 상태의 경우 특정 속성을 전달할 수 있습니다.
@mixin item-hover($color, $bg-color) { &:hover { color: $color; background-color: $bg-color; } } // Usage .button { @include item-hover(white, black); }
재사용성을 위한 도우미 클래스
// Center child elements both vertically and horizontally .flex-center { display: flex; align-items: center; justify-content: center; } // Center element both horizontally and vertically .absolute-center { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); } // Center text .text-center { text-align: center; } // Hide element .hidden { display: none; } // Hide element on desktop view .d-none-desktop { @media screen and (min-width: 680px) { display: none; } } // Hide element on mobile view .d-none-mobile { @media screen and (max-width: 680px) { display: none; } } // Add border radius to element .border-radius { border-radius: 10px; }
읽어주셔서 감사합니다. 글이 유익하셨다면 다른 분들도 보실 수 있도록 좋아요와 댓글 부탁드립니다. 여유로운 날이면 커피 한 잔 사줄 수도 있어요. ?
위 내용은 SASS 믹스인 및 기능으로 워크플로우를 극대화하세요의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

나는 다른 날이 질문을 받았다. 나의 첫 번째 생각은 : 이상한 질문입니다! 특이성은 선택기에 관한 것이며 At-Rules는 선택기가 아니므로 ... 무의미합니까?

그렇습니다. 당신은 할 수 있습니다. 그리고 그것은 실제로 어떤 순서로 중요하지 않습니다. CSS 전 처리기가 필요하지 않습니다. 일반 CSS에서 작동합니다.

CSS 및 JavaScript (및 이미지 및 글꼴 등)와 같은 자산에 멀리 떨어진 캐시 헤더를 설정해야합니다. 브라우저를 알려줍니다

많은 개발자들은 CSS 코드베이스를 유지하는 방법에 대해 글을 썼지 만 코드베이스의 품질을 어떻게 측정하는지에 대해 많은 글을 쓰지 않습니다. 물론, 우리는 가지고 있습니다

짧고 임의의 텍스트를 수락 해야하는 양식이 있습니까? 이름이나 다른 것 같습니다. 정확히 무엇을위한 것입니다. 많은 것이 있습니다

나는 프론트 컨퍼런스를 위해 스위스 취리히로 향하게되어 매우 기쁩니다 (그 이름과 URL을 사랑합니다!). 나는 전에 스위스에 가본 적이 없기 때문에 나는 흥분했다

소프트웨어 개발에서 제가 가장 좋아하는 개발 중 하나는 서버리스의 출현이었습니다. 세부 사항에 푹 빠지는 경향이있는 개발자로서

이 게시물에서는 들어오는 데이터를 위해 동적 경로를 만드는 방법을 보여주기 위해 NetLify에 구축하고 배포 한 전자 상거래 상점 데모를 사용합니다. 상당히입니다


핫 AI 도구

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

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

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

SublimeText3 Linux 새 버전
SublimeText3 Linux 최신 버전

에디트플러스 중국어 크랙 버전
작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

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

MinGW - Windows용 미니멀리스트 GNU
이 프로젝트는 osdn.net/projects/mingw로 마이그레이션되는 중입니다. 계속해서 그곳에서 우리를 팔로우할 수 있습니다. MinGW: GCC(GNU Compiler Collection)의 기본 Windows 포트로, 기본 Windows 애플리케이션을 구축하기 위한 무료 배포 가능 가져오기 라이브러리 및 헤더 파일로 C99 기능을 지원하는 MSVC 런타임에 대한 확장이 포함되어 있습니다. 모든 MinGW 소프트웨어는 64비트 Windows 플랫폼에서 실행될 수 있습니다.

ZendStudio 13.5.1 맥
강력한 PHP 통합 개발 환경
