rwd-iframe-wrapper()
반응형 아이프레임 래퍼 믹스인
용도
<iframe>
요소를 포함하는 컨테이너 크기에 반응하도록 할 때 사용합니다. (예: Youtube 비디오)
사용법
rwd-iframe-wrapper()
믹스인에 영상의 가로:세로 또는 세로:가로 비율을 리스트로 전달합니다.
rwd-iframe-wrapper($ratio:list)
.usage {
@include rwd-iframe-wrapper(21 9);
}
매개변수(parameter)
유형(type)
필수(required)
기본 값(default)
$ratio
list
16 9
위 예시 코드는 아래의 CSS로 컴파일 되어 출력됩니다.
.usage {
overflow: hidden;
position: relative;
width: 100%;
height: 0;
padding-top: 42.8571428571%; /* 21:9 → 9 / 21 * 100% */
}
.usage iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
로직
rwd-iframe-wrapper()
믹스인은 다음의 로직에 의해 작성되었습니다.
@mixin rwd-iframe-wrapper($ratio: 16 9) {
@if length($ratio) != 2 {
@error 'rwd-iframe-wrapper() 믹스인은 영상의 너비, 높이 비율 값을 연속된 숫자 값 리스트로 전달 받습니다. → 예) @include rwd-iframe-wrapper(4 3);';
}
$ratio-first: first($ratio);
$ratio-last: last($ratio);
$min-ratio: min($ratio-first, $ratio-last);
$max-ratio: max($ratio-first, $ratio-last);
$aspect-ratio: $min-ratio / $max-ratio;
overflow: hidden;
position: relative;
width: 100%;
height: 0;
padding-top: percentage($aspect-ratio);
iframe {
@include absolute(t 0 l 0);
width: 100%;
height: 100%;
}
}
rwd-img() 믹스인에 전달 받은 속성을 전달하여 호출
참고
믹스인에 사용된 Sass의 빌트인 모듈은 다음과 같습니다.
믹스인에 사용된 자체 제작 모듈은 다음과 같습니다.
Last updated
Was this helpful?