• CSS基础(三)


    一、CSS盒子模型(Box Model)
    所有HTML元素可以看做盒子,在CSS中“box model”这一术语是用来设计和布局使用。
    CSS盒模型本质上是一个盒子,封装周围的HTML元素,它包括:边距、边框、填充和实际内容。
    盒模型允许我们在其它元素和周围元素边框之间的空间放置元素
    盒子模型:
    说明:
    - Margin(外边距):清除边框外的区域,外边距是透明的
    - Border(边框):围绕在内边距和内容外的边框
    - Pandding(内边距):清除周围的区域,内边距是透明的
    - Content(内容):盒子的内容,显示文本和图像
    元素的高度和宽度:
    当指定一个CSS元素的宽度和高度属性时,我们只是设置了内容区域的宽度和高度。而完全大小的元素还需要添加填充、边框和边距。
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="utf-8"> 
    <title>jiumo</title>
    <style>
    div {
        background-color: lightgrey;
        width: 300px;
        border: 25px solid green;
        padding: 25px;
        margin: 25px;
    }
    </style>
    </head>
    <body>
    
    <h2>盒子模型演示</h2>
    
    <p>CSS盒模型本质上是一个盒子,封装周围的HTML元素,它包括:边距,边框,填充,和实际内容。</p>
    
    <div>这里是盒子内的实际内容。有 25px 内间距,25px 外间距、25px 绿色边框。</div>
    
    </body>
    </html>
    让我们自己算算:
    300px (宽)
    + 50px (左 + 右填充)
    + 50px (左 + 右边框)
    + 50px (左 + 右边距)
    = 450px
    如果我们只有250像素的空间:
    div {
        width: 220px;
        padding: 10px;
        border: 5px solid gray;
        margin: 0; 
    }
    最终元素的总宽度计算公式是这样的:
    总元素的宽度=宽度+左填充+右填充+左边框+右边框+左边距+右边距
    元素的总高度最终计算公式是这样的:
    总元素的高度=高度+顶部填充+底部填充+上边框+下边框+上边距+下边距
    二、CSS边框
    css边框属性允许我们指定一个元素边框的样式和颜色
    1. 边框样式
    border-style属性用来定义边框的样式
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="utf-8">
    <title>jiumo</title>
    <style>
        p.none {border-style:none;}
        p.dotted {border-style:dotted;}
        p.dashed {border-style:dashed;}
        p.solid {border-style:solid;}
        p.double {border-style:double;}
        p.groove {border-style:groove;}
        p.ridge {border-style:ridge;}
        p.inset {border-style:inset;}
        p.outset {border-style:outset;}
        p.hidden {border-style:hidden;}
    </style>
    </head>
    
    <body>
        <p class="none">无边框。</p>
        <p class="dotted">虚线边框。</p>
        <p class="dashed">虚线边框。</p>
        <p class="solid">实线边框。</p>
        <p class="double">双边框。</p>
        <p class="groove"> 凹槽边框。</p>
        <p class="ridge">垄状边框。</p>
        <p class="inset">嵌入边框。</p>
        <p class="outset">外凸边框。</p>
        <p class="hidden">隐藏边框。</p>
    </body>
    </html>
    2. 边框宽度
    border-width属性用来指定边框的宽度。
    为边框指定宽度有两种方法:可以指定长度值,比如 2px 或 0.1em(单位为 px, pt, cm, em 等),或者使用 3 个关键字之一,它们分别是 thick 、medium(默认值) 和 thin。
    注意:CSS 没有定义 3 个关键字的具体宽度,所以一个用户可能把 thick 、medium 和 thin 分别设置为等于 5px、3px 和 2px,而另一个用户则分别设置为 3px、2px 和 1px。
    p.one{
        border-style:solid;
        border-width:5px;
    }
    p.two{
        border-style:solid;
        border-width:medium;
    }
    3. 边框颜色
    border-color属性用于设置边框的颜色
    我们还可以设置边框的颜色为"transparent"
    p.one{
        border-style:solid;
        border-color:red;
    }
    p.two{
        border-style:solid;
        border-color:#98bf21;
    }
    4. 单独设置各边
    在CSS中,可以指定不同的侧面不同的边框:
    p {
        border-top-style:dotted;
        border-right-style:solid;
        border-bottom-style:dotted;
        border-left-style:solid;
    }
    border-style属性可以有1-4个值:
    border-style:dotted solid double dashed;
    上边框是 dotted
    右边框是 solid
    底边框是 double
    左边框是 dashed
     
    border-style:dotted solid double;
    上边框是 dotted
    左、右边框是 solid
    底边框是 double
     
    border-style:dotted solid;
    上、底边框是 dotted
    右、左边框是 solid
     
    border-style:dotted;
    四面边框是 dotted
    上面的例子用了border-style。然而,它也可以和border-width 、 border-color一起使用。
    5. 边框属性简写
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="utf-8">
    <title>jiumo</title>
    <style>
        p {
            border-style:solid;
            /*简明单独定义上边框: 宽度 双边框 颜色*/
            border-top:thick double #ff0000;
        }
    </style>
    </head>
    
    <body>
        <p>段落中的一些文本。</p>
    </body>
    </html>
    三、CSS外边距
    CSS margin(外边距)属性定义了元素周围的空间
    margin清除周围的(外边框)元素区域,margin没有背景颜色,是完全透明的。
    margin可以单独改变元素的上、下、左、右边距,也可以一次改变所有的属性。
    在标准文档流下margin设置在垂直方向会出现“塌陷”问题——以最大值为基准。
    在标准文档流下调整子盒子垂直方向的移动会影响父盒子的位置——随着子盒子一起移动。
    1. 可能的值
    - auto:设置浏览器边框。这样的结果会依赖于浏览器
    - length:定义一个固定的margin(使用像素、pt、em等)
    - %:使用一个百分比的边距
    Margin可以使用负值,重叠内容
    2. 单边外边距属性
    margin-top:100px;
    margin-bottom:100px;
    margin-right:50px;
    margin-left:50px;
    3. 简写属性
    margin属性可以有一到四个值。/p>
    margin:25px 50px 75px 100px;
    上边距为25px
    右边距为50px
    下边距为75px
    左边距为100px
     
    margin:25px 50px 75px;
    上边距为25px
    左右边距为50px
    下边距为75px
     
    margin:25px 50px;
    上下边距为25px
    左右边距为50px
     
    margin:25px;
    所有的4个边距都是25px
    四、CSS填充
    CSS padding(填充)是一个简写的属性,定义元素边框与元素内容之间的空间,即:上下左右的内边距。
    1. padding(填充)
    当元素的padding(填充)内边距被清除时,所释放的区域将会受到元素背景颜色的填充
    单独使用padding属性可以改变上下左右的填充
    padding-top:25px;
    padding-bottom:25px;
    padding-right:50px;
    padding-left:50px
     
  • 相关阅读:
    Html.RenderPartial和Html.Partial区别
    SQL Server事务处理
    为什么要使用消息队列(一)
    消息队列的优缺点(三)
    消息队列消息顺序性
    分布式事务之消息队列解决方案
    Solr与tomcat整合,并添加中文分词器
    Solr设置高亮
    Solr执行查询操作
    Lucene使用Filter搜索过滤
  • 原文地址:https://www.cnblogs.com/jiumo/p/9747183.html
Copyright © 2020-2023  润新知