css三大模块之一——盒子模型

盒子模型组成部分:

content(width/height)

padding(内边距)

border(边框)

margin(外边距)

1.盒子边框

border : border-width border-style border-color;

粗细 样式 颜色

边框样式(border-style),常用属性值如下:

none:没有边框

solid:边框为单实线

dashed:边框为虚线

dotted:边框为点线

double:边框为双实线

边框四个方向

border-top 上

border-right 右

border-bottom 下

border-left 左

圆角边框

<style>
        .con1,
        .con2,
        .con3 {
            width: 200px;
            height: 100px;
            background-color: pink;
            margin: 20px;
        }

        .con1 {
            /* border-radius: 10px 10px 10px 10px; */
            /* 左上 右上 右下  左下 */
            border-radius: 10px;

        }

        .con2 {
            border-radius: 10px 20px 30px 40px;
        }

        .con3 {
            width: 200px;
            height: 200px;
            /* 圆的写法 */
            /* border-radius: 100px; */
            border-radius: 50%;
        }
</style>
<div class="con1">圆角边框</div>
<div class="con2">圆角边框</div>
<div class="con3">圆角边框</div>

运行结果

2.内边距

padding-top:上内边距
padding-right:右内边距
padding-bottom:下内边距
padding-left:左内边距

1个值:上下左右都是20px

padding: 20px;

2个值:上下   左右

padding: 10px 20px;

3个值:上   左右   下

padding: 10px 20px 30px;

顺时针  上 右  下 左

padding: 10px 20px 30px 40px;

3.外边距

margin-top:上外边距
margin-right:右外边距
margin-bottom:下外边距
margin-left:上外边距
margin:上外边距 右外边距  下外边距  左外边

1个值:上下左右都是20px

margin: 20px;

2个值:上下   左右

margin: 10px 20px;

3个值:上   左右   下

margin: 10px 20px 30px;

 顺时针  上 右  下 左

margin: 10px 20px 30px 40px;

外边距塌陷

外边距塌陷,也称为外边距合并,是指两个在正常流中相邻(兄弟或父子关系)的块级元素的外边距,组合在一起变成单个外边距的现象。这种现象主要发生在垂直相邻的块元素之间,当给其中一个元素设置margin-bottom,而给另一个元素设置margin-top/bottom时,两个边距会组合在一起,形成一个单一的外边距,且取两者中的较大值。这种行为会导致预期的间距与实际显示的间距不一致,从而影响页面的布局和外观。

解决方案:

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

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

盒子居中的要素:

  1. 块元素
  2. 版心 内容中心的宽度
  3. margin: 0 auto;

清除内外边距:使用通配符*来清除内外边距

* {
            margin: 0;
            padding: 0;
        }

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

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

并列的元素外边距的合并情况:合并后的外边距为两者中的较大者

嵌套的外边距的合并情况:外边距塌陷

解决方案:

  1. 给父元素设置1px的上边框或者1px 上内边距
  2. overflow:hidden; 溢出隐藏 BFC原理

/* 1.给父元素设置1px的上边框或者1px 上内边距 */
            /* border-top: 1px solid red; */
            padding-top: 1px;
/* 2.overflow:hidden; 溢出隐藏 BFC原理*/
            /* 合并后的外边距为两者中的较大者 */
            overflow: hidden;
  1.  行内以及行内块元素如果html元素中间右回车将会被解析为空白符 ,会有空白
  2. 一行内显示的元素当空间不足,会自动换行排列

插入图片和背景图片区别

  1. 插入图片 我们用的最多 比如产品展示类 移动位置只能靠盒子模型 padding margin
  2. 背景图片我们一般用于小图标背景 或者 超大背景图片 背景图片 只能通过 background-position
img {  
		width: 200px;/* 插入图片更改大小 width 和 height */
		height: 210px;
		margin-top: 30px;  /* 插入图片更改位置 可以用margin 或padding  盒模型 */
		margin-left: 50px; /* 插入当图片也是一个盒子 */
	}

 div {
		width: 400px;
		height: 400px;
		border: 1px solid purple;
		background: #fff url(images/sun.jpg) no-repeat;
		background-position: 30px 50px; /* 背景图片更改位置 用 background-position */
	}

盒子大小的计算方式

标准的盒子模型:width/height + padding +border

标准盒子模型:盒子总宽度 = margin + border + padding + width

IE盒子模型/怪异盒子模型:宽度:width

IE盒子总宽度= margin + width

盒子阴影

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

box-shadow: 5px 100px 10px 10px red;

溢出

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

溢出隐藏:

overflow: hidden;

自动:当有内容超出时,自动出现滚动条

overflow: auto;

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

overflow: scroll;

  • 31
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值