HTML、CSS、HTML5、CSS3认识

1.常见标记(元素)

1. 双标记 对标签
	<标签 属性=“属性值”></>
 单标记(空标记)
	<标签 属性=“属性值”/>H4   <>H5
2. p标签之间不能嵌套,只占据自己内容位置的标签,文本,图片
3. ul > li  无序列表标签 
	 特点:单独占据一行有默认的小黑圆点标记,一般不用默认的小黑点, <style type="text/css">li{
      
      list-style:none;}</style>
4. ol > li  有序列表标签  
	 特点:单独占据一行,有默认的阿拉伯数字标记,一般不使用默认的数字<style type="text/css">ol或者li{
      
      list-style:none;}</style> 
 一般用来做单导航
5. dl > dt+dd 自定义列表
	 dt 自定义列表项目
	 dd 自定义列表项目注释
 特性:(上下结构 左右结构)
6. img 图片标签 (单标签)
	src="图片路径"
	 相对路径:../表示返回上一级目录(回退一步)
			./表示当前文件夹下
	 绝对路径:从域名地址出发http://
			 从盘符出发D:/
	 alt="图片显示不出时的文本提示"
	 title="鼠标悬停提示"
	 width=“图片的宽度”
	 height="图片的高度"
	 (注意:只写宽/高,另一边会等比例缩放)
	 图片格式:.jpg:常见的普通图片, .gif: 动态图, .png: 背景透明的图片
7. a 标签 超链接标签 实现页面之间的跳转(双标签)
	    文本默认蓝色,带有下划线,href="跳转的地址"
	    target  ="页面打开方式"
		_self 当前页面刷新,_blank 不断打开新窗口,_new 新窗口刷新
	锚点连接
	有点击的位置
		<a href="#name">点击位置</a>
	有跳转的位置
		<p id="name">被跳转位置</p>或者<a name="name">被跳转位置</a>
		跳不上去的特殊情况:页面高度不够
8. div:	空元素(块标签)
	单独占据一行
	一般用来搭建页面结构
9. span:	 空元素(文本结点标签)
	 只占据自己内容的位置大小
	 一般用来与其他标签组合写样式

二、表单

form 表单
	action:提交到哪里(提交地址)
	method:提交方式
		get-->明文提交,数据不安全,在地址栏提交,有长度限制,有可能丢失数据,速度快(获取)
		post-->非明文提交,数据安全性高,不在地址栏提交,没有长度限制,不会丢失数据,速度慢(提交)
	表单元素:
		<input> type-声明标签元素类型
			type="text" 单行文本输入框
			type="password" 密码框
			type="submit" 提交按钮  可以提交数据
			type="reset" 重置按钮 
			type="radio" 单选按钮  (所属的选项name值要一致)注意name互斥
			type=“button” 是一个普通按钮,没有提交功能,需要结合Js才能设立自己的作用
		<button>提交标签</button>普通按钮
			select > option 下拉列表选择
		<textarea> 多行文本框</textarea> cols 字符宽度 rows 行数
			type="checkbox"多选框
				name="元素名字"
				value="元素值"
				placeholder="文本提示"
				checked ="默认选中"
				disabled ="禁用"

三、表格

table:表格
	border:"边框"
	width:"宽度"
	height:"高度"
	bgcolor:"表格背景色"
	cellspacing:"边框与边框之间的间隙"
	cellpadding:"边框与内容之间的间隙"
	align:"left(默认)/center/right"
	
tr:行
td:列
	colspan:左右合并 合并列
	rowspan:上下合并 合并行

四、CSS语法和样式

1.css基本语法
	选择器{属性:属性值;(样式声明)}
2.css样式:
	内部样式:在head标签里面(针对选择器的所有)<style type="text/css">选择器{
      
      属性:属性值;}</style>
	内联样式:在具体的结构标签里面(只针对本身)在标签内部以属性添加
		<标签 style="属性:属性值;">
	外部样式:在独立的一个css文件@charset "utf-8";
			首先有一个独立的css文件,在html页面的<head>中通过link标签引入,<link>标签<link rel="stylesheet" type="text/css" href="css文件地址">,在style标签中书写@import url("css文件地址");必须写在style标签后的第一句
	[区别]:link是标签,可以被js操作,和结构同时加载  @import是css的一种写法,无法被Js操作,先加载结构,后渲染效果;
