찾다
웹 프론트엔드CSS 튜토리얼CSS 상자 모델 및 상자 크기 조정 속성 소개

이 기사에서는 CSS 상자 모델과 상자 크기 속성 관련 문제를 주로 소개하는 css에 대한 관련 지식을 제공합니다. 상자 크기 속성은 요소의 전체 너비와 전체 높이를 계산하는 방법을 주로 설정합니다. 패딩과 테두리를 추가해야 하는지 살펴보겠습니다. 모두에게 도움이 되기를 바랍니다.

CSS 상자 모델 및 상자 크기 조정 속성 소개

(학습 영상 공유: css 영상 튜토리얼, html 영상 튜토리얼)

Box 모델 정의 및 분류

CSS 기본 박스 모델은 CSS 사양의 모듈로, 다음을 포함하는 직사각형 Box를 정의합니다. 각각의 내부 여백(padding)과 외부 여백(margin
)은 시각적 서식 모델에 따라 요소를 생성하고 정렬, 배열 및 레이아웃합니다. 종종 문자 그대로 상자 모델, 상자 모델 또는 상자 모델로 번역됩니다.

박스 모델은 다음과 같이 분류됩니다.

  • 표준 정의:
    • 표준 박스 모델
    • 이상한 모드 박스 모델
  • 요소 유형
    • 블록 레벨 박스
    • 인라인 박스
    • 인라인 블록

표준 정의 구분

1. 표준 상자 모델

너비 너비 = 콘텐츠 너비(content) + 패딩 + 테두리 + 여백width = 内容宽度(content) + padding + border + margin

内容宽度仅仅只有content。如果设置一个元素的宽为100px,那么这个元素的内容区会有100px宽,并且任何边框内边距的宽度都会被增加到最后绘制出来的元素宽度中。

2. 怪异模式盒子模型

宽度width = 内容宽度(content + padding + border) + margin

内容宽度包含了contentborderpadding。如果将一个元素的width设为100px,那么这100px会包含它的borderpadding,内容区的实际宽度是width减去(border + padding)的值。大多数情况下,这使得我们更容易地设定一个元素的宽高。

3. box-sizing属性

box-sizing属性有以下两个属性值。

box-sizing属性定义如何计算一个元素的总宽度和总高度,主要设置是否需要加上内边距(padding)和边框等。

例如,假如您需要并排放置两个带边框的框,可通过将 box-sizing 设置为 "border-box"。这样就可以让浏览器呈现出带有指定宽度和高度的框,并把边框和内边距放入框中。

默认情况下,元素的宽度(width) 和高度(height)计算方式如下:

  • width(宽度) + padding(内边距) + border(边框) = 元素实际宽度

  • height(高度) + padding(内边距) + border(边框) = 元素实际高度

1. content-box

默认值,使用标准盒子模型

.contentBox {
    box-sizing: content-box;
    width: 350px;
    border: 10px solid black;
    padding: 0 10px;}

以上代码在浏览器中的渲染的实际宽度是390px

2. border-box

使用怪异模式盒子模型

.borderBox {
    box-sizing: border-box;
    width: 350px;
    border: 10px solid black;
    padding: 0 10px;}

以上代码在浏览器中的渲染的实际宽度就是350px

示例如下:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"> 
<title>123</title>
<style> 
div.container {
  width: 100%;
  border: 2px solid black;
}
div.box {
  box-sizing: border-box;
  width: 50%;
  border: 5px solid red;
  float: left;
}
</style>
</head>
<body>
<div class="container">
  <div class="box">这个 div 占据了左边部分</div>
  <div class="box">这个 div 占据了右边部分</div>
  <div style="clear:both;"></div>
</div>
</body>
</html>

输出结果:

CSS 상자 모델 및 상자 크기 조정 속성 소개

示例二:

<!DOCTYPE html>
<html>
<head>
<style>
* {
  box-sizing: border-box;
}
#example1 {
  width: 300px;
  padding: 40px;  
  border: 15px solid blue;
}
#example2 {
  width: 300px;
  padding: 10px;  
  border: 2px solid red;
}
</style>
</head>
<body>
<h1 id="通用的-nbsp-box-sizing">通用的 box-sizing</h1>
<p>使用 “box-sizing:border-box” 可以让前端开发人员减少很多工作。 上面 head 部分中的第一个样式确保所有元素都以这种更直观的方式调整大小。
你设置的宽度就是实际的宽度,不需要考虑内边距和边框:</p>
<div id="example1">div 的完整宽度为 300px, 不需要考虑内边距和边框。</div>
<br>
<div id="example2">这个 div 的完整宽度也是 300px, 也不需要考虑内边距和边框。</div>
</body>
</html>

