css-04

一.外边距()margin)

1.1 外边距实现盒子居中

可以让一个盒子实现水平居中,需要满足一下两个条件:

1. 必须是块级元素。    

2. 盒子必须指定了宽度(width)

然后就给**左右的外边距都设置为auto**,就可使块级元素水平居中。

<style> 
.main {
            /* 盒子居中的要素 */
            /* 1.必须是块级元素 */
            /* 2.版心 内容中心的宽度 */
            /* 3.margin :0 auto;(左右必须是auto) */
            width: 800px;
            height: 100px;
            margin: 0 auto;
            background-color: red;
        }
</style>

 1.2 清除元素的默认内外边距

 <style>
        /* 练习时允许使用通配符清楚内外边距 */
        *{
            margin: 0;
            padding:0;
        } 
</style>

●注意:  行内元素是只有左右外边距的,是没有上下外边距的。 内边距,在ie6等低版本浏览器也会有问题。

我们尽量不要给行内元素指定上下的内外边距就好了。

 1.3 外边距合并

        使用margin定义块元素的垂直外边距时,可能会出现外边距的合并。

1.3.1 相邻块元素垂直外边距的合并(外边距塌陷)

        当上下相邻的两个块元素相遇时,如果上面的元素有下外边距margin-bottom,下面的元素有上外边距margin-top,则他们之间的垂直间距不是margin-bottom与margin-top之和,而是两者中的较大者。这种现象被称为相邻块元素垂直外边距的合并(也称外边距塌陷)。 

        在上篇文章已讲解

1.3.2 嵌套块元素垂直外边距的合并

        对于两个嵌套关系的块元素,如果父元素没有上内边距及边框,则父元素的上外边距会与子元素的上外边距发生合并,合并后的外边距为两者中的较大者,即使父元素的上外边距为0,也会发生合并。

1. 可以为父元素定义1像素的上边框或上内边距。

2. 可以为父元素添加overflow:hidden(overflow 属性规定当内容溢出元素框时发生的事情)。

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        /* 以下父子元素中都含有margin-top,谁的值更大,谁的更明显可以体现出来 */
        
        .father {
            width: 400px;
            height: 200px;
            background-color: blueviolet;
            margin-top: 10px;
            /* 1.给父元素设置1px的上边框或者1px上内边距 */
            /* border-top: 1px solid blueviolet; */
            /* padding-top: 1px; */
            /* 2.溢出隐藏,BFC原理 */
            overflow: hidden;
        }
        
        .son {
            width: 200px;
            height: 100px;
            background-color: yellow;
            margin-top: 20px;
        }
    </style>
</head>

<body>
    <div class="father">
        <div class="son"></div>
    </div>
</body>

</html>

二. CSS盒子模型

         CSS3中可以通过box-sizing 来指定盒模型,即可指定为content-box、border-box,这样我们计算盒子大小的方式就发生了改变。

分两种情况:

       ● box-sizing: content-box 盒子大小为 content (width/heigth)+ padding + border, content-box:此值为其默认值,其让元素维持W3C的标准Box Mode。

        ●box-sizing: border-box 盒子大小为 width/heigth 就是说  padding 和 border 是包含到width里面的。

2.1 盒子模型概念

        就是把HTML页面中的布局元素看作是一个矩形的盒子,也就是一个盛装内容的容器。

一个元素占有空间的大小由几个部分构成,其中包括:

        元素的内容(content),元素的内边距(padding),元素的边框(border),元素的外边距(margin),四个部分,这四个部分一起构成了盒子模型。

2.2  盒子模型分类

盒模型的分类(最重要的部分)

盒模型分为 : W3C标准盒子 、IE盒子(怪异盒子模型)

2.2.1 标准盒子模型计算

 在这种盒模型下,我们所说的元素的 width ,实际上只包含 content

盒子总宽度 = margin + border + padding + width

2.2.1 IE盒子模型 (怪异盒子模型)计算

 在这种盒模型下,我们所说的元素的*width ,实际上包含了 content + padding + border

 盒子总宽度= margin + width

三. 盒子阴影 

  box-shadow:水平阴影 垂直阴影 模糊距离 阴影尺寸 阴影颜色  内/外阴影;

box-shadow: 0px 10px 100px 10px gray; 

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .box {
            width: 200px;
            height: 300px;
            margin: 50px auto;
            border: 2px solid red;
            /* 盒子阴影 */
            /* box-shadow: 水平阴影 垂直阴影 模糊距离(模糊范围) 阴影尺寸 阴影颜色; */
            box-shadow: 0px 10px 100px 10px gray;
        }
    </style>
</head>

<body>
    <div class="box"></div>
</body>

</html>

 

 四. overflow 溢出

         检索或设置当对象的内容超过其指定高度及宽度时如何管理内容。

visible(默认) :  不剪切内容也不添加滚动条。

auto :   超出自动显示滚动条,不超出不显示滚动条

hidden :  不显示超过对象尺寸的内容,超出的部分隐藏掉

scroll :  不管超出内容否,总是显示滚动条

 

    <style>
        .box {
            width: 200px;
            height: 100px;
            border: 1px solid red;
            /* 溢出隐藏 */
            overflow: hidden;
            /*自动:当有内容超出时,自动出现滚动条 */
            overflow: auto;
            /*scro11 :不管超出内容否,总是显示滚动条 */
            overflow: scroll;
        }
    </style>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值