찾다
웹 프론트엔드CSS 튜토리얼CSS에서 적응 효과를 얻기 위해 Rem 레이아웃을 사용하는 방법

CSS에서 적응 효과를 얻기 위해 Rem 레이아웃을 사용하는 방법

왜 적응형인가요?

예를 들어 모바일 페이지의 경우 디자이너가 제공한 비주얼 초안의 캔버스 너비는 750이고, 비주얼 초안의 노란색 블록 크기는 702 x 300이며 아트보드 중앙에 위치합니다. 모든 장치의 프레젠테이션 비율이 모형과 동일하고 레이아웃 뷰포트의 너비에 따라 비례적으로 크기가 조정되기를 바랍니다.

CSS에서 적응 효과를 얻기 위해 Rem 레이아웃을 사용하는 방법

모바일 측에서는 일반적으로 레이아웃 뷰포트 너비 = 장치 너비, 즉 콘텐츠가 표시되는 영역이 장치 화면 내에 있도록 설정합니다.

<meta name="viewport" content="width=device-width, initial-scale=1.0">

하지만 기기마다 너비가 다르므로 레이아웃 뷰포트의 너비도 다릅니다. 예를 들어 iPhone 6의 레이아웃 뷰포트 너비는 375이고 iPhone6 ​​Plus의 레이아웃 뷰포트 너비는 414입니다.

(권장 관련 비디오 튜토리얼: css 비디오 튜토리얼)

캔버스 너비가 750인 주어진 시각적 초안의 경우 레이아웃 뷰포트 너비가 375인 iPhone 6 장치에서 렌더링되면 요소를 변경할 수 있습니다. 픽셀 값을 2로 나누기 위한 시각적 초안에서 코드는 다음과 같습니다.

.box{
    width: 351px;
    height: 150px;
    margin-top: 40px;
    background: #F5A623;
}

그런 다음 iPhone 6의 렌더링은 오른쪽과 같으며 이는 왼쪽 모형의 레이아웃과 일치합니다.

CSS에서 적응 효과를 얻기 위해 Rem 레이아웃을 사용하는 방법

하지만 iPhone 6 Plus에서는 동일한 코드가 다르게 나타나고 양쪽 사이의 거리가 더 넓어집니다. iPhone 6 Plus의 레이아웃 뷰포트는 iPhone 6보다 넓기 때문에 직사각형 프레임의 크기는 변경되지 않았으며 여전히 315 x 150입니다.

CSS에서 적응 효과를 얻기 위해 Rem 레이아웃을 사용하는 방법

캔버스 너비가 750인 주어진 모형의 경우 레이아웃 뷰포트 너비가 414인 iPhone 6 Plus 장치에서 렌더링되면 모형에 있는 요소의 픽셀 값을 (750)으로 비례적으로 나눌 수 있습니다. / 414 ) 즉,

.box{
    width: 387.5px;
    height: 165.6px;
    margin-top: 44.2px;
    background: #F5A623;
}

페이지 표시 효과도 시각적 초안과 동일할 수 있습니다.

CSS에서 적응 효과를 얻기 위해 Rem 레이아웃을 사용하는 방법

장치 너비(뷰포트 너비가 다름)가 다른 페이지에서 시각적 초안과 동일한 효과를 렌더링하려면 다른 CSS 픽셀 값을 작성해야 합니다. 우리의 목표는 동일한 CSS 코드를 사용하여 다양한 너비의 장치에서 시각적 초안과 동일한 효과를 표시하는 것입니다. 이는 시각적 초안의 요소와 캔버스의 크기 비율에 따라 다양한 장치에서 균등하게 크기를 조정하는 것을 의미합니다. , 다른 장치에서 동일한 효과를 얻기 위해 장치에 대한 적응형 효과입니다.

Rem 레이아웃을 사용하여 적응형 문제 해결

레이아웃 뷰포트의 너비가 변경됨에 따라 동일한 CSS 코드를 사용하여 요소 크기가 시각적 초안의 비율에 비례하도록 조정하는 방법은 무엇입니까?

CSS에 상대 단위 rem 기능을 결합했습니다. rem 단위의 픽셀 값은 루트 요소(HTML 요소)의 글꼴 크기에 상대적입니다. 예를 들어 HTML의 글꼴 크기가 100px이고 CSS 스타일에서 요소의 너비가 2rem으로 설정된 경우 페이지에서 이 요소의 너비는 200px이 됩니다.

