• 盒模型


    盒模型

    在CSS中,"box model"这一术语是用来设计和布局时使用,然后在网页中基本上都会显示一些方方正正的盒子。我们称为这种盒子叫盒模型。

    盒模型有两种:标准模型和IE模型。我们在这里重点讲标准模型。

    盒模型示意图

    盒模型的属性

    width:内容的宽度

    height: 内容的高度

    padding:内边距,边框到内容的距离

    border: 边框,就是指的盒子的宽度

    margin:外边距,盒子边框到附近最近盒子的距离

    1.1      Margin 外边距

    u Margin,设置块元素外边距;如:margin:10px;

    n  Marign:10px;,代表设置盒子四边的距离,相对于margin:10px 10px 10px 10px;分别是:上、右、下、左(margin:10px 10px; 分别代表上下左右)

    n  margin-top:10px;  设置盒子上外边距

    n  margin-bottom:10px;  设置盒子下外边距

    n  margin-left:10px;  设置盒子左外边距

    n  margin-right:10px;  设置盒子右外边距

    说明:

    1、盒子和盒子之间的外边距是累计的

    2、盒子可以设置四边的外边距

    3、盒子可以单独设置外边距(上、右、下、左)

    4、Margin:auto 可以设置水平居中(上下不起作用)

    1.2      Border边框

    u border,设置元素的边框;

    如:

    Border- 1px;

    Border-color: red;

    Border-style: solid;

    solid 实线,默认   dashed - 虚线  dotted - 点状线

    n  简写

    Border:宽度 颜色 样式;

    Border:1px red solid;

    n  单独设置四边的样式

    Border-left: 宽度 颜色 样式;

    Border-top: 宽度 颜色 样式;

    Border-right: 宽度 颜色 样式;

    Border-bottom: 宽度 颜色 样式;

    1.3      padding边框

    u padding,设置盒子内容和其边框的距离;

    n  padding:10px;,代表设置盒子四边边框和其内容的距离,相对于padding:10px 10px 10px 10px;分别是:上、右、下、左(padding:10px 10px; 分别代表上下左右)

    n  padding-top:10px;  设置盒子上内边距

    n  padding-bottom:10px;  设置盒子下内边距

    n  padding-left:10px;  设置盒子左内边距

    n  padding-right:10px;  设置盒子右内边距

    说明:

    1、盒子可以设置四边的内边距

    2、盒子可以单独设置内边距(上、右、下、左)

    盒模型的计算

    盒子的真实宽度=width+2*padding+2*border

    盒子的真实宽度=height+2*padding+2*border

    那么在这里要注意看了。标准盒模型,width不等于盒子真实的宽度。

    另外如果要保持盒子真实的宽度,那么加padding就一定要减width,减padding就一定要加width。真实高度一样设置

    <head>
        <meta charset="UTF-8">
        <title>盒模型</title>
        <style>
            div{
                width:300px;
                height:300px;
                border:1px solid red;/*设置边框的宽度和颜色*/
                padding:50px;/*字体到边框的距离*/
                margin-left:100px;/*盒子的左边距离其他的距离*/
                margin-top: 200px;
            }
        </style>
    </head>
    <body>
    <div>
        hahaha
    </div>
    
    </body>

    padding(内边距)

    padding

    padding:就是内边距的意思,它是边框到内容之间的距离

    另外padding的区域是有背景颜色的。并且背景颜色和内容的颜色一样。也就是说background-color这个属性将填充所有的border以内的区域

    padding的设置

    padding有四个方向,分别描述4个方向的padding。

    描述的方法有两种

    1、写小属性,分别设置不同方向的padding

    padding-top: 30px;
    padding-right: 30px;
    padding-bottom: 30px;
    padding-left: 30px;

    2、写综合属性,用空格隔开

    /*上 右 下 左*/
    padding: 20px 30px 40px 50px ;
    
    /*上 左右  下*/
    padding: 20px 30px 40px;
    
    /* 上下 左右*/
    padding: 20px 30px;
                
    /*上下左右*/
    padding: 20px;

    一些标签默认有padding

    比如ul标签,有默认的padding-left值。

    那么我们一般在做站的时候,是要清除页面标签中默认的padding和margin。以便于我们更好的去调整元素的位置。

    我们现在初学可以使用通配符选择器

    *{
      padding:0;
      margin:0;    
    }

    But,这种方法效率不高。

    所以我们要使用并集选择器来选中页面中应有的标签(不同背,因为有人已经给咱们写好了这些清除默认的样式表,reset.css)

    https://meyerweb.com/eric/tools/css/reset/

    border(边框)

    边框

    border:边框的意思,描述盒子的边框

    边框有三个要素: 粗细 线性样式 颜色

    border: solid

     如果颜色不写,默认是黑色。如果粗细不写,不显示边框。如果只写线性样式,默认的有上下左右 3px的宽度,实体样式,并且黑色的边框。

    按照3要素来写border

    border- 3px;
    border-style: solid;
    border-color: red;
    /*
    border- 5px 10px;
    border-style: solid dotted double dashed;
    border-color: red green yellow;
    */

    按照方向划分

    border-top- 10px;
    border-top-color: red;
    border-top-style: solid;
    
    border-right- 10px;
    border-right-color: red;
    border-right-style: solid;
    
    border-bottom- 10px;
    border-bottom-color: red;
    border-bottom-style: solid;
    
    border-left- 10px;
    border-left-color: red;
    border-left-style:solid;

    上面12条语句,相当于 bordr: 10px solid red;

    另外还可以这样:

    border-top: 10px solid red;
    border-right: 10px solid red;
    border-bottom: 10px solid red;
    border-left: 10pxb solid red;

    border:none;

    border:0;

    表示border没有设置样式。

    使用border来制作小三角

    /*小三角 箭头指向下方*/
    <head>
    <meta charset="UTF-8">
    <title>三角形</title>
    <style>
    div{
    0;
    height:0;
    border-bottom: 30px solid red;
    border-left: 30px solid transparent;
    border-right: 30px solid transparent;
    }
    </style>
    </head>
    <body>
    <div></div>
    </body>
     
  • 相关阅读:
    类class解读
    函数重载
    for循环之省略{}
    《c++程序设计现代方法》笔记2
    【程序】c++雇员工资管理系统
    贪婪法
    乘法口诀程序
    百钱买百鸡问题程序
    【转】牛人十个月自学C++ 现在做C#开发工作
    c++基本规则习惯
  • 原文地址:https://www.cnblogs.com/zhaoyunlong/p/9079423.html
Copyright © 2020-2023  润新知