前端基础实战笔记:文档流 + 盒子模型

文档流与盒子模型详解

一、文档流(Normal Flow)

1. 文档流概念

HTML元素默认处于文档流中,可分为两种状态:

  • 文档流内
  • 脱离文档流

文档流中元素特性

  • 块级元素

    1. 独占一行显示
    2. 宽度默认继承父元素100%
    3. 高度由内容自动撑开
  • 行内元素

    1. 与其他行内元素共享一行
    2. 宽高由内容决定,不可手动设置
  • 行内块元素

    1. 兼具块级和行内元素特性
    2. 存在3像素间隙问题
示例代码:
html 复制代码
<div class="box">
  <div class="box1">box1</div>
  <div class="box2">box2</div>
</div>
css 复制代码
.box {
  width: 300px;
  height: 300px;
  background-color: #ccc;
}
.box1, .box2 {
  width: 100px;
  height: 100px;
  background-color: red;
  display: inline-block; /* 转换为行内块元素 */
}
.box2 {
  background-color: green;
}

二、盒子模型(Box Model)

1. 基本概念

盒子模型是CSS布局的核心概念,将页面元素视为矩形盒子进行布局设计,只需关注尺寸和位置。

盒子由四个部分组成:

组成部分 类比说明 功能描述
内容区(content) 商品本体 元素的实际内容区域
内边距(padding) 防震材料 内容与边框的缓冲空间
边框(border) 包装外壳 内容区的保护边界
外边距(margin) 物品间距 控制元素间的距离

盒子实际尺寸 = 内容区 + 内边距 + 边框(外边距不计入)

示例代码:
css 复制代码
.box1 {
  width: 200px;
  height: 200px;
  background-color: red;
}
html 复制代码
<div class="box1">
  这是示例文本内容。
</div>

2、边框(Border)

边框定义元素的边界线,区分盒子内外区域。

css 复制代码
.box {
  border: 30px solid black;
  border-color: transparent transparent transparent black;
}

技巧:利用透明边框可制作三角形箭头效果。


3、内边距(Padding)

控制内容与边框之间的间距。

css 复制代码
.box1 {
  width: 200px;
  height: 200px;
  background-color: #bfa;
  border: 10px solid green;
  padding: 20px; /* 简写形式 */
}
.box2 {
  width: 100%;
  height: 100%;
  background-color: orange;
}

4、外边距(Margin)

设置元素之间的间距。

css 复制代码
.box1 {
  width: 200px;
  height: 200px;
  background-color: #bfa;
  border: 10px solid red;
  margin-top: -50px; /* 负外边距 */
}
.box2 {
  width: 200px;
  height: 200px;
  background-color: orange;
}

5、圆角与阴影

圆角(Border-radius)

css 复制代码
.box2 {
  width: 300px;
  height: 300px;
  background-color: #bfa;
  border-radius: 50px 0 50px 0; /* 简写形式 */
}

圆形实现:正方形元素设置border-radius: 50%


是否需要将这些内容整合为完整的HTML教学文档?可包含所有示例代码和说明,便于保存和使用。

相关推荐
不会代码的小猴1 小时前
21. 泛型编程上
开发语言·c++·笔记·算法
紫禁玄科2 小时前
Shai-Hulud:npm生态的自我复制蠕虫风暴
前端·npm·node.js
东风破_2 小时前
后端API没写好,前端难道干等着吗?
前端
用户938515635072 小时前
从前后端分离到前端接口工程:React + MockJS + Vite 解析
前端·后端·全栈
用户938515635072 小时前
从零在浏览器里跑 DeepSeek-R1:WebGPU + Transformers.js 全链路实战(三)
前端·react.js·typescript
excel2 小时前
当前端行情变差,我们为什么还要坚持?
前端
鸿是江边鸟,曾是心上人3 小时前
快速搭建HTTPS本地开发环境
前端
摇滚侠3 小时前
《SpringBoot 3:入门与应用实战》第 2 章 IOC 思想与实现 阅读笔记 1
spring boot·笔记·后端
蒸蒸yyyyzwd3 小时前
秋招不熟悉力扣学习笔记1
笔记·学习·leetcode
To_OC4 小时前
写了 5 个表单 Demo 后,我终于彻底搞懂了 React 受控与非受控组件
前端·react.js·前端框架