찾다
웹 프론트엔드CSS 튜토리얼CSS 2열 레이아웃 구현 방법 요약 공유

이 글은 주로 CSS 2단 레이아웃 구현 방법을 요약하고, 절대+마진, 부동소수점+마진 방식 등 몇 가지 실무와 이슈에 대해 논의합니다. 필요한 친구는

2단 레이아웃을 참고하세요. 아마도 가장 고전적인 웹 페이지 레이아웃 방법일 것입니다. 이 블로그에서는 이 레이아웃을 사용합니다. 2열 레이아웃에서는 기본 열(기본)에 적응형 너비가 있고 하위 열(사이드바)에 고정 너비가 있는 것이 가장 일반적입니다.
오늘은 고정 너비 + 적응형 2열 레이아웃을 구현하는 방법에 대해 논의해 보겠습니다.

1.절대 + 마진 방식

가장 먼저 떠오르는 것은 절대 + 마진 방식을 사용하는 것입니다. 먼저 코드를 살펴보겠습니다.

<p class="container">
    <p class="sidebar">子列</p>
    <p class="main">主列</p>
</p>
.container {   
 position: relative;   
}   
.sidebar {   
 position: absolute;   
 top: 0;   
 left: 0;   
 width: 200px;   
 height: 300px;   
 background-color: rgba(255, 0, 0, .5);   
}   
.main {   
 height: 300px;   
 margin-left: 210px;   
 background-color: rgba(0, 255, 0, .5);   
}

이 메서드는 위치를 사용하여 문서 흐름에서 사이드바 열을 가져온 다음 기본 열의 왼쪽 여백을 사용하여 제거합니다. 사이드바 열로 덮힌 부분. 이러한 방식으로 고정 너비 + 적응형 2열 레이아웃을 달성했습니다.

(1) 열 순서 조정

HTML을 수정하지 않고 CSS만 수정하면 왼쪽과 오른쪽 열의 순서를 바꿀 수 있습니다. 코드 참조:

.sidebar {   
 position: absolute;   
 top: 0;   
 rightright: 0;   
}   
.main {   
 margin-right: 210px;   
}

(2) 메인 컨텐츠 컬럼이 먼저 표시됩니다

좀 더 완벽하게 생각해보자 메인 컬럼을 사이드바에 넣을 수 있을까요? 기본 콘텐츠가 먼저 로드되고 렌더링되도록 열 앞에 배치합니까? 시도해 보자!

<p class="container">
    <p class="main">主列</p>
 <p class="sidebar">子列</p>
</p>

위의 간단한 조정만 하면 CSS 수정이 필요하지 않습니다!

(3) 문제점

이 방법은 장점이 많지만 치명적인 단점이 있다. 사이드바 열이 문서 흐름과 분리되어 있기 때문에 사이드바 열이 메인 열보다 높을 때 후속 레이아웃인 문제 데모를 다루게 됩니다.
컨테이너 컨테이너에 Overflow:hidden을 추가하면 사이드바의 오버플로 부분이 잘립니다. 이 레이아웃에서는 실제로 이 문제에 대한 효과적인 해결책이 없습니다.

2. Float + 마진 방식

그럼 2열 레이아웃을 구현하기 위한 float + 마진이 먼저 떠오르네요. 왼쪽 열의 너비는 고정되어 있습니다. 주요 콘텐츠는 적응형입니다. 코드는 다음과 같습니다.

<p class="sidebar">子列</p>
<p class="main">主列</p>
rrree

이 구현 방법은 비교적 간단합니다. 먼저 하위 열을 왼쪽으로 띄운 다음 기본 열에 margin-left를 설정하여 표시 공간을 남겨둡니다. 하위 열의 경우.

그렇다면 이 방법은 열 위치 교환을 지원합니까? 확신하는. CSS 코드는 다음과 같습니다.

.sidebar {   
 float: left;   
 width: 200px;   
 height: 300px;   
 background-color: rgba(255, 0, 0, .5);   
}   
.main {   
 height: 300px;   
 margin-left: 210px;   
 background-color: rgba(0, 255, 0, .5);   
}

문제:

float + margin 방식이 좋은 방법인 것 같은데 앞서 언급한 메인 컬럼은 먼저 표시됩니다. 최적화를 달성할 수 없습니다.

3. float + 음수 여백 방식

더 이상 고민하지 말고 바로 코드로 넘어가겠습니다.

.sidebar {   
 float: rightright;   
 width: 200px;   
 height: 300px;   
 background-color: rgba(255, 0, 0, .5);   
}   
.main {   
 height: 300px;   
 margin-right: 210px;   
 background-color: rgba(0, 255, 0, .5);   
}
rrree

여러분 알아야 할 이중 날개 레이아웃으로 메인 컬럼이 먼저 표시되는 것을 볼 수 있습니다. 구현 과정은 다음과 같습니다.

