guqzhou guqzhou
首页
快捷导航
下载站
  • Html 篇
  • Javascript 基础篇
  • 框架

    • Vue2
  • 前端文章

    • Css 篇
    • 微信开发
    • JavaScript
    • Vue
  • 学习笔记

    • 《JavaScript教程》笔记
    • 《ES6 教程》笔记
    • 《Vue》笔记
    • 《TypeScript 从零实现 axios》
    • 小程序笔记
    • JavaScript 基础
  • HTML
  • CSS
  • 技术文档
  • GitHub技巧
  • Nodejs
  • 博客搭建
  • 面试题库

    • HTML
    • CSS
    • jQuery
    • Vue
    • 零碎
  • 面试心得

    • 杂言碎语
  • 摘抄收录

    • ☆ 励志鸡汤
    • ❀ 人间烟火
    • ☣ 万物沦丧
    • ✌ 关掉烦恼
    • ✲ 小酒馆
  • 读书笔记

    • 《小狗钱钱》
    • 《穷爸爸富爸爸》
    • 《聪明人使用方格笔记本》
关于
  • 学习
  • 面试
  • 心情杂货
  • 友情链接
  • 分类
  • 标签
  • 归档
  • 网站
  • 资源
  • Vue资源
  • 主站CDN
  • Vercel
  • Netlify
  • Github
GitHub

guqzhou

喜欢所以去追求!
首页
快捷导航
下载站
  • Html 篇
  • Javascript 基础篇
  • 框架

    • Vue2
  • 前端文章

    • Css 篇
    • 微信开发
    • JavaScript
    • Vue
  • 学习笔记

    • 《JavaScript教程》笔记
    • 《ES6 教程》笔记
    • 《Vue》笔记
    • 《TypeScript 从零实现 axios》
    • 小程序笔记
    • JavaScript 基础
  • HTML
  • CSS
  • 技术文档
  • GitHub技巧
  • Nodejs
  • 博客搭建
  • 面试题库

    • HTML
    • CSS
    • jQuery
    • Vue
    • 零碎
  • 面试心得

    • 杂言碎语
  • 摘抄收录

    • ☆ 励志鸡汤
    • ❀ 人间烟火
    • ☣ 万物沦丧
    • ✌ 关掉烦恼
    • ✲ 小酒馆
  • 读书笔记

    • 《小狗钱钱》
    • 《穷爸爸富爸爸》
    • 《聪明人使用方格笔记本》
关于
  • 学习
  • 面试
  • 心情杂货
  • 友情链接
  • 分类
  • 标签
  • 归档
  • 网站
  • 资源
  • Vue资源
  • 主站CDN
  • Vercel
  • Netlify
  • Github
GitHub
  • css布局

  • css3新特性

    • css3选择器
    • css3盒子模型
      • css3过渡
      • css3之2D转换
      • css3动画
      • css3扩展
    • css篇
    • css3新特性
    guqzhou
    2022-01-20
    0

    css3盒子模型

    # 概述

    页面中的每一个标签都可以称作是一个盒子,也可以把网页中的一块区域称之为盒子

    盒子模型:具有padding、margin、border、content组成

    # 如何转换

    1. 标准盒子:box-sizing: border-content
    2. 怪异盒子:box-sizing:border-box

    # 外边距正常

    水平布局的左右margin是正常的

    # 外边距合并

    垂直布局的块元素,上下margin会合并,最终选择margin最大值,只要给其中一个盒子加margin就好

    # Demo演示外边距合并现象

    可用F12开发者工具查看元素及样式,可打开codepen在线编辑代码。

    <html>
        <div class="demo-box1"></div>
        <div class="demo-box2"></div>
    </html>
    <style>
        .demo-box1 {
            width: 100px;
            height: 100px;
            margin-bottom: 50px;
            background-color: red;
        }
        .demo-box2 {
            width: 100px;
            height: 100px;
            /* 最终浏览器会选择大的 */
            margin-top: 100px; 
            background-color: #146c43;
        }
    </style>
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19

    # 外边距塌陷

    互相嵌套的块级元素,子元素的margin-top会作用在父元素上,导致父元素一起往下移动 ::: note 解决办法

    1. 给父元素设置border-top或者padding -top(分隔父元素的margin-top)
    2. 给父元素加overflow: hidden
    3. 转为行内块元素
    4. 设置浮动 :::

    # Demo演示外边距塌陷

    可用F12开发者工具查看元素及样式,可打开codepen在线编辑代码。

    <html>
        <div class="demo-1">
            <div class="demo-2"></div>
        </div>
    </html>
    <style>
        .demo-1 {
            width: 200px;
            height: 200px;
            margin-bottom: 50px;
            background-color: red;
            overflow: hidden;
        }
        .demo-2 {
            width: 100px;
            height: 100px;
            /* 最终浏览器会选择大的 */
            margin-top: 100px; 
            background-color: #146c43;
        }
    </style>
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21

    # 行内元素margin和padding失效

    1. 水平方向margin和padding布局有效
    2. 垂直方向margin和padding布局无效
    上次更新: 2023/01/29, 11:01:00
    css3选择器
    css3过渡

    ← css3选择器 css3过渡 →

    最近更新
    01
    面向对象
    01-05
    02
    typescript用localStorage封装过期时间
    01-05
    03
    npm、pnpm、yarn删除文件缓存
    12-14
    更多文章>
    Theme by Vdoing | Copyright © 2021-2024 guqzhou | 萌ICP备20238188号
    • 跟随系统
    • 浅色模式
    • 深色模式
    • 阅读模式