우리는 CSS 변환 지원을 확인하기 위해 Mixin에 규칙을 포함 시키거나 CSS 전환이 있는지 여부에 따라 조건부 스타일을 출력하는 것과 같은 믹스 인을 더욱 향상시키기 위해 여러 가지 작업을 수행 할 수 있습니다. 지원 여부. 또한 폭과 높이의 유효한 값인지 확인하기 위해 매개 변수에 대한 엄격한 검사를 수행 할 수 있습니다.
그러나 그렇게하는 것이 좋은 일인지 스스로에게 물어봐야합니다. Mixin 자체의 루프 복잡성은 6에 도달했으며, 이는 Sass 도우미 기능의 경우 상당히 많습니다. 여전히 허용 가능하지만 더 많은 코드를 추가하면 루프 복잡성이 더욱 증가 할 수 있습니다.
Flexbox는 어떻습니까?
나는 여러분 중 일부가 좌석에 뛰어 들고 있으며, Flexbox를 사용하여 부모 요소의 요소를 중심으로하는 방법에 대해 생각합니다. 실제로, 이것은 가능하며, 조건이 허용되면 이것은 모든 솔루션 중에서 가장 쉽습니다.
방금 설정 한 솔루션과 Flexbox 솔루션의 주요 차이점은 후자가 부모 요소를 기반으로하는 반면, 전자는 자식 요소에 중점을 둔다는 것입니다 (조상이 정적과 다르게 배치 된 경우).
요소가 하위 요소를 중앙에 있으려면 세 가지 속성 만 설정하면됩니다. 믹스 인, 자리 표시 자, 클래스 또는이를 좋아하는 요소를 만들 수 있습니다.
관련 공급 업체 접두사 (Mixin 또는 AutoPrefixer를 통해)를 추가했다고 가정하면이 솔루션은 많은 브라우저에서 "올바르게 작동"해야합니다. @supports
당신이 짐작해야 할 것처럼, 그것은 다음을 생성합니다 :
최종 생각
우리는 짧은 믹스가 부모의 요소를 쉽게 중심으로하고 싶습니다. 요소가 특정 크기를 가지고 있는지 여부에 관계없이 작동하기에 충분히 똑똑 할뿐만 아니라 친절하고 직관적 인 API를 제공합니다. 이는 매우 중요합니다.
코드를 살펴보면 누구나 라인에 부모 요소의 요소를 중심으로 한 논리를 수행하는 도우미 함수가 포함되어 있음을 즉시 이해할 수 있습니다. 그러나이 방법이 작동하기 위해서는 후자 (또는 DOM 트리의 부모 요소)가 정적과 다른 위치를 가져야한다는 것을 기억하십시오! ;) <..>
당신은 sassmeister 에서이 코드를 사용할 수 있습니다 : https://www.php.cn/link/780bc6caf343bb06a4372c0821012624 .
(공간 제한으로 인해 FAQ 부품은 여기서 생략됩니다. FAQ 부품의 내용은 기사 내용에서 매우 복제되어 필요에 따라 스스로 추가 또는 수정할 수 있습니다.)