HTML
标签
-
meta
- 标签永远位于
文档的头部
,即head元素内部
- 可提供有关页面的元信息,如针对搜索引擎和更新频度的描述和关键词
- 标签永远位于
-
charset
- 这个属性规定在外部脚本文件中使用的字符编码
如果外部文件中的字符编码与主文件中的编码方式不同,就要用到charset属性
- 默认的字符编码是 ISO-8859-1
-
- 标记了一个段落
- p元素会自动在其前后创建一些空白.浏览器会自动添加这些空间
-
input
- 用于搜集用户信息
// 规定input元素的值
<input value="请输入姓名..."> -
a
- 一般鼠标放到一个页面显示
小手
的时候,绝对有a标签 - 用于定义
超链接
,用于从一张页面链接到另一张页面 - 这个元素最重要的属性是
href属性
,它指示链接的目标 target = "_blank"
// _blank 在新窗口中打开链接
<a href="http://baidu.com" target="_blank">百度一下,你就知道</a>
<br>
// _parent 在父窗体中打开链接
<a href="http://baidu.com" target="_parent">百度一下,你就知道</a>
<br>
// _self 在当前窗体中打开链接,此为默认值
<a href="http://baidu.com" target="_self">lalala</a>
<br>
// _top 在当前窗体打开链接,并替换当前的整个窗体(框架页),一个对应的框架页的名称,在对应框架页中打开
<a href="http://baidu.com" target="_top">百度一下,你就知道</a> - 一般鼠标放到一个页面显示
-
p
- 标签定义段落
- p元素会自动在其前后创建一些空白,浏览器会自动添加这些空间,您也可以在样式表中规定
-
section
- 标签定义文档中的节(section,区段).比如章节,页眉,页脚,或文档中的其他部分
- 属性
- cite
- 值
- section的URL,假如section摘自web的话
- 值
- cite
-
src
- src属性规定外部脚本文件的URL
- URL
- 外部脚本的URL.可能的值有
- 绝对URL - 指向其他站点(如 src="www.example.com/example.js")
- 相对URL - 指向站点内的文件(如src="/scripts/example.js")
- 绝对URL - 指向其他站点(如 src="www.example.com/example.js")
- 外部脚本的URL.可能的值有
- URL
- src属性规定外部脚本文件的URL
-
src和href的区别
-
href
是引用
,相当于iOS中的import,不是必须的
-
src
是引入
,是必须的
,没有这个资源,标签就用不起来 - 给
#
表示跳转到当前界面
-
-
border: 5px dashed purple
- 边框5px 边框为虚线,颜色紫色
-
border: 5px solid purple
- 边框5px 边框为实线,颜色紫色
-
line-height
- 这个属性设置
行间
的距离 (行高) - 不允许使用负值
- 该属性会影响行框的布局。在应用到一个块级元素时,它定义了该元素中基线之间的最小距离而不是最大距离。
- line-height 与 font-size 的计算值之差(在 CSS 中成为“行间距”)分为两半,分别加到一个文本行内容的顶部和底部。可以包含这些内容的最小框就是行框。
- 原始数字值指定了一个缩放因子,后代元素会继承这个缩放因子而不是计算值。
- 这个属性设置
-
text-align: right
- 右对齐
-
class
- 这个属性用来
规定元素的类名
- 大多数时候用于指向样式表中的类. 不过,也可以利用它通过JavaScript来改变带有指定class的HTML元素
- class 属性不能在以下 HTML 元素中使用:base, head, html, meta, param, script, style 以及 title。
- 可以给 HTML 元素赋予多个 class,例如:
- 类名不能以数字开头!只有 Internet Explorer 支持这种做法。
- 这个属性用来
box-shadow: 0 0 2px orangered
float: right;
-
font-family
- 规定元素的字体系列
- font-family 可以把多个字体名称作为一个“回退”系统来保存。如果浏览器不支持第一个字体,则会尝试下一个。也就是说,font-family 属性的值是用于某个元素的字体族名称或/及类族名称的一个优先表。浏览器会使用它可识别的第一个值。
- 有两种类型的字体系列名称:
- 指定的系列名称:具体字体的名称,比如:"times"、"courier"、"arial"。
通常字体系列名称:比如:"serif"、"sans-serif"、"cursive"、"fantasy"、"monospace" - 提示:使用逗号分割每个值,并始终提供一个类族名称作为最后的选择。
- 注意:使用某种特定的字体系列(Geneva)完全取决于用户机器上该字体系列是否可用;这个属性没有指示任何字体下载。因此,强烈推荐使用一个通用字体系列名作为后路。
- 指定的系列名称:具体字体的名称,比如:"times"、"courier"、"arial"。
-
ul
- 大的,是列表的盒子
-
无序列表
,ul
里面放li
-
ol
- 大的,是列表的盒子
-
有序列表
,ol
里面放li
- 有个属性type,可以改变序列号的值
-
hr
分割线
-
li
- 标签定义列表项目
- 标签可用在有序列表
<ol>
和无序列表<ul>
中
-
display
- 该属性规定元素应该生成的框的类型
- 这个属性用于定义建立布局时元素生成的显示框类型。对于 HTML 等文档类型,如果使用 display 不谨慎会很危险,因为可能违反 HTML 中已经定义的显示层次结构。对于 XML,由于 XML 没有内置的这种层次结构,所有 display 是绝对必要的。
-
响应式布局
- 它是Ethan Marcotte在2010年5月份提出的一个概念,简而言之,就是一个网站能够兼容多个终端,而不是为每个终端做一个特定的版本.
- 这个概念是为解决移动互联网浏览而诞生的
-
相对路径
- 资源在当前的项目中
- ./ ../ ././
- 资源在当前的项目中
- 绝对路径
-
div
- 优势: 可以自定义
- div本身很纯洁
HTML5新增标签
- HTML5新增了27个标签元素,废弃了16个标签元素
- 主要包括如下:
-
结构性标签
-
article
文章主题内容(博客,帖子,..) -
header
标记头部区域内容 -
footer
标记脚部区域内容 -
section
区域章节表述 -
nav
菜单导航,链接导航
-
- 级块性标签(很少用)
-
行内语义性标签
-
meter
特定范围内的数值,如工资,数量,百分比 -
time
时间值 -
progress
进度条,可用max,min,step进行控制,完成对进度的表示和监听 -
video
视频元素,用于视频播放,支持缓冲预载和多种视频媒体格式 -
audio
音频元素,用于音频播放,支持缓冲预载和多种音频媒体格式
-
- 交互性标签
CSS
- Cascading Style Sheets, 层叠样式表
- 美化网页
-
编写格式
- 键值对的
// 左边属性,右边值
color: red -
CSS的3种书写形式
- 第一种:
行内样式
(也叫内联样式
)- 直接在
标签的style
属性中书写
<body style="color: red;">
- 直接在
- 第二种:
页内样式
- 在
本网页的style
标签中书写
<style>
body {
color: red
}
<style> - 在
- 第三种:
外部样式
- 在
单独的CSS文件中书写
,然后在网页中用link标签引用
<link rel="stylesheet" href="index.css">
- 在
- 第一种:
-
CSS的规律
- 就近原则
- 网页从上到下依次执行
- 叠加原则
- 就近原则
-
网站
- N个网页
- 服务器
- 数据库
- ...
-
CSS的两大重点
-
属性
- 通过属性的复杂叠加才能做出漂亮的网页
-
选择器
- 通过选择器找到对应的标签设置样式
-
属性
-
CSS中的选择器
- 选择器的作用
- 选择对应的标签,为之添加样式
-
标签选择器
- 关键字标签
- 根据标签名找到标签
<div>div1</div>
<div>div2</div>// 注意:这里不一定是div,也可能是别的标签
div {
color: red
} -
类选择器
- 关键字class
,"."加上"类名"
<p class="high">第一段文件</p>
<p>第二段文字</p>
<div class="high">div1</div>
<div>div2</div>.high {
color: red
} -
id选择器
-"#"加上"id名称"
<p id="first">第一段文件</p>
<p>第二段文字</p>#first {
color: red;
} -
并列选择器
-","隔开
<p class="high">第一段文件</p>
<p>第二段文字</p>
<div class="high">div1</div>
<div>div2</div>div , .high {
color: red;
} -
复合选择器
-精准定位
:"标签名" + "." + "class名"
,中间不是用的","
<p class="high">第一段文件</p>
<p>第二段文字</p>
<div class="high">div1</div>
<div>div2</div>div.high {
color: red;
} -
后代选择器
<div>
<p>div里面的p</p>
<span>
<p>div里面的span里面的p</p>
</span>
</div>
<p>外面的p</p>div p {
color: red;
} -
相邻兄弟选择器
<div>
<p>div里面的p</p>
<span>
<p>div里面的span里面的p</p>
</span>
<div>
<p>与div相邻的p</p>
<p>与p相邻的p</p>div + p {
color: red;
} -
属性选择器
// 第一种写法
<div name="jack">1111</div>
<div name="rose">2222</div>
<div>3333</div>// 第一种写法
div[name] {
color: red;
}<!--第二种写法-->
<div name="jack">1111</div>
<div name="rose" age="20">2222</div>
<div age="10">3333</div><!--第二种写法-->
div[name][age] {
color: red;
} -
伪类
-触发某些操作的时候
-
:active
- 向被激活的元素添加样式
-
:focus(掌握)
- 向拥有键盘输入焦点的元素添加样式
- 一般用在input上
-
:hover(掌握)
- 当鼠标悬浮在元素上方时,向元素添加样式
-
:link
- 向未被访问的链接添加样式
-
:visited
- 向已被访问的链接添加样式
-
:first-child
- 向元素的第一个子元素添加样式
-
:lang
- 向带有指定lang属性的元素添加样式
-
-
伪元素
-
:first-letter
- 向文本的第一个字母添加特殊样式
-
:first-line
- 向文本的首行添加特殊样式
-
:before
- 在元素之前添加内容
-
:after
- 在元素之后添加内容
-
- 选择器的作用
-
选择器的优先级别
-
通配符
<!--通配符:
1.优先级别非常低
2.性能比较差-->
<style>
* {
}
<style> -
css样式遵循的规律
1.相同类型的选择器遵循: a.就近原则 b.叠加原则
2.不同类型的选择器遵循:
a.选择器的针对性越强,它的优先级就越高
b.选择器的权值加到一起,大的优先;如果权值相同,后定义的优先
c.important(1000) > 内联 > id选择器(100) > 类选择器(10) | 伪类(10) | 属性选择(10) | 伪元素(10) > 标签选择器(1) > 通配符(0) > 继承
-
-
标签的类型
-
块级标签
- 独占一行
- 能随时设置宽度和高度
- 如: div, p, h1, h2, ul, li
-
行内标签(内联标签)
- 多个行内标签能同时显示在一行
- 宽度和高度取决于内容的尺寸
- 如: span, a, label
-
行内-块级标签(内联-块级标签)
- 多个行内-块级标签可以显示在同一行
- 能随时设置宽度和高度
- 如: input, button
-
-
修改标签的显示类型
- CSS中有个
display
属性,能修改标签的显示类型-
none
: 隐藏标签
-
block
: 让标签变为块级标签 -
inline
: 让标签变为行内标签 -
inline-block
: 让标签变为行内-块级标签(内联-块级标签)
-
- CSS中有个
-
CSS属性
-
可继承属性
- 父标签的属性值会传递给子标签
- 一般是
文字控制
属性 -
如:
/// 1.这两个-所有标签都可继承
// 属性规定元素是否可见
visibility: hidden
// 规定要显示的光标的类型(形状)
cursor: move
/// 2.内联标签可继承(w3school查询,太多了)
line-height: 行高,用来做垂直居中
text-decoration: none 去掉下划线
/// 3.块级标签可继承
text-indent: 首行缩进
text-align: 水平居中
/// 4.列表标签可继承
list-style: 声明列表的属性,就是列表前面那个小圆点
-
不可继承属性
- 父标签的属性值不能传递给子标签
- 一般是
区块控制
属性
- 如
1.display:
2.background: 可设置背景图片和背景颜色
3.overflow: 处理超出的内容
4.盒子模型
-
-
盒子模型
-
content(内容)
- 盒子里装的东西
- 网页中通常指文字和图片
- 属性如下:
1.height: 设置元素高度
2.max-height: 设置元素的最大高度
3.max-width: 设置元素的最大宽度
4.min-height: 设置元素的最小高度
5.min-width: 设置元素的最小宽度
6.width: 设置元素的宽度 -
padding(填充,内边距)
- 属性
1.padding: 在一个声明中设置所有内边距属性
2.padding-bottom: 设置元素的下内边距
3.padding-left: 左内边距
4.padding-right: 右内边距
5.padding-top: 上内边距// 上, 右, 下, 左
padding: 10px 5px 15px 20px;
// 上, 右&左, 下
padding: 10px 5px 15px;
// 上&下, 右&左
padding: 10px 5px
// 所有的4个内边距都是10px
padding: 10px -
border(边框)
p {
// 实线边框5px
borde: 5px solid red;
}
// 设置边框圆角
border-radius margin(外边距)
-
-
CSS3新增特性
-
RGBA透明度
- RGB取值: 从0~255(OC中是0~1)
-
块阴影和圆角阴影
1.box-shadow:
h-shadow: [必须].水平阴影的位置,允许负值
v-shadow: [必须].垂直阴影的位置,允许负值
blur: [可选]. 模糊距离
spread: [可选].阴影的尺寸
color: [可选].阴影的颜色.请参阅CSS颜色值
inset: [可选].将外部阴影(outset)改为内部阴影
2.text-shadow -
圆角
1.border-radius
-
-
CSS布局
- 默认,所有网页布局都是在
标准流
中- 标准流: 从上到下,从左到右
-
脱离标准流
任何标签,一旦脱离标准流,就会被强制转换为行内块级标签
-
float属性
常用取值:
1.left: 浮动到父标签的最左边
2.right: 浮动到父标签的最右边 -
position属性
// 子绝父相
常用取值:
1.absolute: 绝对定位, 相对于static定位以外的第一个父元素进行定位
2.fixed: 绝对定位, 相对于浏览器窗口进行定位
3.relative: 相对定位, 相对于其正常位置进行定位
4.static: 默认值. 没有定位,元素出现在正常的流中
5.inherit: 规定应该从父元素继承position属性的值 -
内容居中
-
所有标签水平居中
1.行内标签 和 行内-块级标签: 在父标签中设置
text-align: center;
2.块级标签: 在自身设置
margin: 0 auto; -
所有标签垂直居中
1.行内标签 和 行内-块级标签: 在父标签中设置
line-height
2.块级标签:
position: absolute;
left: 50%
top: 50%;
transform: translate(-50%, -50%);
-
-
box-sizing
- 以特定的方式定义匹配某个区域的特定元素,默认值content-box
- 将box-sizing设置为
border-box
,可以把边框
和内边距
放入框中
- 默认,所有网页布局都是在