요소 쿼리 : 뷰포트 제한 이외의 반응 형 설계
이 기사는 기존 미디어 쿼리를 넘어 반응 형 디자인 기능을 확장하는 강력한 기술인 요소 쿼리를 탐색합니다. 뷰포트 치수에 반응하는 미디어 쿼리와 달리 요소 쿼리는 너비, 문자 수 또는 스크롤 위치와 같은 개별 요소 속성을 기반으로 스타일링을 허용합니다. 이 향상된 응답 성은 재사용 가능한 구성 요소를 만들고 동적 레이아웃을 처리하는 데 특히 유익합니다.
이 기사는 Adrian Sandu, Giulio Mainardi 및 Tom Hodgins가 동료 검토했습니다. Sitepoint의 동료 검토 자에게 감사의 말을 전합니다
요소 쿼리의 주요 장점 :
구성 요소 수준 응답 성 : 뷰포트 크기뿐만 아니라 고유 속성을 기반으로 한 스타일 요소. 전체 화면 치수에 관계없이 컨테이너 내의 변경에 레이아웃을 조정합니다.
재사용 가능한 구성 요소 :
다른 컨텍스트와 부모 컨테이너에 완벽하게 적응하여 코드 재사용 성과 유지 관리 가능성을 향상시키는 구성 요소를 만듭니다.
동적 레이아웃 : 요소를 추가하거나 제거하는 상황이 기존 요소에 사용 가능한 공간에 영향을 미치는 상황을 처리하여 최적의 프리젠 테이션을 유지합니다.
왜 요소 쿼리를 사용 하는가?
요소 쿼리 주소 시나리오에서 미디어 쿼리의 제한 사항은 뷰포트 차원이 아닌 개별 요소 속성이 스타일 요구를 지시하는 경우. 이 예를 고려하십시오 :
열 추가 : 사이드 바를 추가하면 기존 열의 공간이 줄어 듭니다. 미디어 쿼리는 조정되지 않지만 요소 쿼리는 좁은 열 내에서 이미지와 텍스트를 완벽하게 크기로 조정할 수 있습니다.
- 반응 형 위젯 : 너비의 컨테이너에 내장 된 위젯은 뷰포트가 아닌 컨테이너의 크기를 기준으로 스타일이 필요합니다. 요소 쿼리는이 컨텍스트 인식 스타일을 제공합니다
독립적 인 구성 요소 스타일 :
주변 요소의 크기 또는 페이지 레이아웃에 관계없이 의도 한 외관을 유지하는 구성 요소 (예 : 내비게이션 바, 테이블)를 만듭니다. -
- 소개 eqcss :
eqcss.js는 IE9를 포함한 최신 브라우저에서 요소 쿼리 구현을 가능하게하는 JavaScript 라이브러리입니다. 구문은 미디어 쿼리를 반영하여 채택을 단순화합니다. 강력하지만 성능을 염두에 두십시오. 과용은 특히 Firefox 및 Edge에서 응답 성에 영향을 줄 수 있습니다
eqcss를 시작하기 :
-
include eqcss.js :
eqcss.js 파일을 HTML에 추가하십시오. IE8 지원의 경우 필요한 PolyFill을 포함하십시오
작성 요소 쿼리 작성 :
미디어 쿼리와 유사한 지시문과 선택기 및 조건을 사용하십시오.
-
재 계산 스타일 : eqcss는 크기 조정 및 스크롤에서 스타일을 자동으로 다시 계산하지만 다른 이벤트의 경우 를 사용하여 수동으로 재 계산을 트리거 할 수 있습니다. .
@element
고급 기능 : @element ".content" and (max-width: 480px) {
.content img {
width: 100%;
}
}
로그인 후 복사
-
메타 선택자 : 사용 , , 및 를 사용하여 요소 자체, 부모, 이전 형제 또는 다음 형제를 대상으로합니다.
EQCSS.apply()
문자 수 : 스타일 요소는 캐릭터 수에 따른 스타일 요소 (예 : 긴 제목의 글꼴 크기 조정).
성능 고려 사항 :
EQCSS는 JavaScript에 의존하므로 성능은 요소 및 쿼리 수에 따라 다릅니다. 특히 성능에 민감한 영역에서 과도한 사용을 피하십시오. 및 Houdini Promise 성능 향상과 같은 미래의 브라우저 기능.
위 내용은 오늘 EQCS를 사용하여 요소 쿼리를 작성합니다의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!