来千锋武汉HTML5前端培训班已经有接近三个月了,作为一个零基础的学员,相对其他科班出生的同学基础要差很多,而且也是在外工作一年多因为一些原因想到转行过来的。第一阶段的学习已经告一段落,主要从以下几个方面总结一下自己的感受:
第一,为什么要选择来千锋武汉HTML5前端培训班学习。之前的工作感觉自己已经能够看到几十年后的自己,毫无动力毫无目标而言,正好有个朋友去年在千锋学习过前端课程并且工作状况也不错,于是就毅然决然选择离职来到千锋参加培训,对于我而言也是一个很大的改变,一切从零开始。
第二,谈一下来到班级一个月的感受。从第一天的开班典礼到最后考完第一阶段的试卷大家一起出去玩,感觉就像回到以前的学校时光,自我感觉也是很不错的,和身边的同学的相处也比较融洽,所以每天学习的心态也会比较好。不懂得一起交流或者问问老师,知识越来越多,感觉越来越踏实。但是有一点不足的是,只认识前后两排的同学,班级上一大半的同学会叫不出名字,也不知道以后会有什么机会能够认识更多的同学。
第三,谈一下自己一个月的学习状况。我从小到大的学习习惯就是,该学的时候就好好学,该休息放松的时候一定要好好休息,只有劳逸结合才能事半功倍。所以每天我在班级里就认真听讲,做好笔记,把老师讲的所有知识都务必搞懂,回家了学习效率会比较低下,一般选择休息。
其实学习没什么捷径可走,只有努力,上课认真听,练习的时候认真写代码,不懂的要经常问老师和学的好的同学。千锋武汉HTML5前端培训课后时候要复习当天的内容,并且学会预习第二天要学习的课程,这样自己学习起来要轻松一些。在空闲的时候应该抽出时间来练习代码,都是十万代码十万年薪,所谓勤能补拙,基础是可以通过努力提升上来的。
在做前端,如果说自己不会h5,你很有可能被你的客户嘲笑,说什么最新技术都不会!h5其实没什么,只不过是html技术的进一步发展,主要是增加了一些新的元素而已。
<!doctype> 声明必须位于 HTML5 文档中的第一行,使用非常简单,写法:<!DOCTYPE html>
HTML5 中的一些有趣的新特性:
用于绘画的 canvas 元素
用于媒介回放的 video 和 audio 元素
对本地离线存储的更好的支持
新的特殊内容元素,比如 article、footer、header、nav、section
新的表单控件,比如 calendar、date、time、email、url、search
HTML5 添加了很多语义元素如下所示:
标签 | 描述 |
<article> | 定义页面独立的内容区域。 |
<aside> | 定义页面的侧边栏内容。 |
<bdi> | 允许您设置一段文本,使其脱离其父元素的文本方向设置。 |
<command> | 定义命令按钮,比如单选按钮、复选框或按钮 |
<details> | 用于描述文档或文档某个部分的细节 |
<dialog> | 定义对话框,比如提示框 |
<summary> | 标签包含 details 元素的标题 |
<figure> | 规定独立的流内容(图像、图表、照片、代码等等)。 |
<figcaption> | 定义 <figure> 元素的标题 |
<footer> | 定义 section 或 document 的页脚。 |
<header> | 定义了文档的头部区域 |
<mark> | 定义带有记号的文本。 |
<meter> | 定义度量衡。仅用于已知最大和最小值的度量。 |
<nav> | 定义导航链接的部分。 |
<progress> | 定义任何类型的任务的进度。 |
<ruby> | 定义 ruby 注释(中文注音或字符)。 |
<rt> | 定义字符(中文注音或字符)的解释或发音。 |
<rp> | 在 ruby 注释中使用,定义不支持 ruby 元素的浏览器所显示的内容。 |
<section> | 定义文档中的节(section、区段)。 |
<time> | 定义日期或时间。 |
<wbr> | 规定在文本中的何处适合添加换行符。 |
新表单元素, 新属性,新输入类型,自动验证。
以下的 HTML 4.01 元素在HTML5中已经被删除:
<acronym> 标记一个首字母缩写,h5用abbr代替
<applet> 用object代替
<basefont>规定页面上的默认字体颜色和字号:
<big>呈现大号字体效果。
<center> 这个...这么常用为什么去掉??
<dir> 签定义目录列表。类似于ul
<font> //这个也是比较常用的,但是取消了
<frame> 标签定义 frameset 中的一个特定的窗口(框架)
<frameset>定义一个框架集
<noframes> 元素可为那些不支持框架的浏览器显示文本。noframes 元素位于 frameset 元素内部。
<strike>标签可定义加删除线文本定义。
最新版本的 Safari、Chrome、Firefox 以及 Opera 支持某些 HTML5 特性。Internet Explorer 9 将支持某些 HTML5 特性。
IE9 以下版本浏览器兼容HTML5的方法,使用的静态资源的html5shiv包:(菜鸟教程)
<!--[if lt IE9]> <script src="http://cdn.static.runoob.com/libs/html5shiv/3.7/html5shiv.min.js"></script> <![endif]-->
载入后,初始化新标签的CSS:
/*html5*/article,aside,dialog,footer,header,section,footer,nav,figure,menu{display:block}
写法:<video src="movie.ogg" controls="controls" width="320" height="240">文字</video>
control 属性供添加播放、暂停和音量控件。
<video> 与 </video> 之间插入的内容是供不支持 video 元素的浏览器显示的:
注意:要确保适用于 Safari 浏览器,视频文件必须是 MPEG4 类型。所以video 元素允许多个 source 元素
所以写成:
<video width="320" height="240" controls="controls">
<source src="movie.ogg" type="video/ogg">
<source src="movie.mp4" type="video/mp4">
Your browser does not support the video tag.
</video>
<video> 标签的属性
autoplay:值为:autoplay,如果出现该属性,则视频在就绪后马上播放。
controls:值为:controls如果出现该属性,则向用户显示控件,比如播放按钮。height:pixels设置视频播放器的高度。
loop:值为:loop,如果出现该属性,则当媒介文件完成播放后再次开始播放。
preload:值为:preload,如果出现该属性,则视频在页面加载时进行加载,并预备播放。如果使用 "autoplay",则忽略该属性。
src:值为:url,要播放的视频的 URL。
width:值为:pixels,设置视频播放器的宽度。
同时还可以支持dom事件支持:play(),pause(),load(),canPlayType();
写法:<audio src="song.ogg" controls="controls">Your browser does not support the audio tag.</audio>
control 属性供添加播放、暂停和音量控件。
<audio> 与 </audio> 之间插入的内容是供不支持 audio 元素的浏览器显示
当前,audio 元素支持三种音频格式:mp3,mav和ogg,Safari 浏览器,音频文件必须是 MP3 或 Wav 类型。多个 source 元素支持。
<audio> 标签的属性
属性 | 值 | 描述 |
autoplay | autoplay | 如果出现该属性,则音频在就绪后马上播放。 |
controls | controls | 如果出现该属性,则向用户显示控件,比如播放按钮。 |
loop | loop | 如果出现该属性,则每当音频结束时重新开始播放。 |
preload | preload | 如果出现该属性,则音频在页面加载时进行加载,并预备播放。如果使用 "autoplay",则忽略该属性。 |
src | url | 要播放的音频的 URL。 |
拖放(Drag 和 drop)是 HTML5 标准的组成部分。
draggable="true" 设置元素为可拖放 <img draggable="true" />
ondragstart 和 setData()规定当元素被拖动时,会发生什么
ondragoverondragover 事件规定在何处放置被拖动的数据。
Ondrop:当放置被拖数据时,会发生 drop 事件。
(说实话真心不好理解,看一下w3c给的案例吧:)
<script type="text/javascript">
function allowDrop(ev)
{ev.preventDefault();}
function drag(ev)
{ev.dataTransfer.setData("Text",ev.target.id);//方法设置被拖数据的数据类型和值:
}
function drop(ev)
{
ev.preventDefault();//阻止对元素的默认处理方式,默认不接受拖拽元素的
var data=ev.dataTransfer.getData("Text");//获得被拖的数据
ev.target.appendChild(document.getElementById(data));//放置进去
}
</script>
<div id="div1" ondrop="drop(event)"ondragover="allowDrop(event)"></div>
<img id="drag1" src="img_logo.gif" draggable="true"ondragstart="drag(event)" width="336" height="69" />
这个拖拽看起来比较费劲,一般我们也用不到,大家可以先收藏起来,如果需要用到的时候,再返回来直接套用案例!
未完待续.....
看不懂没关系,多用几次,平时写网页的时候,可以慢慢的增加使用h5标签,因为除了ie8一下,大部分浏览器还是可以支持的!本教程是结合了w3c,菜鸟教程,慕课网的内容总结的,如果不妥多多指教!
知不觉,在千锋武汉HTML5培训学习已经三个月了。最近这段时间,我一直在学习原生js的相关知识,而这周,正好是第二阶段第二个月的考试周。为了过关,在这里进行知识点的回顾和总结。
首先,js的概念是:JavaScript 是一门跨平台、面向对象的动态的弱类型的轻量级解释型语言,是一种基于对象和事件驱动并具有相对安全性的客户端脚本语言。应用于 HTML 文档能够在网站上提供动态的交互能力,他不同于Java。
其次,js由三部分构成:BOM、DOM、ECMAScript核心。注意,script标签要放在body上面,需要在其中加上Window.onload。
最后,我们在最近这两周做了来到千锋武汉HTML5培训之后的第一个项目,在这次做项目中,暴露出很多不足,我总结在下面:
这次做项目,遇到很多以前没见过的bug,也通过和同学交流学习,了解到很多以前不知道的小技巧,这些是资料上学不来的,可以说是受益匪浅。在这里,我总结一些自己遇到的bug,解决的附上解决办法,没解决的,希望有看到的大佬可以帮忙解决。
1、一个很容易产生的bug,许多程序猿编写html和css时,都会遇到浮动和定位引起的高度塌陷的问题,我们都知道解决高度塌陷的方法,但是有时写的high了,会不看效果,一直编写,最后打开页面一看,一团乱麻,不仅不好找错误,而且看着乱七八糟,容易产生厌烦心理。这时候,就需要一个方便解决高度塌陷的办法。
解决方法:用我们以前学过的BFC的知识,在每个功能结构下面加一个div,class设置成clear,css样式就写成以前学习的万能清除法,这样就有效避免高度塌陷。
2、轮播图bug。这次项目中,主页的轮播和以前做过的不太一样,小图是三张一起运动,而每张鼠标时,有一个给其他可视兄弟元素添加遮罩的事件,这个用jquery可能很好写,但是我大部分用原生写的,再用jquery就会遇到很多问题,比如下面的span滑块设置了进度条功能,但是不生效,也不报错。
3、购物车总计有问题,点击减少购买数量按钮时,会出现input框中的数字为1,但是总计的价格依然可以减少。
在千锋武汉HTML5培训的三个月让我明白了,自己仍然是井底之蛙,前端的知识博大精深,我不懂的还有很多,希望能通过这次考试,让我可以继续学习新的知识,为自己的将来做准备,争取高薪!
*请认真填写需求信息,我们会在24小时内与您取得联系。