3.作用范围:
      外部样式>内部样式>内联样式
4.样式的优先级:
      内联样式>内部样式>外部样式(就近原则)
	  作用范围越小,优先级越高(link在style之前,之后则优先级 内联>外部>内部)

五、CSS选择器

1.类选择器(不唯一)
	在标签中添加属性 class="name aa  bb  name(className或者class-name)"
	使用时添加.name{}
	在一个页面可以多次出现,一个标签可以有多个class值
2.类型选择器(元素选择器 标签选择器):div p h1 h1  span a i em b……
3.id选择器(具有唯一性,在一个页面中只能出现一个id值)
	在标签中添加属性 id="name"
	使用时添加#name{}		
4.* 通配符 匹配页面中所有的元素(标签)
5.群组选择器(并列关系 兄弟关系 匹配这一组选择器) 选择器,选择器,选择器{}
6.包含选择器(父子关系 后代选择器 匹配结构中最后一个选择器) 
	选择器 选择器{}(注意结构和选择器需要一致)
	结构形成嵌套(包含关系)
7.伪类选择器
	:link{}	初始状态
	:visited{}	访问过后的状态
	:hover{}	鼠标悬停的状态
	:active{}	鼠标点击(按下)的状态

六、浮动(1)

float 浮动  
	left左浮动 
	right右浮动 
	none不浮动
特点:
	浮动元素挨着最近的父级元素边缘停下,
	下一个浮动元素挨着上一个浮动元素停下
	如果没有父级,挨着浏览器边缘
	让元素能在一行显示
	让原始(span)不能设置宽高的元素设置宽高,同时在一行显示
	浮动之后的元素让原始占据一行的元素只占据自己设置的大小宽高
	在父级没有高度时,子集浮动会造成父级元素高度塌陷
	浮动元素只影响结构后面的元素,不影响结构前面的元素
	父级元素宽度不够,子集元素被迫换行显示

七、选择器权重

类型选择符权重为0001
class选择符权重0010
id选择符权重0100
属性选择符权重0010
伪类选择符权重0010
伪元素选择符权重0001
包含选择符权重为之和
内联选择符权重1000
选择器优先级:
	id选择器 > class选择器 > 类型选择器

八、浮动(2)

浮动带来的问题  父级元素高度塌陷 
	(1)解决方式一:给父级元素添加高度 缺点:不灵活
	(2)解决方式二:给浮动元素添加“弟弟”,添加清除浮动样式 style ="clear:both"    缺点是:造成大量代码冗余,而且必须是单独占据一行的标签
	(3)clear清除浮动带来的问题   
		left:清楚左浮动带来的问题
		right  清楚右浮动带来的问题
		both  清楚浮动带来的问题
	(4).btn11:after{
        content:"";/*伪元素*/
        display:block;/*声明这个元素是单独占据一行的*/
        clear:both;
        } 

九、CSS文本属性

1. font-size:文本大小
	*默认文本大小是16px *文本最小大小为12px
	9pt=12px;     
	em继承(?)最近的父级元素的文本大小   
	*rem跟着根元素(HTML)的文本大小变化(!)
2. color:文本颜色;
	 英文单词
	 十六进制
	 #0-9 a-f   #aabbcc可以简写为abc
	 三元色  红red   绿green   蓝blue
	 background:rgb(0,0,0);黑色
	 rgb(255,255,255);白色(取之范围0-255)
	 rgba(0,0,0,0(透明度  取值范围0-1))
3. font-family:字体类型1 ,字体类型2,字体类型3
	 微软雅黑 宋体
	 字体类型是中文,或者引文字体中有空格则需要加引号
4. font-weight:
	 bold/bolder文本加粗/normal默认文本(常规/去掉加粗)
	 font-weight:数值(100-900整百的加)100-500常规表		现	600-900加粗(与常规比较);
5. 文本倾斜:font-style:
	 italic(斜体字  权重值高)
	 oblique(倾斜的文字 倾斜的样式效果)
	 normal(正常,不倾斜);
6.text-align:文本水平对齐
	 left 默认对齐方式,左对齐
	 right 右对齐
	 center 
	 justify 两端对齐
