在HTML中,若想要实心划分区域,则:
1、添加标签;
2、对标签设置尺寸(宽高)

但只要是添加了一个元素(标签),就会在页面中生成一个盒子,不同元素产生的盒子模型可能不同,这取决于它CSS的display属性

1、display:当前元素的显示方式

  • display:none;不生成盒子

特点:在页面不显示且不占用尺寸

  • display:block;块盒

特点:块盒独占一行,即使内容只有一个字后面的元素也会换行显示
                  可以设置宽高

  • display:inline;行盒

特点:所有行盒在一行显示,且里面的内容超出一行会自动换行显示

设置宽高无效

  • display:inline-block;行内块盒

特点:既有行盒的特点又有块盒的特点,在一行显示且设置宽高有效

  • display:其他取值;其他盒子

例:后面布局会用display:flex;弹性盒模型

2、IE盒模型

在检查器中,鼠标移到某个标签。页面显示的是该标签边框盒的尺寸,默认渲染的区域也是边框盒。
IE盒模型会导致元素在页面中的实际占用尺寸会发生变化。

box-sizing:盒模型的计算规则。取值有:

内容盒 content-box;;
————由content内容区域组成,设置的宽高就是内容盒的尺寸

边框盒 border-box;
————由padding和content和border组成,设置的宽高就是边框盒的尺寸

填充盒 padding-box;
————由内边距padding和content组成
**注意!!! **:这个取值box-sizing没有,在设置背景剪切background-clip取值这三个才都可以

3、盒模型的组成

centert:内容(存放文本内容)
对某一个标签设置宽度或高度,实际是对content区域内容设置

——font-weight:bold/bolder/;lighter; 字体的粗细

——overflow:溢出内容的显示方式(会创建一个BFC,后面会单独详细说到)

——overflow:visible;依然显示溢出内容

——overflow:hidden;隐藏溢出内容;对超出填充盒padding的内容进行隐藏
——overflow:auto;超出内容的方向出现滚动条

——overflow:scoll;xy轴两个方向出现滚动条

文本换行规则:
中文:标点符号、空格、汉字
英文:标点符号、空格、单词
数字:标点符号、空格

设置标签的断词规则:word-break:break-all; 英文会按照字母进行换行

最大/最小宽高:min/max-height;最小/最大高度;min/max-width;最小/最大宽度

font-size:取值必须是偶数(整数)且不许小于12px
字体:黑体,微软雅黑,衬线字体,非衬线字体
1个汉字=2个字符;1个字符=2个字节 双倍计算

border:边框(取值:粗细;样式;颜色;)

取值:solid实线,dashed虚线,dotted点线,double双实线
简写—border:1px solid red;
不简写——border-top:1px solid red; 只设置上边框
border-top-style:solid;
border-top-color:red;
以此类推

border:solid; 样式不可以省略
border可以省略:
1、厚度,默认3px(为了能展示双实线)
2、颜色,默认文本色(黑色)

outline轮廓,取值:厚度 样式 颜色

问题:outline和border的区别?
外边框,用处和border一样,但是不占像素,无法单独设置每条边
其他适用场景:去除input、a标签的焦点框

transparent,设置颜色透明(可用来做带方向的三角形)

圆角边框border-radius:20px;
目标:在页面中生成一个圆
1、设置宽高数值一致
2、设置边框
3、border-radius设置为宽高的一半

取1个值:4个角的弧度
取2个值:左上右下、左下右上
取3个值:左上、左下右上、右下
取4个值:左上、右上、右下、左下(顺时针)
border-radius:Apx/Bpx; A是x轴的半径,B是y轴的半径

盒子阴影box-shadow:2px 4px 6px red;
控制当前标签的阴影
取值:第1个值:x轴偏移量(宽) 正:向右;负:向左; 第2个值:y轴偏移量(高) 正:向下;负:向上; 第3个值:模糊值; 第4个值:阴影扩散的范围(可不写); 第5个值:颜色
box-shadow:2px 4px 6px 1px red;

文本阴影:text-shadow:2px 4px 6px red;
注:每个值之间的分隔符是空格

padding:内边距(边框与内容之间的距离)
简写:padding:20px;
不简写:padding-top:20px;以此类推
————
取1个值:上下左右
取2个值:上下、左右
取3个值:上、左右、下
取4个值:上、右、下、左 (顺时针方向)

margin:外边距(表示与其他盒子的距离)

缩写方式与padding一样

注:每个值之间的分隔符是空格。 缩写只是提升开发者效率,检查器上找不到

4、盒模型取值单位

px 固定尺寸
em 相对尺寸,父级/当前标签字体大小的倍数
rem 相对尺寸,基于html元素的倍数
% 尺寸是包含块宽度的百分比
auto 自动,按照不同定位体系的规则计算
margin:px、em、rem、%、auto
border:px、em
padding:px、em、rem、%
width:px、em、rem、%、auto
height:px、em、rem、%、auto

注意!!!:
1、margin、padding、width的百分比,是包含块宽度的百分比

2、height百分比很少使用

3、width、height默认值是auto,内容的宽高尺寸

4、margin取auto,有宽度就是居中,没有宽度就是0

5、只有margin可以取负值

完。
更多资料请微信搜索公众号「 夜来妖风起」第一时间阅读。

