CSS 盒模型

本文详细介绍了CSS盒模型的组成,包括内容(content)、内边距(padding)、边框(border)和外边距(margin)的属性设置,以及如何利用边框创建三角形和梯形。内容区域可以通过width和height属性定义,内边距用于元素边框和内容间的间距,边框可设置宽度、样式和颜色,外边距则决定了元素之间的距离。此外,还展示了如何利用外边距实现元素居中对齐。
摘要由CSDN通过智能技术生成

二、CSS 盒模型

概述

CSS 盒模型本质上是一个盒子,封装周围的 HTML 元素,它包括:边距、边框、填充、和实际内容。(即装东西的容器)

所有 HTML 标签可以看作盒子,在 CSS 中,"box model" 这一术语是用来设计和布局时使用的。 (即网页布局 就是利用 CSS 摆盒子)

1、内容 content

/* 康 特 */

概述 :CSS通过为元素设置width和height属性值来规定元素的content内容区域的大小。 元素的内容及子元素默认从内容区域开始排列。

1.width:宽度

length:像素px,rem,em,cm等单位

auto:默认值,浏览器可以计算出内容的实际宽度

百分比%:定义基于包含块(父元素)的宽度百分比来计算宽度的

max-width:最大宽度

min-width:最小宽度

2.height:高度

length:像素px,rem,em等单位

auto:默认值,浏览器可以计算出内容的实际高度

百分比%:定义基于包含块(父元素)的高度百分比来计算高度的

max-height:最大高度

min-height:最小高度

2.内边距

padding

/* 怕 钉 */

      padding内填充
        元素边框和元素内容之间的距离
        取值
        - px 
        - 百分比
        - 上下内填充和左右内填充百分数值是相对于其父元素的width属性计算的  
        - 不可使用负值
​
        单边填充:  
            padding-top: 50px;上内填充
            padding-left: 20px;左内填充
            padding-right: 10px;右内填充
            padding-bottom: 20px;下内填充
​
        复合写法:
        padding: 20px; 一个值  四个填充
        padding: 20px 40px; 两个值 上下填充 左右填充
        padding: 20px 40px 60px; 三个值 上填充 左右填充 下填充
        padding: 20px 40px 60px 80px; 上填充 右填充 下填充 左填充(顺时针方向)
   .box1 {
            width: 100px;
            height: 100px;
            background-color: yellow;
            padding-top: 50px;
            padding-left: 20px;
            padding-right: 10px;
            padding-bottom: 20px;
​
        }
​
        .box2 {
            width: 100px;
            height: 100px;
            background-color: tomato;
            padding: 20px 40px 60px 80px;
        }
​

3.边框

围绕着内容和内填充区域的线

        1.border-width:边框的宽度
        单位:像素
        注意:只写一个border-width设置不上边框的宽的,得写上边框的线型
        2.border-style:边框的线型
          1.solid 单实线
          2.double 双实线
          3.dashed 条状虚线
          4.dotted 点状边框
          5.none  没有边框
        3.border-color:边框的颜色
          1.关键词
          2.十六进制色值
          3.rgb()
          4.rgba()
          默认边框的颜色为元素本身的前景色
          4.复合写法
          例子:
          border-color: pink; 一个值:四个边框
          border-color: pink gold; 两个值:上下边框  左右边框
          border-color: pink gold greenyellow; 三个值:上边框 左右边框  下边框
          border-color: pink gold greenyellow purple;上边框 右边框 下边框 左边框(顺时针方向)
          border-width和border-style同样效果
        5.单独设置
        例子:
         /* 上边框 */
        border-top-width: 50px;
        border-top-style: solid;
        border-top-color: yellow;
         /* 下边框 */
        border-bottom-width: 50px;
        border-bottom-style: dashed;
        border-bottom-color: brown;
        单边框复合写法:
        border-left: 50px solid cyan;
        边框的宽度 边框的线型 边框的颜色
        6.边框的复合写法
        border:边框的宽度 边框的线型 边框的颜色
        border: 100px solid purple;
        7.去掉边框
        border:0;
        border:none;

利用边框实现三角形

 用边框实现三角形的规律:
 盒子大小宽高为0
 要那个三角形,他的对边为none,他相邻的边框的颜色为透明色,transparent
 /* 上三角形
       实现上边三角形,对边为none,也就是下边框为none,左右边框的颜色为透明色
        
         */
        .box1 {
            width: 0;
            height: 0;
​
            /* border: 100px solid tomato;
​
            border-bottom: none;
            border-left-color: transparent;
            border-right-color: transparent; */
​
            border-top: 100px solid tomato;
            border-left: 100px solid transparent;
            border-right: 100px solid transparent;
​
        }
​

利用边框实现梯形

 /* 用边框实现梯形的规律
        盒子大小不能为零
         要那个梯形,他的对边为none,他相邻的边框的颜色为透明色,transparent */
​
        /* 上梯形
        
        实现上梯形,对边为none,也就是下边框为none,左右边框的颜色为透明色 */
​
        .box1 {
            width: 100px;
            height: 100px;
            /* background-color: brown; */
            /* border: 100px solid red;
            border-color: tomato purple blue olivedrab;
​
            border-bottom: none;
            border-left-color: transparent;
            border-right-color: transparent; */
​
            border-top: 100px solid tomato;
            border-left: 100px solid transparent;
            border-right: 100px solid transparent;
​
​
        }
​
        /* 左梯形
        实现左梯形,对边为none,也就是右边框为none,上下边框的颜色为透明色 
         */
        .box2 {
            width: 100px;
            height: 100px;
            /* background-color: brown; */
            /* border: 100px solid red;
            border-color: tomato purple blue olivedrab;
​
            border-right: none;
            border-top-color: transparent;
            border-bottom-color: transparent; */
​
            border-left: 100px solid olivedrab;
            border-top: 100px solid transparent;
            border-bottom: 100px solid transparent;
​
        }

4.外边距

margin

/* 妈 真 */

 外间距:margin
        盒外属性:两个盒子之间的距离
​
        取值
        - px
        - auto浏览器自动计算
        - 百分比
        - 允许使用负值
单边外间距:
        margin-top: 20px;上外间距
        margin-right: 40px;右外间距
        margin-bottom: 20px;下外间距
        margin-left: 20px;左外间距
        复合写法
        margin: 20px; 一个值  四个外间距
        margin: 20px 40px; 两个值 上下外间距 左右外间距
        margin: 20px 40px 60px; 三个值 上外间距 左右外间距 下外间距
        margin: 20px 40px 60px 80px; 上外间距 右外间距 下外间距 左外间距(顺时针方向)
​
盒子水平居中
margin: 0 auto; 需要与width属性配合使用才会有效——固定宽度且居中
​

1.外边距应用

  • 外边距实现已知宽度的块级盒子居中

  • 需要与width属性配合使用才会有效——固定宽度且居中

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值