7. line-height:行高  文本垂直对齐方式
	 行高<高度   偏上
	 行高=高度    居中
	 行高>高度   偏下
	 	!以上针对单行文本
	 normal默认值
	 当line-height的值不带单位时,它的数为值乘以当前区域
	 单位px
	 单位%
	 font简写:文本/行高 字体类型;(必写)
8. text-decoration:
	none没有线;
	underline下划线;
	overline上划线;
	line-through中划线;
9. text-indent:首行缩进;
	px	em
10. letter-spacing:字间距    字与字之间的间距;
	px   em
11. 列表属性:
	list-style-type:;
	list-style-image:url("图片地址");
	list-style-position:inside/outside;

十、背景background

1. background-color:背景颜色
2. backgroung-image:url("图片路径");背景图片
3. background-repeat(只针对图片):背景图片的平铺方式(是否重复,默认重复)
	no-repeat:不重复
	repeat-x:在x方向(水平方向)重复平铺
	repeat-y:在y方向(垂直方向)重复平铺
4. background-position(背景定位)
	:x方向 y方向;(left/right/bottom/top/center/具体数值px)
	简写background:blue url("") no-repeat 20px 50px;
5. background-attachment:fixed/scoll;
6. border-style:solid/dashed/dotted/double;
		transparent(透明)

十一、盒模型

1. 盒模型的组成部分
	内容区域	 content(width height)
	内边距区域	 padding
	边框		border
	外边距区域	margin
2. 盒模型分类:
	标准盒模型:content= width height
	怪异盒模型content=width=(width+border+padding)
			height=(height+border+padding)
	padding:元素边缘与内容之间的距离
		padding-top 顶部的内边距
		padding-right 右边的内边距
		padding-bottom 底部的内边距
		padding-left 左边的内边距
		padding:10px;上下左右
		padding:20px 20px;上下 左右
		padding:10px 10px 10px 10px;上 右 下 左
		padding:10px 20px 10px;上 左右 下
		padding不能有负值
	margin;元素边缘与元素外边的距离(与其他元素外边的距离)
		margin-top:上外边距
		margin-bottom:下外边距
		margin-left:左外边距
		margin-right:右外边距
		margin:10px;四个方向;
		margin:10px 20px;上下 左右
		margin:10px 20px 30px;上 左右 下
		margin:10px 20px 30px 40px;上 右 下 左
		margin:auto;左右自适应,左右居中(对上下无用)
		margin可以取负值,代表相反的方向

十二、空余空间

white-space:pre;原格式输出
white-space:pre-wrap;原格式输出(保留空白)但是会换行
white-space:pre-line;合并空白,但是会保留换行

十三、单行文本超出显示省略号

white-space:nowrap;/*强制不换行*/
overflow:hidden;
text-overflow:ellipsis;

overflow:visible;/*默认值显示*/
overflow:hidden;/*超出隐藏*/
overflow:scroll;/*出现滚动条*/
overflow:auto;/*自适应*/
overflow:inherit;/*继承*/
overflow-x:hidden;/*x方向出现隐藏特性*/
overflow-y:scroll;/*y方向出现scroll特性*/

十四、常见的问题

浏览器兼容:
	div中的图片间隙
常见的cssbug和csshack:
	1、img的下方间距:
		给图片添加display:block;或者是添加浮动;给图片添加vertical-align;
		img横着摆放时,左右又间距
		不让Img标签换行或者添加浮动
	2、li标签内的a想要浮动在一行,
		给a 添加浮动的同时,还需要给li添加浮动
	3、元素浮动后添加左右边距会形成双倍边距
		给元素添加display:inline-block;
	4、两个元素浮动,宽度为50%,将解析超过50%,将换行显示
		clear:right;
	5、元素默认有小于18像素的高度
		给元素添加height;
		给元素添加overflow:hidden;
	6、表单中的按钮顶部距离不一致
		添加浮动
		使用a标签模拟
	7、表单中的text单行文本提示
		统一使用value
	8、表单按钮提示内容不一致
		使用value 修改
	9、表单中的text单行文本输入偏上
		使用line-height;;修改内容的位置
	9、按钮元素默认大小不一
		统一大小
	10、百分比bug
		给右边的元素添加clear:right;
	9、鼠标指针bug
		cursor:hand;/ie9以下
		cursor:pointer;/ie6以上版本
	10、(外边距合并原则)
		嵌套关系(父子关系)
			子元素添加外边距会溢出父元素,带着父元素一起
			给父级添加边框或者内边距,或者给父级添加浮动
		并列关系
			上下外边距合并,统一添加一个外边距,或者中间使用空元素(代码冗余)

