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(边框 ...
随机推荐
- Node.js/Vue.js使用jsSHA库进行SHA1/2/3加密
1 概述 jsSHA是一个用JS+TS实现完整SHA系列加密算法的加密库,包括: SHA1 SHA-224/256/384/512 SHA3-224/256/384/512 SHAKE128/256 ...
- day10.闭包函数与装饰器
一.闭包函数 1.闭函数:被封闭起来的函数==>定义在函数内部的函数,特点是只能在函数内调用 2.包函数:该函数引用了一个名字,该名字来自于E这一层 总结:闭包函数指的是定义在函数内部的函数引用 ...
- Kickdown UVA - 1588
A research laboratory of a world-leading automobile company has received an order to create a specia ...
- Day01_05_Java第一个程序 HelloWorld - java类规则
第一个程序Hello World *基础语法规则: 1. 第一个Java程序 HelloWorld! public class HelloWorld{ public static void main( ...
- 谈谈react hooks的优缺点
前言Hook 是 React 16.8 的新增特性.它是完全可选的,并且100%向后兼容.它可以让你使用函数组件的方式,运用类组件以及 react 其他的一些特性,比如管理状态.生命周期钩子等.从概念 ...
- 持续集成 简介&环境搭建
1. 持续集成简介 2. 持续集成环境搭建(Jenkins) 2.1 Git 安装 2.2 JDK 1.8 安装 2.3 Tomcat 安装 2.4 Maven 简介和安装 2.5 Jenkins 安 ...
- B - 抽屉 POJ - 2356 (容斥原理)
The input contains N natural (i.e. positive integer) numbers ( N <= 10000 ). Each of that numbers ...
- 【DB宝50】Oracle异构平台迁移之完全可传输导出导入(Full Transportable Export & Import)
目录 一.简介 1.1.使用场景 1.2.限制条件 二.完全可传输操作步骤 三.案例演示 3.1.环境 3.2.源库操作 3.2.1.将需要传输的用户表空间设置为RO状态 3.2.2.使用Data P ...
- OPPO R11S识别不到ADB Device
1.手机开启[开发者选项] 2.[开发者选项]打开[USB调试] 有个坑:10分钟不使用,将自动关闭 3.USB连接到电脑,选择模式为[仅充电] 4.电脑安装OPPO驱动 坑:安装进度卡在95%三分钟 ...
- svchost服务(DLL服务)
相比于exe服务,DLL服务只需要一个dll,而且运行是通过svchost.exe来运行的,同时安装和卸载的时候需要自己手动修改相关注册表.原理及其细节就不多说了,直接上代码吧(我写的这个是创建新组然 ...