시각적 초안에 있는 요소의 비례 배율을 기반으로 이러한 관계를 찾습니다.

视觉稿元素尺寸 / 视觉稿画布宽度  
= (rem 值 * HTML 元素的 font-size) / 布局视口宽度 
= rem 值 * (HTML 元素的 font-size / 布局视口宽度)
= rem 值 / (布局视口宽度  /  HTML 元素的 font-size)

If:

布局视口宽度  /  HTML 元素的 font-size = 定值 N

동일한 CSS 코드를 사용하여 모든 장치에서 적용을 구현할 수 있습니다.

rem 值 = N * (视觉稿元素尺寸 / 视觉稿画布宽度 )

따라서 우리는 N 값을 결정하고 적응을 달성하기 위해 두 단계만 더 완료하면 됩니다.

1단계: HTML 요소의 글꼴 크기를 동적으로 설정 = 레이아웃 뷰포트 너비/N

2단계: 변환 목업에서 rem 단위로 내보낸 요소의 CSS 픽셀 값: rem 값 = N * (목업 요소 크기/목업 캔버스 너비)

목업 캔버스의 너비가 750인 경우 rem 계산을 용이하게 하기 위해 값, 선택적으로 N = 7.5를 설정할 수 있으므로 모형의 크기 값을 100으로 나누기만 하면 rem 단위의 CSS 픽셀 값을 얻을 수 있습니다.

추천 튜토리얼: CSS 입문 튜토리얼

위 내용은 CSS에서 적응 효과를 얻기 위해 Rem 레이아웃을 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
이 기사는 脚本之家에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제
Google 글꼴을 태그하고 Goofonts.com을 작성한 방법Google 글꼴을 태그하고 Goofonts.com을 작성한 방법Apr 12, 2025 pm 12:02 PM

Goofonts는 개발자 부인과 디자이너 남편이 서명 한 사이드 프로젝트로, 둘 다 타이포그래피의 큰 팬입니다. 우리는 Google에 태그를 지정했습니다

시대를 초월한 웹 개발 기사시대를 초월한 웹 개발 기사Apr 12, 2025 am 11:44 AM

Pavithra Kodmad

섹션 요소와의 거래섹션 요소와의 거래Apr 12, 2025 am 11:39 AM

두 기사가 정확히 같은 날에 출판되었습니다.

JavaScript API 상태로 GraphQL 쿼리를 연습하십시오JavaScript API 상태로 GraphQL 쿼리를 연습하십시오Apr 12, 2025 am 11:33 AM

GraphQL API를 구축하는 방법을 배우는 것은 매우 어려울 수 있습니다. 그러나 10 분 안에 GraphQL API를 사용하는 방법을 배울 수 있습니다! 그리고 그것은 완벽하게 얻었습니다

구성 요소 수준 CMS구성 요소 수준 CMSApr 12, 2025 am 11:09 AM

구성 요소가 데이터를 쿼리하는 환경에 거주하면 근처에 사는 경우 시각적 구성 요소와

오프셋 경로로 원에 유형을 설정하십시오오프셋 경로로 원에 유형을 설정하십시오Apr 12, 2025 am 11:00 AM

여기 Yuanchuan의 합법적 인 CSS 속임수입니다. 이 CSS 속성 오프셋 경로가 있습니다. 옛날 옛적에, 그것은 모션 경로라고 불렸다가 이름이 바뀌 었습니다. 나

CSS에서 '리버 트'는 무엇을합니까?CSS에서 '리버 트'는 무엇을합니까?Apr 12, 2025 am 10:59 AM

Miriam Suzanne 은이 주제에 대한 Mozilla 개발자 비디오에서 설명합니다.

현대 애호가현대 애호가Apr 12, 2025 am 10:58 AM

나는 이런 것들을 좋아한다.

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

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

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
4 몇 주 전By尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

맨티스BT

맨티스BT

Mantis는 제품 결함 추적을 돕기 위해 설계된 배포하기 쉬운 웹 기반 결함 추적 도구입니다. PHP, MySQL 및 웹 서버가 필요합니다. 데모 및 호스팅 서비스를 확인해 보세요.

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

MinGW - Windows용 미니멀리스트 GNU

MinGW - Windows용 미니멀리스트 GNU

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

PhpStorm 맥 버전

PhpStorm 맥 버전

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

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.