十五、表格表单和统筹

表单form:收集用户信息
	高级表单信息:
		<fieldset></fieldset>相当于一个方框,包围住里面的东西
		<legend></legend>字段级标题,一个<fieldset>里面只能有一个<legend>,align可以调整字段级标题的位置
		<label for=""></label>关联内容
		<input type="file" multiple="multiple">上传文件框,multiple可实现多选
	表格属性高级:
		<table> 表格
		<th>默认居中
		<tr><td>    列
		rowspan  合并行
		colspan  合并列
		border-spacing:0/1;单元格间距(合并成双边框),可以带单位
		!border-collapse:;合并相邻单元格边框(合并成单边框)
		empty-cells:show显示/hide隐藏;无内容的单元格设置(前提是双边框显示才能看出来)
		table-layout:auto(默认)/fixed(把宽度大小固定,计算单元格的宽度是否固定);显示单元格行和列的算法
		<caption>表格标题
		caption-side:top/bottom/left/right(只有火狐识别左右);
		<table rules="rows/cols/none/all/groups(和colgroup标签(或者col单标签)一起用<colgroup span="value">,分为行组或者列组)">添加组分割线
		<thead><tbody><tfoot>

十六、BFC

BFC概念和应用场景:
	bfc概念:有特殊功能的一个容器(区域)
	bfc区域条件:
		html
		浮动不为none
		position:absolute/fixed;
		display:inline-block/table-cell/flex/table-caption/inline-flex;
		overflow不为visible
	区域的特征:
		bfc区域的元素参与高度计算
		bfc区域互相不会重叠
		上下摆放(主要针对块级元素)
		bfc区域不会与float box 重叠
		计算bfc 的高度时,浮动元素也会参与运算
	bfc的使用:
		两列布局
		三列布局
		清除浮动元素高度塌陷

十七、CSS统筹

页面头部优化:
	<meta name="Description" content="描述">
	<meta name="Keyword" content="关键字">
	在head中添加页面关键字和描述
	合理的页面结构布局
	减少使用flash或者图片地图,文本链接
	减少页面的体积,尽量使用公共样式
css重置:
	标签有默认样式,通常会样式初始化
	具体标签去掉具体样式
命名规则:
	尽量小写英文字母,可以包含数字,下划线,连接符,不能以数字开头
	见名知意,尽可能简短
超链接优化:
图片优化:
	input{outline:none;}去掉选中时 的蓝色边框

十八、盒模型

盒模型的分类:
	标准盒模型:
		w=width+左右padding+左右border,同理可得h
	怪异盒模型
		w=width(包含左右padding+左右border),同理可得h
	怪异盒模型的触发方式:
		丢失文档申明<!DOCTYPE html>,会在ie678底下触发
		添加box-sizing:border-box;也会触发怪异盒模型

十九、H5新增标签

新增语义化标签:
	<header></header>头部区域
	<section>
		<nav>
			<a href=""></a>
		</nav>导航信息
		<article>文章</article>
		<aside>文章区域的辅助信息</aside>
	</section>内容区域
	<footer></footer>底部区域
	<figure>
		<figcaption>figure的标题</figcapition>
	</figure>独立的内容
	<embed src="地址" type=""/>用于定义嵌套的内容
	<mark></mark>显示文字高亮
	<object>
		<param name="movie" value="">
	</object>
vedio视频:
		autoplay:加载完成后,视频自动播放
		loop:循环播放,视频播完之后再次继续播放
		poster是显示第一帧图片
		<video src="" controls(视频播放控件按钮) poster="图片路径"(直到视频开始播放图片才消失)>
			<source src="vedio/ogg">
			<source src="vedio/Mpeg4">
			<source src="vedio/webm">可放多个资源
		</video>