输出结果:

CSS 상자 모델 및 상자 크기 조정 속성 소개

元素类型划分

1. 块级盒子

一个被定义成块级的(block)盒子会表现出以下行为:

  • 盒子可以占据父容器的所有可用空间
  • 每个盒子都会换行
  • widthheight属性可以发挥作用
  • 默认情况下h1-h6ppsection都处于block
  • 콘텐츠 너비는 콘텐츠뿐입니다. 요소의 너비를 100px로 설정하면 요소의 콘텐츠 영역 너비는 100px가 되고 모든 테두리내부 여백은 간격의 너비가 마지막으로 그려진 요소의 너비에 추가됩니다.

2. 이상한 모드 상자 모델

너비 너비 = 콘텐츠 너비(콘텐츠 + 패딩 + <code>테두리) + 여백

🎜콘텐츠 너비에는 콘텐츠, 테두리, 패딩. 요소의 너비100px로 설정된 경우 이 100px에는 테두리 패딩에서 콘텐츠 영역의 실제 너비는 <code>너비에서 (테두리 + 패딩)을 뺀 값입니다. 대부분의 경우 이렇게 하면 요소의 너비와 높이를 더 쉽게 설정할 수 있습니다. 🎜🎜3.box-sizing 속성🎜🎜box-sizing 속성에는 다음 두 가지 속성 값이 있습니다. 🎜🎜box-sizing 속성은 요소의 전체 너비와 높이를 계산하는 방법을 정의하고 주로 패딩과 테두리를 추가해야 하는지 여부를 설정합니다. 🎜🎜예를 들어, 경계가 있는 상자 두 개를 나란히 배치해야 하는 경우 상자 크기를 "border-box"로 설정하면 됩니다. 이는 브라우저가 지정된 너비와 높이로 상자를 렌더링하고 상자에 테두리와 패딩을 넣도록 지시합니다. 🎜🎜기본적으로 요소의 너비(너비)와 높이(높이)는 다음과 같이 계산됩니다. 🎜
    🎜🎜너비(너비) + 패딩(패딩) + border(border) = 요소의 실제 너비🎜🎜🎜🎜height(높이) + padding(내부 여백) + border(border) = 요소의 실제 높이🎜🎜🎜

    1. /h3>🎜표준 상자 모델을 사용하는 기본값입니다. 🎜
    border: 10px double red;
    🎜브라우저에서 렌더링된 위 코드의 실제 너비는 390px입니다. 🎜🎜🎜

    2. h3>🎜이상한 모드 상자 모델을 사용하세요. 🎜rrreee🎜브라우저에서 렌더링된 위 코드의 실제 너비는 350px입니다. 🎜🎜🎜🎜예제는 다음과 같습니다:🎜rrreee🎜출력 결과: 🎜🎜CSS 상자 모델 및 상자 크기 조정 속성 소개🎜🎜예 2: 🎜rrreee🎜출력 결과: 🎜🎜 CSS 상자 모델 및 상자 크기 조정 속성 소개 🎜

    요소 유형 구분

    🎜1. 블록 수준 상자 🎜🎜블록으로 정의된 블록 상자는 다음 동작을 나타냅니다. 🎜🎜🎜상자는 사용 가능한 모든 공간을 차지할 수 있습니다. 상위 컨테이너 Space 🎜🎜 각 상자는 🎜🎜 widthheight 속성이 작동합니다 🎜🎜기본적으로 h1-h6, p

, p, section은 모두 block 상태🎜🎜🎜2입니다. 인라인으로 정의됨 (인라인) 상자는 다음 동작을 나타냅니다: 🎜
  • 盒子不会产生换行
  • widthheight属性将不起作用
  • 默认情况下用做链接的a元素、spanem以及strong都处于inline状态

3. 特殊的行内块

如果不希望一个项切换到新行,但希望它可以设定宽度高度,此时我们可以将该元素设置为inline-block