먼저 메인 열과 사이드바 열을 띄운 다음 음수 여백을 통해 사이드바 열의 위치를 ​​올바르게 지정합니다.
기본 열을 p에 중첩하고 p의 너비 값을 100%로 설정합니다.
마지막으로 메인 열의 왼쪽 여백을 설정하여 사이드바로 가려진 부분을 제거합니다.

위 내용은 CSS 2열 레이아웃 구현 방법 요약 공유의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
궤도 역학 (또는 CSS 키 프레임 애니메이션을 최적화하는 방법)궤도 역학 (또는 CSS 키 프레임 애니메이션을 최적화하는 방법)May 09, 2025 am 09:57 AM

자신의 코드를 리팩터링하는 것은 어떤 모습입니까? John Rhea는 자신이 쓴 오래된 CSS 애니메이션을 선택하고 최적화하는 사고 과정을 살펴 봅니다.

CSS 애니메이션 : 만들기가 어렵습니까?CSS 애니메이션 : 만들기가 어렵습니까?May 09, 2025 am 12:03 AM

cssanimationsarenherinly에 hardbutreepracticenderstandingofcsspropertiesandtimingflestions.1) startsimpleants withsimpleatslikeScalingabuttononHoverusingKeyframes.2) useAsingfuctionslikecubic-bezierfornateffects, 그러한 분위기, 3)

@keyframes CSS : 가장 많이 사용되는 트릭@keyframes CSS : 가장 많이 사용되는 트릭May 08, 2025 am 12:13 AM

@keyframesispopularduetoitstativerstatility 및 powerincreatingsmoothcssanimations.keytricksinclude : 1) states 사이에 moothtransitionsbettites, 2) 애니메이션 multiplepropertiessimultory, 3) vendorPixesforBrowsercompatibility, 4) 빗질을 사용하여

CSS 카운터 : 자동 번호 매기기에 대한 포괄적 인 안내서CSS 카운터 : 자동 번호 매기기에 대한 포괄적 인 안내서May 07, 2025 pm 03:45 PM

csScounterSearedTomanageAutomaticNumberingInberingInwebDesigns.1) 1) theCanbeusedfortablestoffContents, ListItems 및 CustomNumbering.2) AdvancedUsesInSinestedNumberingsystems.3) CreativeUseNvolvecust를 CreativeSinvolecust.4) CreativeSinvolvecust

스크롤 구동 애니메이션을 사용한 현대 스크롤 그림자스크롤 구동 애니메이션을 사용한 현대 스크롤 그림자May 07, 2025 am 10:34 AM

특히 모바일 장치에 스크롤 그림자를 사용하는 것은 Chris가 이전에 다룬 미묘한 UX입니다. Geoff는 애니메이션 타임 라인 속성을 사용하는 새로운 접근 방식을 다루었습니다. 또 다른 방법이 있습니다.

이미지 맵 재 방문이미지 맵 재 방문May 07, 2025 am 09:40 AM

빠른 새로 고침을 통해 실행합시다. 이미지 맵은 html 3.2로 돌아가는데, 먼저 서버 측 맵과 클라이언트 측지 맵은 맵 및 영역 요소를 사용하여 이미지를 통해 클릭 가능한 영역을 정의했습니다.

DEVS 상태 : 모든 개발자를위한 설문 조사DEVS 상태 : 모든 개발자를위한 설문 조사May 07, 2025 am 09:30 AM

Devs State Survey는 이제 참여에 개방되어 있으며, 이전 설문 조사와 달리 코드, 직장, 건강, 취미 등을 제외한 모든 것을 포함합니다. 

CSS 그리드는 무엇입니까?CSS 그리드는 무엇입니까?Apr 30, 2025 pm 03:21 PM

CSS 그리드는 복잡하고 반응이 좋은 웹 레이아웃을 만드는 강력한 도구입니다. 디자인을 단순화하고 접근성을 향상 시키며 이전 방법보다 더 많은 제어를 제공합니다.

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 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

SublimeText3 영어 버전

SublimeText3 영어 버전

권장 사항: Win 버전, 코드 프롬프트 지원!

SublimeText3 Linux 새 버전

SublimeText3 Linux 새 버전

SublimeText3 Linux 최신 버전

Eclipse용 SAP NetWeaver 서버 어댑터

Eclipse용 SAP NetWeaver 서버 어댑터

Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

안전한 시험 브라우저

안전한 시험 브라우저

안전한 시험 브라우저는 온라인 시험을 안전하게 치르기 위한 보안 브라우저 환경입니다. 이 소프트웨어는 모든 컴퓨터를 안전한 워크스테이션으로 바꿔줍니다. 이는 모든 유틸리티에 대한 액세스를 제어하고 학생들이 승인되지 않은 리소스를 사용하는 것을 방지합니다.