audio音频:
		<audio src="音频地址" controls autoplay>哈哈哈哈哈哈(浏览器不支持时显示文字)</audio>
		<input type=""  list="name">
			<datalist id="name">
				<option value="11">文字</option>(需要利用js来显示文字给用户看)
				<option value="11">文字</option>
				<option value="11">文字</option>
			</datalist>
				
		<form oninput="x.value=parseInt(a.value)+parseInt(b.value)">
			<input type="range" id="a" value="50">10
				+<input type="number" id="b" value="50">10
				=<output name="x" for="a b"></output>所得到的的的东西进行输出
			</form>
				
		<hgroup>对标题标签进行分组</hgroup>

二十、h5新增加的表单元素和表单验证

<input type="email" required(不能为空) multiple(可输入多个邮箱,邮箱之间用逗号隔开)>邮箱输入框
<input type="url">网址输入框
<input type="number" min="" max="" step="指数值加大的累加数的大小">
<input type="range" value="默认滑动条的位置" min="" max="滑动条的最大值" step="" >类似于进度条
<input type="date">年月日,日历,可选择时间
<input type="month">年月
<input type="week">年周
<input type="time">具体时间
<input type="datetime">ie  谷歌 火狐不支持
<input type="datetime-local">获取本地时间
<input type="submit">提交
表单验证属性:
	placeholder:
	autofocus="true"  一个页面只有一个
	required 验证输入不能为空
	<form action="" method="" autocomplete="on/off/"类似于输入历史记录">
		<input type="text" name="11">
		<input type="text" name="11">必须要有Name属性
	</form>
		maxlength 输入的最大长度
		novalidate 针对于一整个表单不需要验证<form>

二十一、CSS3选择器

CSS3选择器:
	优雅降级(由大到小),渐进增强(由小到大)
	属性选择器:
		标签[属性]——选择此类标签并且有该属性的元素
		!  标签[属性="属性值"]——选择此类标签且有该属性名,并且该属性等于此属性值的元素,也不允许有空格之后多余的值
		标签[属性~="属性值"]——选择此类标签且有该属性名,并且该属性有包含此属性值的元素,允许有空格隔开
		标签[属性^="属性值"]——选择此类标签且有该属性名,并且该元素是以此属性值开头(开头就行)
		标签[属性$="属性值"]——选择此类标签且有该属性名,并且该元素是以此属性值结尾(空格或者是结尾的值)
		标签[属性*="属性值"]——选择此类标签且有该属性名,并且该元素是包含此属性值,有这个属性值都可
		标签[属性|="属性值"]——选择此类标签且有该属性名,并且该元素是此属性值 (一个值)或者是以"属性值-"开头(两个值以上)
	伪类选择器:
		1.动态伪类
			:link{}
			:visited{}
			:hover{}
			:active{}
		2.UI元素状态伪类
			主要针对表单中的元素使用)
			:enable{}
			:disabled{}例如:input:disabled{}	<input type="text" disabled> 
			:checked{}
		3.结构伪类
			不同级元素:
			!	:first-child{}选择父级里面的第一个子集元素
			!	:last-child{}
			:nth-child(n/2n/2n-1){}
			:nth-last-child(n/2n/2n-1){}
			同级元素:
			!	:first-of-type{}选择父级里面的某一类同级元素中的第一个元素
			!	:last-of-type{}
			!	:nth-of-type(n/2n/2n-1){}
			:nth-last-of-type(n/2n/2n-1){}
			:only-child{}说明一个父级里面只有一个子集(独生子女)*
			:only-of-type{}说明一个父级里面只有一个这类子集元素(有很多小孩,只有一个女孩/男孩)*
			:empty{}  选择没有内容(标签)的区域
		4.否定选择器:
			:not(){} 可以让你定位匹配不选择该元素
		5.:root{}选择文档的根元素(html)		
		6.target选择器:target{}
			.box{width:100px;height:100px;display:none;}
			.box1{bg:red;}
			.box2{bg:yellow;}
			:target{dispaly:block;}
			<a href="#box1"></a>
			<a href="#box2"></a>
			<div class="box box1" id="box1"></div>
			<div class="box box2" id="box2"></div>	
			:lang(a){}选中div里面有lang=a的元素
		7.伪元素选择器
		8.层次选择器
			后代选择器    	.box .box1(子、孙第一层及第一层之后的)
			子元素选择器  	.box>.box1(子,第一层)
			相邻兄弟选择器 	.box+div(选择.box后相邻的下一个兄弟)   
			通用兄弟选择器 	.box~div(选择这个.box之后的所有兄弟选择器)

