CSS(2)盒子模型、定位浮动
盒子模型
- 盒子模型:一个盒子中主要的属性就5个。width与height、padding、border、margin。盒子模型标准有两种为标准盒模型和IE盒模型。学习上以标准盒子模型为主
- width和height :内容的宽度、高度(不是盒子的宽度、高度)。
- padding :盒子内边距。
- border :盒子边框。
- margin :盒子外边距。
- 标准盒子模型:width和height指的是内容区域的宽度和高度。增加内边距、边框和外边距不会影响内容区域的尺寸,但是会增加元素框的总尺寸。
- IE盒子模型:width和height指的是内容区域+border+padding的宽度和高度。
- 四方向写法:
/* 方式一:分开写法 */
div {
padding-top: 30px;
padding-right: 20px;
padding-bottom: 40px;
padding-left: 100px;
}
/* 方式二:综合写法
四个值顺序为:上、右、下、左。
三个值顺序为:上、右、下。(左和右一样)
两个值顺序为:上下同值、左右同值。
一个值顺序为:四方向同值。
*/
div {
padding: 50px 60px 80px 90px;
}
- border:边框。边框有三个要素:像素(粗细)、线型、颜色。
div {
/* 方式一:合并写。颜色(黑色)、粗细(1px)、线型(直线) */
border: black 1px solid;
}
div {
/* 方式二:三要素拆分(遵循四方向原则) */
border-width: 1px 2px;
border-style: dashed;
border-color: red green blue yellow;
}
div {
/* 方式三:方向拆分 */
border-top: 10px solid red;
border-right: 10px solid red;
border-bottom: 10px solid red;
border-left: 10px solid red;
}
- margin:外边距,控制盒子与盒子之间的间距。使用方式与padding一致。
- 设置水平居中:
- 块级元素:margin: 0 auto;
- 行内元素或行内块级元素:父元素的text-align: center;(把行内元素和行内块元素当做文本使用)
- 垂直外边距合并:当两个垂直外边距相遇时,它们将形成一个外边距。合并后的外边距的高度等于两个发生合并的外边距的高度中的较大者。一种情况时同级元素上下相邻,一种情况是父子元素上下相邻。
- 垂直外边距合并解决方案:
- 父容器设置边界(border或者padding设置1px)
- 父容器overflow: hidden;(或auto)
- 父容器或子容器:float: left;(不能是auto)
- 父容器或子容器:position: absolute;
- 子容器:display: inline-block;(或是inline-table)
- 相邻元素:任意一个添加float: left;(不能是auto)
- :圆角边框、盒子阴影、文字阴影
- CSS新增样式(一)圆角边框border-radius属性:原理是设置的长度为半径画四个圆产生的弧度。当盒子为正方形并且圆角属性设置为50%边长则可画出个圆。
.father {
height: 200px;
width: 200px;
background-color: black;
/* 设置圆角:半径=50%边长为画圆。也可以四个角分别赋值和拆开赋值。支持px,百分比,em */
border-radius: 50%;
}
- CSS新增样式(二)盒子阴影box-shadow属性:盒子阴影不占空间,属性值较多,在注释上标明
.father {
/*
offset-x:阴影的水平偏移量。正数向右偏移,负数向左偏移。
offset-y:阴影的垂直偏移量。正数向下偏移,负数向上偏移。
blur:阴影模糊度,不能取负数。
spread:阴影大小。正数阴影扩大(阴影大小大于盒子大小),负数阴影缩小(阴影大小小于盒子大小),0阴影与盒子同等大小。
inset:inset表示添加内阴影,默认不填为外阴影。
*/
box-shadow: -20px 10px 50px rgb(0, 0, 0, .3);
}
- CSS新增样式(三)文字阴影text-shadow属性:文字阴影不占空间,属性值较多,在注释上标明
.father {
/*
h-shadow 必需。水平阴影的位置。允许负值。
v-shadow 必需。垂直阴影的位置。允许负值。
blur 可选。模糊的距离。
color 可选。阴影的颜色。
*/
text-shadow: 3px 4px 5px rgb(0, 0, 0, .3);
}
浮动
- 标准流:按照规定好的方式进行排列。
- 浮动:float属性设置left、right。
.father {
height: 500px;
width: 500px;
background-color: white;
border: 1px solid black;
margin: 100px;
} /* .a {
float: left;
} */ .b {
float: right;
} /* .c {
background-color: red;
} */ /* .c {
float: right;
} */
- 清除浮动:overflow:hidden。清除浮动原因是父类因为子类浮动而丧失了高度,导致塌陷。
定位
- position:absolute、relative、static(默认)、fixed
- 静态定位:static。
- 相对定位:relative。
- 绝对定位:absolute。定位以最低一级有定位的元素进行绝对定位偏移,如果都没没有,则最后以浏览器进行绝对定位偏移。脱离标准流。
div.relative {
position: relative;
width: 400px;
height: 200px;
border: 3px solid #73AD21;
} div.absolute {
position: absolute;
top: 80px;
right: 0;
width: 200px;
height: 100px;
border: 3px solid #73AD21;
}
- 固定定位:fixed。以浏览器可视窗口而定位。即使滚动页面,它也始终位于同一位置。脱离标准流。
div.fixed {
position: fixed;
bottom: 0;
right: 0;
width: 300px;
border: 3px solid #73AD21;
}
- 粘性定位:sticky。先会(相对定位),直到在可视窗口中遇到给定的偏移位置为止,然后将其“粘贴”在适当的位置(固定定位)
div.sticky {
position: -webkit-sticky;
position: sticky;
top: 0;
padding: 5px;
background-color: #cae8ca;
border: 2px solid #4CAF50;
}
- 子绝父相:子绝父相的意思是在父类的position属性是relative的情况下,子类的position属性又是absolute的情况下,那么我们的子类这时其实不是在body中absolute而是在其父类的范围中absolute,最好给父类设置边界。
- 重叠次序:在对元素进行定位时,它们可能与其他元素重叠。z-index属性用于指定元素的堆栈顺序(哪个元素应放置在其他元素的前面或后面)。
img {
position: absolute;
left: 0px;
top: 0px;
z-index: -1;/* 表示在最下面 */
}
溢出
- 溢出:overflow属性指定在元素的内容太大而无法放入指定区域时是剪裁内容还是添加滚动条。仅适用于具有指定高度的块元素。
- visible:默认。溢出没有被剪裁。内容在元素框外渲染。
- hidden:溢出被剪裁,其余内容将不可见。
- scroll:溢出被剪裁,同时添加滚动条以查看其余内容。
- auto:与scroll类似,但仅在必要时添加滚动条。
overflow-x、overflow-y:属性规定是仅水平还是垂直地(或同时)更改内容的溢出。
div {
overflow-x: hidden; /* 隐藏水平滚动栏 */
overflow-y: scroll; /* 添加垂直滚动栏 */
}
显示与隐藏
display属性规定是否/如何显示元素。
none:隐藏元素
block:显示元素
inline:
- 精灵图:图像精灵就是单个图像中包含的图像集合,包含许多图像的网页可能需要很长时间才能加载,同时会生成多个服务器请求。使用图像精灵将减少服务器请求的数量并节约带宽。
CSS(2)盒子模型、定位浮动的更多相关文章
- #CSS的盒子模型、元素类型
CSS的盒子模型.元素类型 本文首先介绍了CSS元素的统一内部结构模型,盒子模型:然后介绍了CSS元素基于不同分类标准定义的元素类型,包括基于不同内容设置方式定义的replaced元素和non-r ...
- 深入了解CSS中盒子模型
CSS中盒子模型介绍 什么是盒子? 盒子是用来存储物品,我们可以将盒子理解为酒盒,酒盒有什么组成的呢? 有酒可以喝.有填充物保护酒防止酒被摔坏.纸盒子. 我们怎么理解CSS中的盒子呢,CSS中盒子有什 ...
- 深入理解CSS系列(一):理解CSS的盒子模型
接触前端也有好几个年头了,但是,讲实话,对于CSS的理解真的是不敢恭维,相信很多同行也有类似的感受吧!这是为什么呢?因为我们都认为CSS太简单了,没有必要深入学习,果真如此?其实,只不过是自己图样图森 ...
- 这些HTML、CSS知识点,面试和平时开发都需要 No1-No4(知识点:HTML、CSS、盒子模型、内容布局)
这些HTML.CSS知识点,面试和平时开发都需要 No1-No4 系列知识点汇总 这些HTML.CSS知识点,面试和平时开发都需要 No1-No4(知识点:HTML.CSS.盒子模型.内容布局) ...
- 使用css弹性盒子模型
提示: 当期内容不充实, 修改后再来看吧 以下称:弹性子元素: 子元素, 弹性容器: 容器 弹性盒子的属性 1. css弹性盒子模型规定了弹性元素如何在弹性容器内展示 2. 弹性元素默认显示在弹性容器 ...
- CSS 弹性盒子模型
CSS 弹性盒子模型 https://www.w3.org/TR/2016/CR-css-flexbox-1-20160526/ CSS Flexible Box Layout Module Leve ...
- css的核心内容 标准流、盒子模型、浮动、定位等分析
1.块级元素:如:<div></div>2.行内元素:如:<span></span>从效果中看块级元素与行内元素的区别: 通过CSS的设置把行内元素转换 ...
- {前端CSS} 语法 Css的几种引入方式 css选择器 选择器的优先级 CSS属性相关 背景属性 边框 CSS盒子模型 清除浮动 overflow溢出属性 定位(position)z-index
前端CSS CSS介绍 CSS(Cascading Style Sheet,层叠样式表)定义如何显示HTML元素,给HTML设置样式,让它更加美观. 当浏览器读到一个样式表,它就会按照这个样式表来对文 ...
- css进阶----盒子模型,Reset CSS,css浮动,css定位,z-index属性
盒子模型 把页面上的每一个元素当成一个盒子 由内容,内边距,边框,外边距组成 盒子模型举例 <!DOCTYPE html> <html lang="en"> ...
- 前端之CSS——盒子模型和浮动
一.CSS盒子模型 HTML文档中的每个元素都被描绘成矩形盒子,这些矩形盒子通过一个模型来描述其占用空间,这个模型称为盒子模型. 盒子模型通过四个边界来描述:margin(外边距),border(边框 ...
随机推荐
- 05_pytorch的Tensor操作
05_pytorch的Tensor操作 目录 一.引言 二.tensor的基础操作 2.1 创建tensor 2.2 常用tensor操作 2.2.1 调整tensor的形状 2.2.2 添加或压缩t ...
- redhat7.6 更换 centos7 YUM
使用yum 遇到如下错误. This system is not registered to Red Hat Subscription Management. You can use subscrip ...
- 面试系列<3>——java并发
面试系列--java并发 一.使用线程 有三种使用线程的方法: 实现Runnable接口 实现Callable接口 继承Thread类 实现 Runnable 和 Callable 接口的类只能当做一 ...
- Throwing cards away I UVA - 10935
Given is an ordered deck of n cards numbered 1 to n with card 1 at the top and card n at the botto ...
- show engine innodb status 输出结果解读
show engine innodb status 输出结果解读 基于MySQL 5.7.32 最近想整理一下show engine innodb status的解读,但是发现中文互联网上相关的信息要 ...
- JAVAEE_02_BS/CS架构
BS/CS架构 系统构架分为? C/S: Client/Server B/S: Browser/Server B/S的优缺点? 优点: 1. 不需要安装特定的客户端软件,只需要浏览器. 2. 升级只需 ...
- 所谓 ICMP,不过将军与士卒而已
什么是 ICMP 协议 关于这点我们在 IP 协议那篇文章中提过一嘴,IP 协议作为一种提供不可靠数据交付的网络层协议,在传输的过程中,其 IP 数据报可能会发生丢失.重复.延迟和乱序等各种情况, 但 ...
- UVA10827球面上的最大和
题意: 最大子矩阵的加强版,就是给你一个n*n的矩阵,每个格子里面都有数字,然后我们在里面选择一个矩阵,使得矩阵中所有数字的和最大,而且这个题目说这个n*n的矩阵的最右边和最左边是相邻的,最 ...
- js中return;、return true、return false;区别
一.返回控制与函数结果 语法为:return 表达式 语句结束函数执行,返回调用函数,而且把表达式的值作为函数的结果 二.返回控制 无函数结果,语法为:return; 在大多数情况下,为事件处理函数返 ...
- PHP 通用格式化调试函数
/** * 打印调试函数 * @param $content * @param $is_die */function pre($content, $is_die = true){ header('Co ...