Web课程学习笔记--CSS盒模型

CSS 盒模型

盒模型

网页设计中常听的属性名:内容(content)、填充(padding)、边框(border)、边界(margin), CSS盒子模式都具备这些属性。
这些属性我们可以把它转移到我们日常生活中的盒子(箱子)上来理解,日常生活中所见的盒子也就是能装东西的一种箱子,也具有这些属性,所以叫它盒子模式。
CSS盒子模型就是在网页设计中经常用到的CSS技术所使用的一种思维模型。

盒模型中的边框

盒子模型的边框就是围绕着内容及补白的线,这条线你可以设置它的粗细、样式和颜色(边框三个属性)。
如下面代码为 div 来设置边框粗细为 2px、样式为实心的、颜色为红色的边框:

css 复制代码
div{ border:2px  solid  red;}

上面是 border 代码的缩写形式,可以分开写:

css 复制代码
div{
    border-width:2px;
    border-style:solid;
    border-color:red;
}
  • 注意

border-style(边框样式)常见样式有:
dashed(虚线)| dotted(点线)| solid(实线)。
border-color(边框颜色)中的颜色可设置为十六进制颜色,如:
border-color:#888;//前面的井号不要忘掉。
border-width(边框宽度)中的宽度也可以设置为:
thin | medium | thick(但不是很常用),最常还是用象素(px)。
现在有一个问题,如果有想为 p 标签单独设置下边框,而其它三边都不设置边框样式怎么办呢?css 样式中允许只为一个方向的边框设置样式:

复制代码
div{border-bottom:1px solid red;}

同样可以使用下面代码实现其它三边(上、右、左)边框的设置:

css 复制代码
border-top:1px solid red;
border-right:1px solid red; 
border-left:1px solid red;

宽度和高度

盒模型宽度和高度和我们平常所说的物体的宽度和高度理解是不一样的,css内定义的宽(width)和高(height),指的是填充以里的内容范围。
因此一个元素实际宽度(盒子的宽度)=左边界+左边框+左填充+内容宽度+右填充+右边框+右边界。

填充

元素内容与边框之间是可以设置距离的,称之为"填充"。填充也可分为上、右、下、左(顺时针)。如下代码:

css 复制代码
div{padding:20px 10px 15px 30px;}

顺序一定不要搞混。也可以分开写上面代码。
如果上、右、下、左的填充都为10px;可以这么写

css 复制代码
div{padding:10px;}

如果上下填充一样为10px,左右一样为20px,可以这么写:

css 复制代码
div{padding:10px 20px;}

边界

元素与其它元素之间的距离可以使用边界(margin)来设置。边界也是可分为上、右、下、左。如下代码:

css 复制代码
div{margin:20px 10px 15px 30px;}

也也可以分开写。
如果上右下左的边界都为10px;可以这么写:

css 复制代码
div{ margin:10px;}

如果上下边界一样为10px,左右一样为20px,可以这么写:

css 复制代码
div{ margin:10px 20px;}

总结一下:padding和margin的区别,padding在边框里,margin在边框外。

本文转载自 陈浩的个人博客,《CSS 盒模型》

相关推荐
DKPT13 分钟前
Java桥接模式实现方式与测试方法
java·笔记·学习·设计模式·桥接模式
像风一样自由20202 小时前
HTML与JavaScript:构建动态交互式Web页面的基石
前端·javascript·html
巴伦是只猫2 小时前
【机器学习笔记Ⅰ】13 正则化代价函数
人工智能·笔记·机器学习
aiprtem3 小时前
基于Flutter的web登录设计
前端·flutter
浪裡遊3 小时前
React Hooks全面解析:从基础到高级的实用指南
开发语言·前端·javascript·react.js·node.js·ecmascript·php
好好研究3 小时前
学习栈和队列的插入和删除操作
数据结构·学习
why技术3 小时前
Stack Overflow,轰然倒下!
前端·人工智能·后端
GISer_Jing3 小时前
0704-0706上海,又聚上了
前端·新浪微博
止观止3 小时前
深入探索 pnpm:高效磁盘利用与灵活的包管理解决方案
前端·pnpm·前端工程化·包管理器
whale fall3 小时前
npm install安装的node_modules是什么
前端·npm·node.js