二十二、浏览器的私有属性前缀

border-radius:50%;圆形
-webkit-	谷歌浏览器
-moz-		火狐
-ms-		IE浏览器
-o-			欧朋浏览器

二十三、CSS3新增属性

text-shadow:0px 0px 0px 0px文本阴影
text-shadow:0 0   , 0 0   ,  0 0  ;多重阴影用逗号隔开
h-shadow:水平阴影(必须)
v-shadow:垂直阴影(必须)
blur:模糊度
color:阴影颜色;
box阴影(盒子阴影)
	box-shadow:0px 0px 0px 0px(阴影的大小) color (inset);
word-break:normal/keep-all(不允许字断开)/break-all(自动换行)
	决定自动换行的
word-wrap:break-word;
	用来标明是否允许浏览器在单词内部进行断句
@font-face
	在线引用:
		生成链接,用link标签引入,挑选对应图标,class="iconfont icon-xxx"
background-clip:;指定背景的显示范围,前提是背景平铺。
	background-clip:border-box;水平区域开始
	background-clip:content-box;内容区域开始
	background-clip:padding-box;内边距区域开始
	-webkit-text-fill-color:transparent;
	-webkit-background-fill:text;达到文本填充背景图(文字的背景是背景图)
	background-origin:指定背景图的起始点(就是选一个参考物,然后用背景定位来移动)
	border-box;(参考物)
	content-box;
	padding-box; 
	结合背景定位background-position
	background-size:;指定背景图的尺寸
	当只有一个值时,表示水平大小,垂直大小自动缩放
	background-size:cover;随时都把整个元素撑满
	background-size:contain;只充满一边,另外一边则不管(保证一条边挨着边缘)
简写:background:颜色 地址 no-repeat 0px(左右移动) 0px(上下移动)(前面是移动)/0px(宽) 0px(高)(后面是大小);
							
border-radius:设置圆角
	border-radius:0px;
	border-radius:0px 0px;左上右下 右上左下
	border-radius:0px左上 0px右上左下 0px右下;
	border-radius:0px左上 0px右上 0px右下 0px左下;
	border-radius:50%;(或者正方形/长方形宽高的一半)--圆,椭圆
	border-radius:0px(x轴)/0px(y轴);以椭圆的形式切边角
	border-radius:0px(左上) 0px(右上)/0px(左上垂直) 0px(右上垂直);
	border-radius:0px(左上水平) 0px(右上) 0px(左下) 0px(右下)/0px(左上垂直) 0px(右上垂直) 0px(左下垂直) 0px(右下垂直);
	transition:0s;过渡时间
	border-images:用图片来设置边框
	border-images:url("") 0(无单位,水平)  0(垂直)  repeat/round/strech;
颜色特性:
	background:hsl(0-360色调,0%饱和度,0%亮度);
	background:hsla(0-360色调,0%饱和度,0%亮度,0-1透明度);

二十四、盒模型的分类

标准盒模型
	border-sizing:content-box;
怪异盒模型:
	触发方式:
		(1)丢失!doctype html
		(2)box-sizing:border-box;
			width包含了左右padding和border
			height包含了上下padding和border

二十五、Flex容器(父元素)的属性

display:flex;(相当于浮动)
特性:项目的float,clear,vertical-align失效
	默认情况下,项目宽度将由内容撑起来,高度与容器一致
	默认主轴方向是水平方向,侧轴为垂直方向
		1.设置为弹性盒,之后,主轴默认为水平方向
		2.子元素(项目)未设置宽高时,宽度由内容撑起来,高度与容器一致
		3.项目沿着主轴(默认水平方向)摆放
