CSS盒子模型、圆角边框、盒子阴影

页面布局的三大核心:盒子模型、浮动、定位。

盒子模型

网页布局的核心:通过css摆放盒子。
盒子模型的组成包括:边框、外边距、内边距、实际内容
盒子模型
padding:默认顶着盒子显示,控制文字与盒子的距离
margin:控制盒子与盒子之间的距离
盒子

边框border

边框包括:边框宽度(粗细)、边框样式(实线、虚线、点线)、边框颜色

div {
    width: 300px;
    height: 200px;
    border-width: 5px;            边框宽度
    border-style: solid;          边框样式:实线
    border-style: dashed;                   虚线
    border-style: dotted;                   点线
    border-style: pink;           边框颜色
}

边框简写

border: 1px solid red;    没有顺序

边框分开写法(用来修改某一条边):

border-top: 1px solid blue;
border-bottom:1px solid pink;

边框只有一条不一样的时候,可以利用层叠性书写:

border: 5px dashed pink;
border-top: 1px solid blue;          覆盖了上面整个盒子的一条上边框

表格的细线边框:
表格细线边框
当给一个表格中的单元格与单元格之间的间距设置为0时,由于相邻两个单元格的边框放在了一起,所以会出现这个部分的宽度比设置的一个单元格边框的宽度要大,为了解决这个问题,可以使用border-collapse属性。
border-collapse属性控制浏览器绘制表格边框的方式,它控制相邻单元格的边框。把相邻的边框合并在一起:

table {
    border-collapse: collapse;    这个属性必须加在table上才有效
} 

边框会影响盒子的实际大小
边框的存在会增加盒子的大小,因为有两种方案:
(1)测量盒子大小的时候,不要量边框
(2)如果测量的时候包含了边框,则需要将width和height的值减去边框的宽度

内边距padding

边框与内容之间的距离。
padding
padding
内边距会影响盒子的实际大小
为了保证盒子大小和效果图保持一致,则需要将width和height的值减去内边距的宽度
如果盒子本身没有指定width、height属性,则padding不会撑开盒子的大小:没有指定宽,则左右的padding不会撑大盒子;没有指定高度,则上下的padding不会撑大盒子

外边距margin

控制盒子与盒子之间的距离
margin
margin

  • 典型应用:让块级盒子实现水平居中,必须满足两个条件:盒子必须指定了宽度;盒子左右的边距设置为auto
    行内元素、行内块元素:想要实现水平居中对齐、只要给其父亲元素添加text-align:center即可
  • 外边距合并
    (1)嵌套块元素垂直外边距的塌陷问题:对于两个嵌套关系(父子关系)的块元素,父元素有上边距同时子元素也有上边距,此时父元素会塌陷较大的外边距值。
    在这里插入图片描述
    解决方案:为父元素指定一个外边框;为父元素指定一个内边距;给父亲添加一个overflow:hidden(常用)

清除内外边距

网页元素很多带有默认的内外边距,且浏览器不同默认的也不同,因为在布局前,要清除一下网页元素的内外边距。

* {
    margin: 0px;    清除内边距
    padding: 0px;   清除外边距
}

行内元素为了照顾兼容性,尽量只设置左右内外边距,不要设置上下内外边距,但是转换为块级和行内级元素就可以了。

圆角边框

让盒子变成圆角。
border-radius属性用来设置元素的内外框圆角。
语法:

border-radius:length;  参数越大弧度越明显,这个参数可以是具体数组也可以是百分比

其原理:
圆角边框
圆角边框的写法:
(1)圆形的写法:当盒子是一个正方形,当length=盒子高度或宽度的一半时,这个盒子就是一个圆形。一半:可以是精确数值,也可以是50%。】
(2)圆角矩形的写法:参数设置为高度的一半
(3)该属性是一个简写属性,其实是:左上角、右上角、右下角、左下角(顺时针)
(4)如果只想设置一个角,可以写为:border-top-left-radius、border-bottom-right-radius等,注意 顺序不能颠倒。

盒子阴影

box-shadow属性为盒子添加阴影。
语法:

box-shadow:h-shadow v-shadow blur spread color inset;  盒子默认外阴影

阴影
blur:影子的虚实,参数越大,越模糊

文字阴影

text-shadow
语法:
text-shadow:h-shadow、v-shadow、blur、color
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值