Web前端:2、盒模型的组成的更多相关文章

  1. Python web前端 04 盒子模型

    Python web前端 04 盒子模型 盒子模型是由内容(content).内边距(padding).外边距(margin).边框(border)组成的 一.边框 border #border 边框 ...

  2. 前端css盒模型及标准文档流及浮动问题

    1.盒模型 "box model"这一术语是用来设计和布局时使用,然后在网页中基本上都会显示一些方方正正的盒子.我们称为这种盒子叫盒模型. 盒模型有两种:标准模型和IE模型.这里重 ...

  3. [Web 前端] CSS 盒子模型,绝对定位和相对定位

    cp : https://blog.csdn.net/web_yh/article/details/53239372 一.盒子模型: 标准模式和混杂模式(IE).在标准模式下浏览器按照规范呈现页面:在 ...

  4. WEB学习-CSS盒模型

    盒子的区域 一个盒子中主要的属性就5个:width.height.padding.border.margin. width是“宽度”的意思,CSS中width指的是内容的宽度,而不是盒子的宽度. he ...

  5. 深入css布局篇(1) — 盒模型 & 元素分类

    深入css布局(1)-- 盒模型 & 元素分类     " 在css知识体系中,除了css选择器,样式属性等基础知识外,css布局相关的知识才是css比较核心和重要的点.今天我们来深 ...

  6. Web前端篇:CSS常用格式化排版、盒模型、浮动、定位、背景边框属性

    目录 Web前端篇:CSS常用格式化排版.盒模型.浮动.定位.背景边框属性 1.常用格式化排版 2.CSS盒模型 3.浮动 4.定位 5.背景属性和边框属性 6.网页中规范和错误问题 7.显示方式 W ...

  7. Web前端开发基础 第四课(盒代码模型)

    盒模型代码简写 还记得在讲盒模型时外边距(margin).内边距(padding)和边框(border)设置上下左右四个方向的边距是按照顺时针方向设置的:上右下左.具体应用在margin和paddin ...

  8. 【从0到1学Web前端】CSS定位问题一(盒模型,浮动,BFC) 分类: HTML+CSS 2015-05-27 22:24 813人阅读 评论(1) 收藏

    引子: 在谈到css定位问题的时候先来看一个小问题: 已知宽度(假如:100px)div框,水平居中,左右两百年的分别使用div框填充.且左右div自适应. 效果如下图: 这个问题的难点主要是浏览器宽 ...

  9. 前端笔记之移动端&响应式(中)视口&百分比布局&弹性盒模型&rem&fillpage

    一.viewport视口 1.1什么是屏幕尺寸.屏幕分辨率.屏幕像素密度? 屏幕尺寸:指屏幕的对角线的长度,单位是英寸,常见的屏幕尺寸有3.5.3.7.4.2.4.7.5.0.5.5.6.0等. 屏幕 ...

随机推荐

  1. centos 7.0运行docker出现内核报错解决方法

    目前我这里docker是运行在centos 7.0系统里,使用1.5版本docker,最近一台服务器总是不定期死机,通过查看日志发现属于内核bug导致,报错信息如下 1 2 3 4 5 6 7 8 9 ...

  2. 解决vue中BMap未定义问题

    原文链接: 点我 最近在项目中使用了百度地图来显示物流信息,实现方式有两种: 引用Vue Baidu Map引用BMap存在的问题:\color{red}{存在的问题:}存在的问题::使用BMap可以 ...

  3. P2542 【[AHOI2005]航线规划】

    P2542 [[AHOI2005]航线规划] 一个无向图,m个操作 删去一条边 给定两个点,求有多少边使得如果这条边不存在,给定的两个点不连通 一般这种删边的题目,考虑逆序加边处理 在删完的图中,任意 ...

  4. 题解 CF588A 【Duff and Meat】

    题意 有一个人,想吃 $n$ 天肉,第 $i$ 天需要吃 $a[i]$ 块肉,第 $i$ 天超市肉价为每块 $b[i]$ 元,买来的肉可以留到后面吃,求这个人在每天都吃到肉的情况下花费的最小值. 题目 ...

  5. HTML 页面跳转的五种方法

    H方法TML 页面跳转的五种方法 下面列了五个例子来详细说明,这几个例子的主要功能是:在5秒后,自动跳转到同目录下的hello.html(根据自己需要自行修改)文件.1) html的实现 <he ...

  6. 转载acm几何基础(2)

    判断两条线段是否相交: 矢量 如果一条线段的端点是有次序之分的话,那么这种线段就称为 有向线段,如果有向线段p1p2的起点p1在坐标的原点,则可以把它称为矢量p2 矢量的加减 设二维矢量 P = (x ...

  7. 配置Ansible加速

    下载安装包 wget https://files.pythonhosted.org/packages/source/m/mitogen/mitogen-0.2.7.tar.gz tar axf mit ...

  8. vim基础快捷键

    vim快捷键 1. 移动光标 快捷键 作用 h 光标向左移动一个字符 j 光标向下移动一个字符 k 光标向上移动一个字符 l 光标向右移动一个字符 6j 向下移动6个字符 Ctrl+f 屏幕向下移动一 ...

  9. 实时(RTC)时钟,系统时钟和CPU时钟

    最近在学stm32的时候看到RTC时钟和系统时钟,不知道区别在哪里,于是上网查了一下. 实时时钟:RTC时钟,用于提供年.月.日.时.分.秒和星期等的实时时间信息,由后备电池供电,当你晚上关闭系统和早 ...

  10. STM32 基于 CubeMX配置GPIO点亮LED灯(超级详细+图文并茂)

    我是一个只会点灯的菜鸟: 相关文章 [STM32系列汇总]小白博主的STM32实战快速进阶之路(持续更新) 文章目录 相关文章 1 前言 2 理论分析 2.1 LED 原理 2.2 板载资料 2.3 ...