盒子模型(2)

本文详细解读了CSS盒模型的概念,包括元素的组成(边距、边框、填充和内容)、水平布局规则、阴影和圆角应用、行内元素特性和外边距重叠问题。还介绍了如何解决父子外边距冲突以及盒子大小计算的'content-box'和'border-box'模式。
摘要由CSDN通过智能技术生成

所有HTML元素可以看作盒子,在CSS中,"box model"这一术语是用来设计和布局时使用。

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

盒模型允许我们在其它元素和周围元素边框之间的空间放置元素。

1.水平布局

 水平方向

  margin-left border-left padding-left width padding-right border-right  margin-right

 浏览器规定  水平方向的七个值相加必须要等于父元素内容区的宽度

 0  5px  50px  100px  50px  5px  0    ==500   ?

 像以上这种,如果不等于的话,浏览器它就会自己去调整这7个值,让我们的等式成立,这个过程叫过度约束

浏览器如何调整的?

1、如果7个值中没有设置auto,那浏览器就会调整margin-right

 0  5px  50px  100px  50px  5px  290px    ==500

2、7个值中有3个值可以设置auto   margin-left    width   margin-right

   1个auto,其他两个值为固定值

      浏览器就会调整这个auto  

   2个auto,其他1个值为固定值

     margin-left  width      调整width

     width  margin-right     调整width

     margin-left  margin-right   同时margin-left margin-right,各占一半  

   3个auto

      margin-left  width  margin-right   调整width

2.阴影和圆角

 box-shadow

             用来设置元素的阴影效果,不会影响到页面布局

                第一个值:水平偏移量  正->左  负->右

                第二个值:垂直偏移量  正->下  负->上

                第三个值:模糊半径  默认值0px

                第四个值:颜色     默认值是盒子的背景色

 border-radius: ;  设置圆角效果

        border-radius:50%;设置圆形

3.行内元素盒模型

行内元素盒模型

    content   不可以直接设置宽高,被内容撑开的

    padding   可以内边距,但垂直方向不会挤别人,也就是不会影响页面的布局

    border    可以设置边框,但垂直方向不会挤别人,也就是不会影响页面的布局

    margin    左右可以设置外边距,垂直方向不可以设置

4.外边距重叠问题

1>兄弟元素的垂直方向外边距重叠的问题

    1、两者都为正值,则谁大听谁的

    2、若两者为负者,则谁的绝对值大,听谁的

    3、若一正一负,则听两者相加的结果值

  一般情况下,兄弟元素的外边距重叠问题,不需要额外的解决,利于我们开发

2>

 解决父子外边距重叠的方案 

方案一 

     border: 1px solid transparent; 

方案二:开启了元素的BFC属性

       overflow: hidden;

        margin-top: 100px;

5.盒子大小问题

 默认情况下:盒子可见宽的大小由内容区,内边距,边框共同决定

            box-sizing  用来设置盒子尺寸的计算方式  width/height 指的是谁

                可选值:

                    content-box 内容区 默认值

                    border-box  宽度和高度用来设置整个盒子可见框的大小,包括边框,padding,内容区

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值