찾다

CSS 박스 모델 관리

Feb 17, 2025 am 10:49 AM

CSS 박스 모델 : 웹 레이아웃을 이해하는 키 CSS를 이해하는 데있어 가장 중요한 것은 다음과 같습니다. 보다 구체적으로, 문서의 각 요소는 상자를 생성합니다. 이 상자는 블록 레벨 박스 또는 인라인 레벨 상자 일 수 있습니다. 상자 유형은 요소가 페이지 레이아웃에 어떤 영향을 미치는지 결정합니다. CSS 박스 모델은 HTML 요소의 레이아웃과 크기를 설명하는 데 사용되는 개념입니다. 각 요소에는 내용, 채우기, 테두리 및 여백에 대한 상자가 포함되어 있습니다. 이 상자는 요소의 내용의 레이아웃과 인접 요소가 그들과 나란히 나타나는 방법을 결정하기 위해 결합됩니다.

요소가 상자를 생성하는지 여부와 생성 된 상자 유형은 마크 업 언어에 따라 다릅니다. CSS는 HTML 문서를 스타일링하는 방법으로 발전 했으므로 많은 CSS 시각 렌더링 모델은 블록 레벨과 인라인 요소를 구별하는 HTML에서 비롯됩니다. 기본적으로 와 같은 요소는 블록 레벨 상자를 생성하지만 , 및 인라인 상자를 만듭니다. 반면에 SVG는 박스 모델을 사용하지 않으므로 대부분의 레이아웃 관련 CSS 속성은 SVG와 함께 사용할 수 없습니다.

블록 레벨 박스는 그림 4.1과 같이 새로운 컨텐츠 블록을 만듭니다. 블록 레벨 박스의 렌더링은 수직이며 소스의 순서대로 배열되며 (테이블을 제외하고) 포함 된 요소의 사용 가능한 너비를 채우도록 확장됩니다. 이것을 일반 스트림이라고합니다. 블록 레벨 박스의 , ,

또는 )입니다. Managing the CSS Box Model

<.> 그림 4.1. 요소 내에 H1, P, UL 및 테이블 요소를 포함하는 블록 레벨 박스 (회색 영역). 대조적으로, 인라인 레벨 박스는 새로운 컨텐츠 블록을 형성하지 않습니다. 대신,이 상자는 블록 레벨 상자 내에서 행을 형성합니다. 그들은 상자의 너비를 수평으로 표시하고 채우고 그림 4.2와 같이 필요한 경우 랩핑됩니다. 인라인 레벨 박스의 , ,

<section></section> <.> 그림 4.2. 마진이있는 인라인 상자의 예 : 1em 및 패딩 : 5px 적용 <a></a>. 하지만 상자의 크기는 어떻게 계산됩니까? 이것은 상황이 더 복잡해지는 곳입니다. 그림 4.3에서 볼 수 있듯이 박스 크기는 상자 내용 영역, 충전 너비 및 테두리 너비의 합입니다. 마진 너비는 요소에 대한 마진 상자를 생성하고 문서의 다른 요소에 영향을 미칩니다. 마진 너비는 상자 자체의 크기에 영향을 미치지 않습니다. <span></span> <em></em> <.> 그림 4.3예를 들어, , 및 width: 300px 요소는 360 픽셀의 계산 너비를 갖는다. 이것은 너비, 왼쪽 및 오른쪽 충전 및 왼쪽 및 오른쪽 테두리 너비 속성의 합입니다. 너비의 300 픽셀, 20 픽셀 채우기 및 10 픽셀 경계를 가진 요소를 만들려면 너비를 240px로 설정해야합니다. 이것이 대부분의 주류 브라우저가 폭을 계산하는 방식입니다. 브라우저 간의 경쟁 모델의 일부 문제를 해결하기 위해 CSS 실무 그룹은 <code>padding: 20px 속성을 ​​도입했습니다. 좋아하는 박스 모델 구현을 선택하고 반응 형 디자인을 처리 할 때 계산을 크게 단순화 할 수 있습니다. border: 10px 사용 <p></p> 선택 상자 모델을 선택하십시오 속성은 CSS 기본 사용자 인터페이스 모듈 레벨 3 사양에 정의되어 있습니다. 두 가지 가능한 값이 있습니다. 처음에 box-sizing 및 속성을 ​​설정하면 콘텐츠 영역의 크기에 영향을 미칩니다. 이것은 CSS 2.1 사양에 정의 된 동작과 일치하며 현대식 브라우저의 기본 동작입니다 (그림 4.4와 같이). 의 값을

로 설정하면 몇 가지 마법 효과가 발생합니다.

box-sizing의 값은 이제 컨텐츠 영역 대신 외부 경계 가장자리에 적용됩니다. 테두리와 채우기는 원소 상자 안에 그려져 Old Internet Explorer 5.5 동작과 일치합니다. 비율과 PX 단위를 사용하여 충전과 경계의 혼합 예를 살펴 보겠습니다.