(添加在容器上)flex-direction(设置主轴方向):row;默认水平方向为主轴
			flex-direction:row-reverse;设置反向的水平方向为主轴
			flex-direction:column;设置垂直方向为主轴
			flex-direction:column-reverse;而反向的垂直方向为主轴
			flex-wrap:wrap(换行)/wrap-reverse(反着换行)/nowrap(默认不换行);定义子元素(项目)是否换行
			flex-flow:以上两种的简写,默认是row nowrap;
			jusitify-content:;定义了项目在主轴上的对齐方式
			flex-start:在主轴的开始位置
			flex-end:在主轴的结束位置
			center:在主轴的中心位置
			space-around:在主轴上对称分配(自动分配)
			space-between:两端对齐
			align-items:;项目(子集)在侧轴上的对齐方式(多行时会有间距)
				flex-start:侧轴开始位置对齐
				flex-end:侧轴底部位置对齐
				center:侧轴中间位置
				baseline:项目第一行文字底部对齐
				stretch:默认值
			align-content:;(多行时间距消失)针对多行项目在侧轴上的对齐方式
				space-around:自动分配
				space-between:两端对齐
				flex-start:侧轴开始位置对齐
				flex-end:侧轴底部位置对齐
				center:侧轴中间位置

二十六、添加在子元素(项目)上的属性

order:;项目的排列顺序,数值越大,元素越靠后。元素默认为零
	flex:(0-1)1;把剩余都给子元素(分配剩余空间)
		align-self:;(单个)项目在侧轴上的对齐方式
		flex-start:侧轴开始位置对齐
		flex-end:侧轴底部位置对齐
		center:侧轴中间位置
		baseline:项目第一行文字底部对齐
		auto 自适应对齐
		stretch 默认值

二十七、多列布局

column-count:;分栏的数目
column-width:;分栏的宽度
column-gap:;分栏的间距
column-rule:;分栏的边框
column-span:all/1;合并分栏

二十八、flex的单位换算


 px: 具体像素值

  %: 相对最近的父级元素

   em: 相对最近的父元素的字体大小,默认1em=16px

   记住: rem: 是root和em的结合 相对根元素(html)字号大小,你默认1rem=16px

   pt: 原生开发用的单位,安卓开发用的多

   记住: vw: viewport width 相对于当前视口的宽度默认是满屏100vw

   vh: viewport height 相对于当前视口的高度默认是满屏100vh 

   vmin: viewport min最小

   vmax: viewport max最大

   vw和rem结合来写移动端

   主要使用rem来写所有的数据,vm作为html的font-size的单位用 html{font-size:32vw;}

   vw rem 设计图中测量出的px 三者之间的换算

   px是已知的

   如果设计图是750px,所得的数据/2 = 浏览器最终解析且是满屏的宽度375px,因为满屏是100vw,所以100vw=375px 1vw=3.75px

   如果设计图是640px,所得的数据/2 = 浏览器最终解析且是满屏的宽度320px,因为满屏是100vw,所以100vw=320px 1vw=3.2px

   rem和px之间的关系 1rem=16px

   假设1rem=100px

​    375px的设计图:

​     1vw=3.75px 则 1rem=100/3.75=26.666667vw

​    320的设计图:

​     1vw=3.2px 则 1rem=100/3.2=31.25vw

   总结:375的不精确,则设1rem=120px

​    1rem=32vw 

二十九、css3渐变

css渐变:
线性渐变:默认从上往下渐变
	语法:background:linear-gradient(color,color,……)
	从左往右:background:-webkit-linear-gradient(left(起点位置,没有兼容前缀时,加上to,表示终点位置),color,color,……)
	对角:background:linear-gradient(to left top,color,color,……)
	指定角度:background:-webkit-linear-gradient(角度数 正值顺时针,color,color,……)
	background:linear-gradient(color %,color %)
	渐变区域重复:background:rapeating-linear-gradient(color (%),color (%))
径向渐变:由中心向周围渐变(语法与线性渐变类似)
	元素本身是一个正方形时,渐变是圆形,元素是长方形是,渐变成椭圆
					background:radial-gradient(color,color)
					background:(circle,color,color,……)(无论长方正方,渐变都显示圆形)
					径向渐变的尺寸:closest-side,closest-corner等
					background:rapeating-radial-gradient()重复渐变,模仿的是background-image
					线性渐变和径向渐变都属于css背景属性中的背景图片(background-image)属性

三十、display

三十一、position和过滤器,宽高自适应

猜你喜欢

转载自blog.csdn.net/weixin_43689726/article/details/126229254