4. 元素类型切换


display属性值
块级盒子 block
内联盒子 inline
行内块 inline-block

4. 盒模型属性设置

1. margin和padding

  • 1个值:四个方向
  • 2个值:上下、左右
  • 3个值:上、左右、下
  • 4个值:上、右、下、左

2. border值

border: 10px double red;

10px、双实线、红色边框。

(学习视频分享:css视频教程html视频教程

위 내용은 CSS 상자 모델 및 상자 크기 조정 속성 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
이 기사는 CSDN에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제
앵커 포지셔닝 그냥 소스 순서를 관리하지 마십시오앵커 포지셔닝 그냥 소스 순서를 관리하지 마십시오Apr 29, 2025 am 09:37 AM

앵커 포지셔닝이 HTML 소스 순서를 철회한다는 사실은 컨텐츠와 프리젠 테이션 사이의 또 다른 문제가있는 또 다른 분리 때문에 CSS-Y이기 때문입니다.

마진은 무엇입니까? 40px 100px 120px 80px를 의미합니까?마진은 무엇입니까? 40px 100px 120px 80px를 의미합니까?Apr 28, 2025 pm 05:31 PM

기사는 CSS 마진 속성, 특히 "마진 : 40px 100px 120px 80px", 응용 프로그램 및 웹 페이지 레이아웃에 미치는 영향에 대해 설명합니다.

다른 CSS 테두리 속성은 무엇입니까?다른 CSS 테두리 속성은 무엇입니까?Apr 28, 2025 pm 05:30 PM

이 기사에서는 CSS 국경 속성에 대해 설명하고 사용자 정의, 모범 사례 및 응답성에 중점을 둡니다. 주요 인수 : Border-Radius는 반응 형 디자인에 가장 효과적입니다.

CSS 배경은 무엇이며 속성을 나열합니까?CSS 배경은 무엇이며 속성을 나열합니까?Apr 28, 2025 pm 05:29 PM

이 기사에서는 CSS 배경 속성, 웹 사이트 디자인 향상에 대한 사용 및 피하는 일반적인 실수에 대해 설명합니다. 주요 초점은 배경 크기를 사용한 반응 형 디자인에 중점을 둡니다.

CSS HSL 색상은 무엇입니까?CSS HSL 색상은 무엇입니까?Apr 28, 2025 pm 05:28 PM

기사는 CSS HSL 색상, 웹 디자인에서의 사용 및 RGB의 장점에 대해 설명합니다. 주요 초점은 직관적 인 색상 조작을 통해 설계 및 접근성을 향상시키는 데 있습니다.

CSS에 댓글을 추가 할 수있는 방법은 무엇입니까?CSS에 댓글을 추가 할 수있는 방법은 무엇입니까?Apr 28, 2025 pm 05:27 PM

이 기사는 CSS의 주석 사용에 대해 논의하고 단일 라인 및 멀티 라인 주석 구문을 자세히 설명합니다. 의견은 코드 가독성, 유지 관리 및 협업을 향상 시키지만 제대로 관리하지 않으면 웹 사이트 성능에 영향을 줄 수 있다고 주장합니다.

CSS 선택기는 무엇입니까?CSS 선택기는 무엇입니까?Apr 28, 2025 pm 05:26 PM

이 기사는 CSS 선택기, 유형 및 HTML 요소 스타일링을위한 사용법에 대해 설명합니다. ID와 클래스 선택기를 비교하고 복잡한 선택기의 성능 문제를 해결합니다.

어떤 유형의 CSS가 우선 순위가 가장 높습니까?어떤 유형의 CSS가 우선 순위가 가장 높습니까?Apr 28, 2025 pm 05:25 PM

이 기사는 CSS 우선 순위에 대해 논의하며, 가장 높은 특이성을 가진 인라인 스타일에 중점을 둡니다. 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 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

MinGW - Windows용 미니멀리스트 GNU

MinGW - Windows용 미니멀리스트 GNU

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

SublimeText3 영어 버전

SublimeText3 영어 버전

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

SublimeText3 Linux 새 버전

SublimeText3 Linux 새 버전

SublimeText3 Linux 최신 버전

SublimeText3 Mac 버전

SublimeText3 Mac 버전

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

Atom Editor Mac 버전 다운로드

Atom Editor Mac 버전 다운로드

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