우리의

box-sizing 요소는 다음 CSS를 모두 적용합니다.이 CSS는 그림 4.5에 표시된 레이아웃을 제공합니다. 여기서 첫 번째 요소는 폭이 60%이고 두 번째 요소의 너비는 60% 40%입니다. > content-box border-box <.> 그림 4.5 기본적으로 box-sizingcontent-box 값은 둘 다 width입니다. height 및 에 box-sizingborder-box 요소를 추가합시다 : width height 그림 4.6의 변화를 볼 수 있습니다. 요소의 너비는 동일하지만

는 폭에 경계와 패딩이 포함되어 있음을 의미합니다. 속성은 내용 영역이 아닌 테두리 에지에 적용되므로 요소는 이제 나란히 배열됩니다.
<div class="wrapper">
  <article>
    <h2 id="This-is-a-headline">This is a headline</h2>
    <p>Lorem ipsum dolor sit amet, consectetur adipisicing ...</p>
  </article>
  <aside>
    <h2 id="This-is-a-secondary-headline">This is a secondary headline</h2>
    <p>Lorem ipsum dolor sit amet, consectetur adipisicing ...</p>
  </aside>
</div>

<.> 그림 4.6 프로젝트에서

를 사용하는 것이 좋습니다. 충전 및 경계의 값을 고려하기 위해 폭 값을 계산할 필요가 없기 때문에 생명이 더 쉬워지며 상자 동작이 더 예측 가능합니다. 를 적용하는 가장 좋은 방법은 재설정 규칙을 사용하는 것입니다. 다음 예제는 Chris Coyier의 CSS- 트릭 기사 "상자 크기 상속이 약간 더 나을 수 있습니다-모범 사례": 에서 나옵니다. box-sizing: border-box 이것은 프로젝트의 기존 부분의 box-sizing: border-box 동작에 영향을 미치지 않으면 서 기본적으로

크기를 기본적으로 적용합니다.
<div class="wrapper">
  <article>
    <h2 id="This-is-a-headline">This is a headline</h2>
    <p>Lorem ipsum dolor sit amet, consectetur adipisicing ...</p>
  </article>
  <aside>
    <h2 id="This-is-a-secondary-headline">This is a secondary headline</h2>
    <p>Lorem ipsum dolor sit amet, consectetur adipisicing ...</p>
  </aside>
</div>
동작에 의존하는 타사 또는 레거시 구성 요소가 없다는 것을 알고 있다면 다음 규칙을 단순화 할 수 있습니다.

관리 박스 모델은 복잡한 레이아웃을 만드는 방법을 이해하는 데있어 하나의 요소 일뿐입니다. border-box CSS 박스 모델에 대한 FAQ (FAQ) box-sizing (FAQ 부분은 기사가 너무 길고 의사 원리 목표와 일치하지 않기 때문에 여기서 생략됩니다. FAQ 부품을 필요에 따라 추가하거나 수정할 수 있습니다.)

위 내용은 CSS 박스 모델 관리의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
Flexbox vs Grid : 둘 다 배워야합니까?Flexbox vs Grid : 둘 다 배워야합니까?May 10, 2025 am 12:01 AM

예, YoushouldLearnbothflexBoxAndgrid.1) FlexBoxisIdealforone-Dimensional, FlexiblelayoutSlikenavigationMenus.2) GridexCelsIntwo-Dimensional, ComplexDesignsSuchasmagazinElayouts.3) 결합 된 BothenSlayoutFlexibility 및 HeartingFortructur

궤도 역학 (또는 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는 이제 참여에 개방되어 있으며, 이전 설문 조사와 달리 코드, 직장, 건강, 취미 등을 제외한 모든 것을 포함합니다. 

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 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

PhpStorm 맥 버전

PhpStorm 맥 버전

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

SublimeText3 중국어 버전

SublimeText3 중국어 버전

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

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

SecList

SecList

SecLists는 최고의 보안 테스터의 동반자입니다. 보안 평가 시 자주 사용되는 다양한 유형의 목록을 한 곳에 모아 놓은 것입니다. SecLists는 보안 테스터에게 필요할 수 있는 모든 목록을 편리하게 제공하여 보안 테스트를 더욱 효율적이고 생산적으로 만드는 데 도움이 됩니다. 목록 유형에는 사용자 이름, 비밀번호, URL, 퍼징 페이로드, 민감한 데이터 패턴, 웹 셸 등이 포함됩니다. 테스터는 이 저장소를 새로운 테스트 시스템으로 간단히 가져올 수 있으며 필요한 모든 유형의 목록에 액세스할 수 있습니다.

Atom Editor Mac 버전 다운로드

Atom Editor Mac 버전 다운로드

가장 인기 있는 오픈 소스 편집기