首页 > 代码库 > 2017.3.12 H5学习的第一周
2017.3.12 H5学习的第一周
本周我开始了H5的学习,在这一周里我们从html的基本标签开始一直讲到了才算css的用法,接下来我将记录下来本周我学到的H5的内容。
首先是声明文档,声明文档类型是HTML5文件,它在HTML文档必不可少且必须放在文档第一行。
写法:<!DOCTYPE html>。
接着我们学习了html的基本结构:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
</body>
</html>
之后,我们又了解了head中的一些标签,包括meta标签和link标签,以下是它们的详细内容:
【meta】标签
1.charest属性:单独使用,设置文档字符集编码格式
写法:<meta charest="UTF-8">
常见的中文编码格式:
GB-2312:国标码,简体中文。
GBK:扩展的国标码,简体中文。
UTF-8:万国码,Unicode码,基本兼容各国语言。
2.http-equiv属性:需配合content属性使用。主要声明浏览器如何解释编译文件。
写法:<meta http-qeuiv="属性值" content="属性值详细内容">
常用属性值:content-type HTML4.01之前的文档内容编码声明。
refresh 网页刷新 set-cookie设置浏览器cookie缓存
3.name属性:需配合content属性使用。主要用于给搜索引擎提供必要信息。
写法:<meta name="属性值" content="属性值详细内容">
重要属性值:
author 作者,声名网站作者,常用公司网址表示。
keywords 网站关键字,多个关键字用英文逗号分隔。
description 网页描述 ,搜索引擎在title下的描述内容
http-qeuiv和name属性必须和content属性配合使用。前两者只是用于声明即将修改那些属性值,而实际的属性
值内容,在content中描述。
例:
<meta name="author" content="http://www.jredu100.com"/>
<meta name="keywords" content="html5,网页,WEB前端开发"/>
<meta name="description" content="这是我在杰瑞教育开发的第一个网页"/>
<meta http-equiv="set-cookie" content="mmmmmmmmmmmmmmmmmmmm" />
<meta charset="UTF-8">
【link标签】
1.作用:用于为网页链接各种文件。
2.常用属性:
rel:用于表明被连接文件与当前文件之间的关系。
type:表明被连接文件是什么类型。可省略。
href:表明连接文件的地址。
例:<link rel="icon" type="image/x-icon" href="http://www.mamicode.com/img/QQ.png"/>
接下来我们学习了html中的行级标签和块级标签以下是他们的基本内容:
【HTML的标签分类】
1.块级标签:自动换行,前后隔一行。
2.行级标签:按行逐一显示。
是否自动换行是我们判定块级标签的重要指标。
[常见的块级标签]
标题标签<h1></h1>……<h6></h6>。标题标签<h1></h1>……<h6></h6>:默认加粗,H1最大,H6最小。
水平线<hr/>水平线标签
段落<p></p>段落
换行<br/>
引用<blockquote></blockquote >表明标签中的文字为引用的内容,浏览器显示为等宽字体,并缩进。cite属性表明引用的来源,一般为引用的网址URL。
预格式<pre></pre>与格式标签:浏览器解析时会按照等宽字体显示,并保留标签内的空格和回车,用于保留原有代码格式。
接下来我们又了解了四种列表:ol,ul,dl,figure。
【常见的行级标签】
span(文本)span(文本):用于包裹一部分文字,进行特定样式的修改。
img(图片)
em(强调)em(强调)浏览器显示为倾斜。
strong(强调)strong(强调)浏览器显示为加粗。
q(短引用)q(短引用):常用与一句话的引用,cite属性表示引用来源,浏览器解析时会在内容的前后插入双引号。
a(超链接)
i(倾斜)i(倾斜)
b(加粗)b(加粗)
small(缩小字体)
[strong/em/b/i 标签的区别]
1.em和strong都表示强调,strong的强调程度大于em,strong和em标签均可多层嵌套表示强调程度递增。
2。em和i都能倾斜,strong和b都能加粗,但strong和em多了强调的语义,可以帮助搜索引擎快速抓取网站
重点。且HTML5要求开发者尽可能的实现代码的语义化。
small(缩小字体):small标签可以多层嵌套,表示比默认字体小一号,直到最小号为止
big(放大字体):同small,直到最大号。
但在最新规范中,small和big标签不推荐使用,提倡使用style="font-size:xxpx;"css样式代替。
img(图片标签)
1.src属性:表示图片引用路径。
常见路径的写法
(1).相对路径:
.当图片在文件下一层时:文件夹名/图片名 例img/abc.jpg
.当图片与当前文件在同一层时:直接写图片名 src="http://www.mamicode.com/abc.jpg"
.当图片在当前文件上一层时:../(多层多个../)图片名 src="http://www.mamicode.com/abc.jpg"
使用相对路径时图片最外层只能放到网站根目录(必须在项目文件夹内)。
(2).绝对路径:写法flie:///E:/xxx.PNG,但是严禁使用。
(3).网络连接:直接使用图片的网络地址,但由于图片在他人服务器上,不可控。不建议使用。
2.title:图片标题。当鼠标指上是显示的文字。
3.alt:当图片无法加载时显示的文字。
4.width/height:图片的宽度,高度。相当于css中的style="width: px; height: px;"
5.align:图片周围的文字相对于图片的排列方式。可选top/center/bottom。
<img src="http://www.mamicode.com/img/QQ.png">
<img src="https://ss1.baidu.com/6ONXsjip0QIZ8tyhnq/it/u=2986451092,4028509346&fm=96">
<img src="http://www.mamicode.com/flie:///E:/XXX.PNG"/>
<img src="http://www.mamicode.com/XX文件夹/xx图片" alt="当图片无法加载时显示的文字"/>
<img src="http://www.mamicode.com/6.jpg" title="图片标题。当鼠标指上是显示的文字"/>
<img src="http://www.mamicode.com/新建文件夹/7.jpg" width="100px" height="100px" align="top"/>
【超链接a】
1.href属性:超链接的跳转地址,可以写网络连接或本地html文件的相对路径,确定方式同img的src路径。
2.title:鼠标指上后显示的文字。
3.target:设置超链接打开窗口的位置 _self在自身页面打开(默认)_blank在新页面打开。
4.rel:表明即将跳转的页面与当前页面的关系
rel="prev"即将跳转的页面是当前页面的前一篇文章。
rel="next"即将跳转的页面是当前页面的后一篇文章。
rel="prefetch"预加载,在当前文档加载完成后利用空余网速预加载即将跳转的页面。
【功能性链接】:mailto://xxxx@xx.com发邮件
tencent://message/?uin=1244579948发qq消息
【锚链接】
(1)本页面的锚链接
1.设置一个锚点 例:<a name="top"></a>用name表示锚点名称
2.在超链接的href属性中使用#name跳转到指定锚点位置
<a href="http://www.mamicode.com/#top">这是一个超链接</a>
(2)其他页面锚链接
1.在需跳转的页面设置锚链接
2.在超链接href属性中输入 文件名.html#name
注:由于谷歌,ie的兼容问题,需要在锚点中插入一个空格 才能生效。
<a href="http://www.baidu.com" title="鼠标指上后显示的文字" target="_blank">这是一个超链接</a>
<a href="mailto://1244579948@qq.com" target="_blank">这是一个超链接</a>
<a href="tencent://message/?uin=1244579948" target="_self">这是一个超链接</a>
<a href="http://www.mamicode.com/#top">这是一个超链接</a>
s有误文本:删除线。
cite标签:浏览器显示为倾斜,常用于书、画作、作品的引用。
code:只是表示计算机代码。但是浏览器只会显示等宽字体,不会保留代码格式,需配合pre标签使用。
表格的知识:
【表格table】
表格<table></table>
表格的行<tr></tr>
表格的列<td></td>
表格的表头列<th></th>(将tr中的td改为th表示本行为表头)
th默认加粗且在单元格居中显示
【table的常用属性】
1.border:表格的边框属性;当使用border设置边框时会在所有td以及table上嵌套边框,当border
加大时只有table最外层框线加粗,td单元格上的框线不会变化。
2.Cellspacing:单元格与单元格之间的间隙,当cellspacing="0"时单元格间隙为0但边框线不合并,
仍是两条。(合并边框的写法style="border-collapse:collapse;"使用边框合并后无需设置cellspacing.)
3.Cellpadding:单元格内边距,单元格中文字与单元格边框之间的关系。
4.Width/Height:表格的宽度高度.
5.Align:设置表格在父容器中的对齐方式:left/center/right。
【注意:当表格使用align属性时相当于使表格浮动,可能会导致表格后面的元素受其影响,导致布局错乱。】
6.Bgcolor:背景色.
7.Background:背景图片,后接相对路径,当背景图和背景色同时生效时,背景图会覆盖背景色。
8.Bordercolor:边框颜色.
【tr和td,th的属性】
当表格属性与行列属性冲突时会以行列属性为准。
属性设置优先级:td>tr>table。
1.width/height:给单个的行,列设置宽度,高度。
2.bgcolor:背景色。
3.align:设置单元格中的文字在单元格中的水平对齐方式:left/right/center。
4.valign:设置单元格中的文字在单元格中的垂直对齐方式:top/center/bottom。
5.nowrap:nowrap="nowrap"设置单元格文字行末不换行。
表格的跨行与跨列
1.跨列colspan,某单元格跨n列则本单元格右边的n-1个td就不需要了。
1.跨行rowspan,某单元格跨n行则本单元格下边的n-1个td就不需要了。
一个表格的简单示例:
<table width="500" border="5" cellspacing="10"
style="border-collapse: collapse;"cellpadding="10"
align="center" bgcolor="burlywood" background="img/QQ.png"
bordercolor="red">
<tr bgcolor="blue">
<th width="100" background="../新建文件夹/7.jpg">第一列</th>
<th>第二列</th>
<th>第三列</th>
</tr>
<tr>
<td>1-1</td>
<td>1-2</td>
<td>1-3</td>
</tr>
<tr>
<td>2-1</td>
<td>2-2</td>
<td>2-3</td>
</tr>
</table>
表单的知识:
【form表单】
1.两个重要属性:
action:表单需要的服务器地址
method:表单提交数据使用的方法,get/post
get和post的区别:
(1).get传参使用URL传递,所有参数在地址栏可见,不安全,传递参数有限;
(2).post传参使用http请求传递比较安全,而且post可以传递大量数据;
(3).get请求的传输速率要比post快。
URL传参的形式:链接URL地址?name1=value1&name2=value2
2.input的常用属性:
(1).type:设置input的输入类型。
(2).name:给input输入框命名,一般情况下name属性必不可少。因为传递数据时使用name=value
(输入内容)的形式传递。
(3).value:input输入框的默认值。
(4).placeholder:输入框的提示内容,当input有默认的value或输入值时,placeholder消失。
3.input-type属性的常用属性值。
(1).text:文本输入框。
(2).password:密码输入框,输入内容默认为小黑点。
(3).radio:单选框/checkbox:复选框
使用radio/checkbox时,value属性必填,提交时提交value中的默认值。
radio/checkbox凭借name属性确定是否属于同一组,name相同是同一组,只能选一个。
使用checked="checked"属性,设置默认选中项。
(4).file:文件上传
使用accept="类型",设置只能上传的文件类型,image/*:所有图片类型。
(5).submit:提交按钮,将所有表单数据,提交至后台服务器。
(6).reset:重置表单数据,将表单数据恢复到默认状态。
(7).image:图形提交按钮,和submit一样具有表单提交功能。
用src属性选择图片路径
(8).button:普通按钮,无用。
4.属性名=属性值的情况
(1).checked="checked":设置radio或checkbox的默认选中项。
(2).multiple="multiple":设置select控件为多选,可在界面使用Ctrl+鼠标,进行多选。
(3).selected="selected":设置select控件,默认选中的option选项。
(4).readonly="readonly":设置为只读模式,不允许编辑。设置textarea文档为只读。
(5).disabled="disabled":禁用控件,当input被disabled是该input的name和value将无法向后台传递。
(6).hidden="hidden":隐藏控件,等同于<input type="hidden" />
5.下拉选择控件:select
① 写法:<select>
<option></option> //可以有N多个
</select>
② name属性,应该写在<select>上,所有选项只有一个name
③ multiple="multiple" 设置select控件为多选,可在界面使用Ctrl+鼠标,进行多选。一般不用。
④ option常用属性:
value="":当option没有value属性时,往后台传递的是<option></option>标签中的文字;
当option有value属性时,往后台传递的是value属性的值。
title="":鼠标指上后显示的文字。
selected="selected":默认选中。
⑤ <optgroup label="山东省"></optgroup> :用于将option标签进行分组,label属性表示分组名。
6.【文本域 textarea】
① 写法:<textarea></textarea>
② 设置宽高style="width: 200px; height: 150px;" 自身有cols="" rows=""两个属性,但不常用
③ readonly="readonly" 设置为只读模式,不允许编辑。
④ style="resize: none;" 设置为宽高不允许修改。
⑤ style="overflow: ;" 设置当文字超出区域时,如何处理。
>>> 也可以通过overflow-x/overflow-y分别设置水平垂直方向的显示方式。
>>> 常用属性值:hidden 超出区域的文字,隐藏无法显示
scroll 无论文字多少,均会显示滚动
auto 自动,根据文字多少自动决定是否显示滚动条(默认样式)
7.表格的边框和标题,
<form>
<fieldset>表格边框
<legend></legend>表格标题
各种表单元素
<fieldset>
</form>
注:一个表单可以有多个边框加标题
8.HTML5智能表单
(1).H5新增input的form属性,用于指向form的id,实现input无需放入form标签中,
即可通过表单提交。
<form id="xx">...</form>
<input .... form="xx">
(2).新增多个type新属性值。详见表格
(3).新增input的属性:
Autocomplete:设置自动完成功能,
根据之前输入过的内容在下次输入时提示没有输入的部分,
大多数浏览器默认开启,
有on/off属性,
也是form的属性,控制整张表单的自动完成开关但在个别input上可以单独设置覆盖。
Autofocus:自动获得焦点,autofocus="autofocus"刚打开网页时光标所在位置。
Form:所属表单,同(1)。
Required:必填,required="required"设置必填。
Pattern:验证input的模式,指定输入内容的格式,以后讲。
Placeholder:提示。
接下来就是css的内容了,如下:
常用选择器:
[标签选择器]
1.写法:html标签名{ }.
2.选中所有对应的html标签并修改其样式.
[类选择器 class选择器]
1.写法:.class名{}
2.调用:在需要修改的html标签上使用class="选择器的名字"
3.优先级class选择器大于标签选择器。(当作用于同一层时。)
选择器命名规范
1.只能是字母、数字、下划线组成。
2.开头不能是数字。
[id选择器]
1.写法:#选择器名{}。
2.调用:在需要修改样式的html标签上使用id="选择器名"。
3.同一层时id选择器优先级高于class。
4.id选择器是唯一的,整个页面不能出现同名id!!!!
[通用选择器]
1.写法*{}。
2.作用:选中页面中html的所有标签。
3.优先级最低。
[后代选择器]
1.写法选择器1 选择器2 …… 选择器N{}
2生效规则:选择器2必须是选择器1的后代,后面相同。
[子代选择器]
1.选择器1>选择器2>……选择器N
2.生效规则:选择器2必须是选择器1的直接子代
[交集选择器]
1.写法:选择器1选择器2……选择器N
2.生效规则:必须同时满足所有选择器才会生效
[并集选择器]
1.写法:选择器1,选择器2,……选择器N
2.生效规则:满足任何一个选择器均可生效。
[选择器优先级]
1.就近原则,近者优先。
2.当作用于同一层时:可用权重计算
权重划分:标签选择器是1
class选择器10
id选择器100
行级样式表style=""1000
#ul .il .li2 li{}优先级权重121
li .li1 .li2 .lis2{}优先级权重31
#ul #li li{}优先级权重201
[伪类选择器]
1.写法:选择器名:伪类状态{}
常见伪类状态:
link:未访问状态
visited:已访问状态
hover:鼠标指上状态
active:激活选定状态
focus:获得焦点,在input中非常常用
注.当超链接同时有以上四个状态时link和visited必须在四个状态的最上面,
hover必须在active上面。
[超链接样式的四种状态]
a:link
a:visited
a:hover
a:active
[三种使用css的方式]
1.行内样式表:直接在html标签中使用stly=""的方式使用;
特点:将css代码和html代码完全揉杂在一起,不符合w3c关于内容与表现分离的要求,
不利于样式复用。
优先级:最高。
2.内部样式表:在<head></head>中使用<style type="text/css"></style>
的方式引用。
特点:将css代码和html代码分离,但没有彻底分离css文件与html文件,
不利于多页面复用样式
3.外部样式表:在新建的css文件中写css代码用link标签链接导入css文件。
<link rel="stylesheet" type="text/css" href="http://www.mamicode.com/css/01-css.css" />
特点:实现了css与html的彻底分离有利于样式复用与后期维护。
颜色常用单位
十六进制:#ffffff
颜色名称:red
RGB颜色:RGB(255,255,255)
RGBA:第四位数表示透明度,可选值0-1
[css常用文本属性]
1.字体、字号:
font-weight:字体粗细,可选属性:bold加粗 lighter细体 100~900数值(400正常,700 bold)
font-size:字体大小 **PX **%(浏览器默认字体大小的百分比,绝大部分默认16px)
font-family:字体族,设置字体。
>>>多个字体样式间用逗号分隔,浏览器解析时,会从左往右依次解析,选择可用字体。
>>>一般前面使用具体字体名称,最后一个使用字体族类名称。
(常用字体族名称:衬线体serif 非衬线体sans-serif(常用) 等宽体Monospace)
>>>例如:font-family:Arial, ‘Microsoft Yahei‘, sans-serif;
font-style:字体样式,正常(normal) 斜体(italic)
font-variant:small-caps; 将字母转为小型大写字体。
(了解)font缩写形式:font-style font-variant font-weight font-size/line-height font-family
>>> 使用注意事项 :
① 顺序必须严格按照上述顺序;
② 多个样式之间用空格分割,而且font-size/line-height 必须作为一对用/分割
③ font-size和font-family必须指定,其他样式不指定将采用默认样式显示;
>>> 例如:font:italic bold 75%/1.8 ‘Microsoft Yahei‘, sans-serif;
斜体 加粗 字号/行高 字体族(微软雅黑,非衬线字体族)
2、字体颜色:
color:字体颜色
opacity:透明度,0~1之间的数字。 调整时控件以及子控件均会透明,而使用rgba调整时,只会时本控件透明,子控件不会发生透明度变化。
3、行距、对齐等:
line-height:行高 ① 像素单位 48px ② 不带px 正常行高的倍数 ③百分数 同2
>>> 典型应用,调整控件中文垂直居中的方式:控件的height=控件的line-height
text-align:块级元素中行级元素的水平对齐方式 left center right
letter-spacing:字符间距,字与字之间的间距
text-decoration:文本修饰 下划线underline、删除线line-through、上划线overline、none
overflow:控制超出范围文本的显示方式(auto 根据文字多少自动显示滚动条,scroll始终显示滚动条, hidden 超出范围文本隐藏) 可以通过overflow-x overflow-y分别设置水平垂直方向
text-overflow:设置多余文字的显示方式 clip裁剪掉 ellipsis省略号
>>>【重点】让每行多余文字显示省略号:
① white-space: nowrap; 如果是中文,需设置行末不断行
② overflow: hidden; 设置控件超出范围隐藏
③ text-overflow: ellipsis; 设置多余文本省略号显示
white-space: nowrap; 设置行末不断行显示
word-break: 浏览器默认在空格处断行,当一个单词长度超出范围时,会不断行显示, break-all 允许在单词内换行。
text-shadow:文本阴影,有四个属性值:
①水平阴影距离 必选,数值越大,阴影右移
②垂直阴影距离 必选,数值越大,阴影下移
③阴影模糊距离 可选,数值越大,阴影越模糊。默认为0,不模糊
④阴影颜色 可选,默认为黑色
text-indent:首行缩进,可用像素值调整缩进大小
text-stroke: -webkit-text-stroke: 0.2px #008000; 描边的粗细,描边的颜色
float: ;浮动 right、left、center是列表项横排显示
【CSS常用背景属性】
background
background-color:背景色
background-image:背景图,background-image: url(图片地址相对路径);背景图和背景色同时存在时,背景图会覆盖背景色
background-repeat:背景图重复方式 ,no-repeat不平铺 repeat平铺(默认) repeat-x水平平铺 repeat-y垂直平铺
background-size:背景图大小。
【指定宽度高度】
>>> 宽高的写法,第一个属性值为宽度,第二个属性值为高度,可以:①直接写像素 ②写百分比(父容器宽高的百分比)
>>> 当只有一个属性值时,默认为宽度。高度等比缩放。
当有两个属性值时,会按照指定的高度宽度进行压缩/拉伸显示。
【其他属性值】
>>> contain:图片等比缩放,缩放到宽或高的某一边等于父容器的宽高,另一边按照图片大小缩放(可能导致部分空余区域无法覆盖)
>>> cover:图片等比缩放,使背景图像完全覆盖背景区域。(可能导致背景图部分区域无法显示)
background-position:位置坐标、偏移量
>>> 指定位置:left/center/right top/center/bottom
当只写一个属性值时,另一个默认居中
>>> 填写坐标:水平位置 垂直位置 (像素或百分比形式)
① 当只写一个属性值时,默认写的为水平方向,则垂直居中
② 当使用像素时:图片的左上角往各个方向移动的实际距离
水平方向:正数右移 负数左移 垂直方法:正数下移 负数上移
(左负有正 上负下正)
③ 当使用百分数时,一般只能是正数。代表去掉图片后,剩余空白距离的分布比例。例如 background-position:30%; 水平方向去掉图片后,剩余区域3:7分
以上就是这周我学到的h5知识,下周继续努力。
2017.3.12 H5学习的第一周