在html中我们不能直接书写一些特殊符号,比如:空格,大于小于号。这时我们就要用到实体(转义字符)
实体语法:&实体的名字(参考W3chtml的实体)
空格
>
大于号
<
小于号
©
版权符号
主要用于设置网页中的一些元数据,元数据不是给用户看。(还可设值移动端的一些东西)
charset 指定网页的字符集
name 指定的数据的名称
content 指定的数据的内容
Keywords表示网站的关键字,关键字间使用,隔开
description:用于指定网站的描述,会显示在搜索引擎的的搜索结果中
将页面重新定向到另一个网站,以下例子为3秒后跳转到百度
语义化标签,要关注html标签的语义而不是样式,样式可以通过css改变
长引用,可用来引用某人说的一段话
表示语音语调的加重
强调
短引用
可嵌套除它自身外的全部元素
没有任何语义,一般用来在网页中选中文字
是替换元素,块元素和行内元素之间,具有两种元素的特点。1.有序列表ol>li;
2.无序列表ul>li;
3.定义列表 使用dl标签创建一个定义列表,dt表示定义内容,dd对内容进行说明
- 结构
- 记得v京东i规划v低级的破格v豆瓣
内联框架:在当前页面中进入其他页面
src:指定路径
frameborder:指定内联框架的边框.
audio标签用来向页面中引入一个外部的音频文件,video引入视频,用法和audio基本相同
音频文件引入时默认情况下不允许用户自己控制播放停止
属性 :controls
是否允许用户控制播放 autoplay
音频文件是否自动播放
如果设置了autoplay
则音乐打开页面时会自动播放,但是目前大多数浏览器不会这样(考虑到用户体验问题)
loop
音乐是否循环播放
-->
.div.red1{}/*可选中*/
.a.b.c{}/*可选中*/
#b1,.p1,h1,span{}
伪类:不存在的类,特殊的类
:first-child
第一个子元素 ul > li:first-child{}
:last-child
最后一个子元素
:nth-child(
)选中第n个子元素 ul > li:nth-child(){}
特殊值:
n 第n个 n的范围0到正无穷
2n 或 even 选中偶数
2n+1 或 odd 选中奇数}这些伪类是根据所有的子元素进行排序
:first-of-type
:last-of-type
:nth-of-type()
这几个伪类的功能和上述的类似,不同点是他们是在同类型元素中进行排序
:not()
否定伪类 将符合条件的元素从选择器中去除ul > li:not(:nth-child(2))
:link
表示没访问过的链接(正常连接)
:visited
访问过的链接(只能设置颜色)
:active
鼠标点击
:hover
鼠标移入
伪元素:表示页面中一些特殊的并不真实存在的元素 (特殊的位置)
使用::
开头
::first-letter
表示第一个字母
::first-line
表示第一行
::selection
表示鼠标选中的内容
::before
::after
-before-after 必须结合content使用
px
em
rem
盒子模型 (盒子的大小由内容区,内边距和边框共同决定,所以计算盒子大小时,需要将这三个区域加到一起计算)
border
简写属性,可以同时设置边框所有的相关样式,没有顺序要求 border:soild 10px red
;border-style
指定边框样式 border-style:solid dotted dashed double
;border-color
指定边框颜色border-width
指定边框宽度margin-left + border-left + padding-left + width + padding-right + border-right + margin-right = 其父元素内容区宽度(必须满足)
0 + 0 + 0 + 200px + 0 + 0 + 0 = 800px;
子元素在父元素的内容区进行排列,若子元素大小超过了父元素,则子元素会从父元素溢出
使用overflow
visible
默认值,子元素会从父元素溢出
hidden
溢出内容被裁剪
scroll
生成两个滚动条
auto
根据需要生成滚动条 overflow-x:
overflow-y:
相邻的垂直方向外边距会发生重叠现象
.box::after{
content:"";
display:table;
}
行内元素不支持设置宽和高-可以设置margin,border,padding,但是垂直方向不会影响页面布局
display
和visibility
display
用来设置元素显示的类型
可选值:
block 将元素设置为块元素
inline 将元素设置为行内元素
inline-block 设置为行内块元素
table 设置为一个表格
none 元素不在页面中显示
visibility
:用来显示元素的显示状态
visible 默认值,元素在页面中显示
hidden,再页面中隐藏,不显示,但是占据页面位置
默认情况下,盒子可见框大小由内容区,内边距和边框共同决定
box-sizing
用来设置盒子尺寸的计算方法(设置width 和 height 的作用)
可选值:
content-box
默认值,宽度和高度用来设置内容区的大小
border-box
宽度和高度用来设置盒子可见框的大小:即,width和height设置的是内容区和内边距以及边框的大小
box-shadow
box-shadow
用来设置元素的阴影效果,阴影不会影响页面布局
第一个值:水平偏移量 正值向右移动,负值向左移动
第二个值:垂直偏移量,正值向下移动,负值向上移动
第三个值:阴影的模糊半径
第四个值;颜色
box-shadow:2px 2px 10px red
outline
用来设置元素的轮廓线,用法和border一样,不同的是轮廓不会影响可见框的大小
float
:可通过浮动使一个元素向其父元素的左侧或右侧移动
可选值:none 默认值 ; left ; right
注意 *
元素设置浮动以后,水平布局的等式不需要强制成立
元素设置浮动以后,会完全从文档流中脱离,不再占用文档流的位置,所以元素下边的还在文档流中的元素会自动向上移动·
浮动特点:
1.浮动元素会完全脱离文档流,不再占据文档流的位置
2.不会从父元素中脱离
3.浮动元素向左向右移动时,不会超过它前边的其他浮动元素
4.如果浮动元素的上面是一个没有浮动的块元素,则浮动元素无法上移
5.浮动元素不会超过它上边的浮动的兄弟元素,最多和它一样高 -->
高度塌陷问题:
在浮动布局中,父元素的默认高度是被子元素撑开的。
当子元素浮动后,其会完全脱离文档流,子元素从文档流脱离将不会撑起父元素高度,导致父元素高度丢失,高度丢失后,其下的元素会自动上移,导致页面的布局混乱
开启BFC后:
开启BFC的方法;
overflow:hidden
,开启BFC后可以使其包含浮动元素如果我们不希望某个元素因为其他元素浮动的影响而改变位置
可以通过clear
属性来清除浮动元素对当前元素所产生的影响
clear
-作用:清除浮动元素对当前元素的影响
-可选值
left 清除左侧浮动对当前元素的影响
right 清除右侧浮动元素对当前元素的影响
both 清除两侧中最大影响的那侧
-原理
设置清除浮动后,浏览器会自动为元素添加上一个外边距,以使其位置不受其他元素的影响
使用after
:
content:'';
display:block;
clear:both;
}
在html中再加一个div用来清除浮动
解决浮动带来的高度塌陷和外边距重叠问题
.box::before,.box::after{
content:"";
display:table;
clear:both
}
reletive
absolute
fixed
sticky
left + margin-left + border-left + padding-left + width + padding-right + border-right + margin-right +right = 其父元素内容区宽度
background-color
:设置背景颜色
background-image
:设置背景图background-image:url()
background--repeat
:设置背景的重复方式
可选值:
repeat 默认值,背景会沿着x轴 y轴双方向重复
repeat-x 沿着x轴方向重复
repeat-y沿着y轴方向重复
no-repeat 背景图片不重复
background-position
:用来设置背景图片的位置
设置方式:
通过top left bottom right center,使用方位词时必须要同时指定两个值,若只写一个,则另一个默认为center
通过偏移量来指定背景图片的位置:水平方向的偏移量,垂直反向的偏移量
background-position:-50px 300px;
bakground-clip
: 设置背景的范围
可选值
border-box 默认值,背景会出现在边框的下面
padding-box 背景不会出现在边框,只会出现在内容区和内边距
content-box 背景只会出现在内容区
background-origin
:背景图片的偏移量计算的原点
padding-box 默认值,backgroun-position 从内边距处开始计算
content-box 背景图片的偏移量从内容区处计算
border-box 背景图片的变量从边框处开始计算
background-size
:设置背景图片的大小
第一个值表示宽度
第二个值表示高度
若只写一个,则第二个默认为auto
cover 图片比例不变,将元素铺满
contain 图片比例不变,将图片在元素中完整显示
background-attachment
:图片是否跟随元素移动
scroll 默认值,背景图片会跟随元素移动
fixed 背景图片会固定在页面中,不会随元素移动