学习前端第三天

一、HTML5介绍
html5不仅仅只是作为标记语言的一个最新版本,更最要的是它制定了Web应用开发的一系列标准,成为第一个将Web作为应用开发平台的html语言。
html5定义了一系列新元素,如新语义标、只能表单、多媒体标签等,可以帮助开发者创建互联网应用,还提供了一系列JavaScript  api,如地理定位、重力感应、硬件访问等,可以在浏览器内实现原生应用,甚至结合Canvas我们可以开发网页版游戏,同事结合css3的过度、转换、动画等特性,可以极大的增强用户体验,提升开发功能的可应用性。
我们日常谈论的H5其实是一个泛称,它指的是由html5+css3+javascript等技术组合而成的一个应用开发平台


二、语法规范(版本申明,严格版和宽松版比较大的区别在于标签名的大小写和单标签最后的封闭反斜线)
代码检查网:http://validator.w3.org/
html:xs(严格版):<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
    <title>Document</title>
</head>
<body>
    
</body>
</html>

 

html:4s(严格版):<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="en">
<head>
    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
    <title>Document</title>
</head>
<body>
    
</body>
</html>

html:4t(宽松版):<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html lang="en">
<head>
    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
    <title>Document</title>
</head>
<body>
    
</body>
</html>

html:5(更简洁、更宽松):<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8" />
    <title>Document</title>
</head>
<body>
    
</body>
</html>

 

三、语义化标签
除了传统的h1-h6、p、ul等语义化标签,html5增加了大量的语义化标签,更有利于搜索引擎或辅助设备(盲人)来理解html页面内容,比如header、nav、section、article、aside、footer等,但主要不要全局到处使用这样的语义标签。
传统做法:  <body>
                <div class="header">头部</div>
                <div class="nav">导航栏</div>
                <div class="container">
                    <div class="article">主要内容</div>
                    <div class="aside">侧边栏</div>
                </div>
                <div class="footer">底部</div>
            </body>
html5做法:    <body>
                <header>头部</header>
                <nav>导航栏</nav>
                <section class="container">
                    <article>主要内容</article>
                    <aside>侧边栏</aside>
                </section>
                <footer>底部</footer>
            </body>


四、html5兼容处理(这里针对IE9以下)
在不支持HTML5新标签的浏览器里,会将这些新的标签解析成行内元素(inline)对待,所以我们只需要将其转换成块元素(block)即可使用。但是在IE9版本一下,并不能正常解析这些新标签,但是却可以识别通过document.createElement("tagName")创建的自定义标签,于是我们的解决方案就是讲HTML5的新标签全部通过document.createElement("tagName")来创建一遍,这里的创建只是需要让IE浏览器有解析这样的标签的能力,而不需要把创建的标签放进页面,等浏览器遇到这样的标签的时候能解析就可以了,所以IE低版本也能正常解析HTML5新标签了,但在实际开发中我们更多采用的是通过检测IE浏览器版本来加载第三方的一个JS库来解决兼容问题,这个库文件会自动通过document.createElement("tagName")创建所有HTML5的新标签。
<script src="自动创建HTML5新标签.js"></script>
但此时已经支持HTML5新标签的浏览器也会解析上面的js代码,和其他浏览器(比如谷歌浏览器)本身就支持HTML5新标签的浏览器重复了(所有这里就没必要了),这个时候可以引入一串其他浏览器识别为注释(但IE不会识别为注释)的代码就可以解决这个问题,从而做到完美的兼容。
&lt;  →  less than     →  小于等于
&gt;  →  great than    →  大于等于
e     →  epual         →  等于
<!--[if lte IE 8]>
    <script src="自动创建HTML5新标签.js"></script>
<![endif]-->
上面三行代码在非IE浏览器中解析为注释代码,但在IE浏览器中解析为:如果小于等于IE8,执行里面的script标签里的命令。它的快捷键是(cc:ie6+TAB),然后把6改为8就可以了。

 

五、微数据
微数据是在像span、div这样的标签内添加属性,让机器(比如搜索引擎)识别其含义,某些特定类型的信息。例如评论、任务信息或事件有相应的属性,用来描述其含义,可以理解成新语义标签的一种补充。
传统做法:  <div>
                <span>小明</span>
                <span>2020年7月12日  16:38</span>
                <span>评论内容</span>
            </div>
微数据做法:<div itemscope itemtype="http//www.*****.com.org/review">
                <span itemprop="reviewer">小明</span>
                <span itemprop="dtreviewed" datatime="2020-07-12T16:38:30.50+08:00">2020年7月12日  16:38</span>
                <span itemprop="description">评论内容</span>
            </div>


六、keygen标签
公钥和私钥(公钥和私钥是两个配对的,就像钥匙和锁,只有配对的钥匙才能打开对应的锁)
公钥:用户(不同用户拥有的公钥和私钥都不一样)在发送信息给服务器之前存在服务器的一把钥匙
私钥:把将要发送的信息+私钥发送给服务器,就好比用锁把信息锁住,从而达到加密作用,服务器拿到后需要用钥匙解密后才能得到用户发送的真正信息。


七、表单的form属性(我们填写的某个表单并不是一定放在form标签里面,可能由于网页布局的需求要将某一项表单放在form标签外面,此时可以通过form标签的id属性和放在form标签外面的某个表单的form属性进行连接,从而达到自由布局的效果)
<body>
    <form action="" id="myForm">
        <label for="name_label">姓名:<input type="text" name="name" id="name_label" /></label><br><br><br>
        <label for="age_label">年龄:<input type="number" name="age" id="age_label" /></label><br><br><br>
        <label><input type="submit" value="提交"></label>
    </form>
    <p>内容1</p>
    <p>内容2</p>
    <p>内容3</p>
    <p>内容4</p>
    <p>内容5</p>
    <label for="hobby_label">住址:<input type="text" name="hobby" form="myForm" id="hobby_label" /></label>
</body>


八、DOM(获取元素)
document.getElementByClassName('class'):通过类名获取元素,以伪数组形式存在
document.querySelector('select'):通过CSS选这器获取元素,符合匹配的第一个元素
document.querySelectorAll('select'):通过CSS选这器获取元素,以伪数组形式存在


九、类名操作
Node.classList.add('class'):添加class;
Node.classList.remove('class'):移除class;
Node.classList.toggle('class'):切换class,有则移除,无则添加;
Node.classList.contains('class'):检测是否存在class,Node指一个有效的DOM节点,是一个通称


十、自定义属性
自定义属性全部必须以data-开头,只要符合这种格式就称为自定义属性
通过Node.dataset.属性='属性值'设置自定义属性,Node指一个有效的DOM节点,是一个通称
<body>
    <nav>
        <a href="www.baidu.com" data-name="local" data-id="1">百度网</a>
    </nav>
</body>
<script>
    var nav = document.querySelector('nav a');
    //传统做法:
    nav.getAttribute('data-name'); //读取
    nav.setAttribute('data-demo','test'); //设置
    //优化做法:
    var customData = nav.dataset; //将获取的DOM节点对象话
    //读取、更改和设置就直接读取、更改和设置对象属性
    customData.demo = 123;  //更改
    customData.testDome = 'test-demo';  //添加,这里的testDemo是属性名,在网页里面浏览器会将大写字母转换为短横线+小写字母(data-test-demo="test-demo")
</script>


十一、匿名自执行函数(自己调用自己,切没有函数名,在开发中可以避免多人协作而产生重复命名而被覆盖)
<script>
    (function (key) {
        alert(key)
    })(3);
</script>

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 学习前端的第一个阶段是学习HTML,而复盘回顾则是对所学知识的总结和反思。那么,学习HTML的复盘回顾目标可以包括以下几个方面。 首先,复盘回顾的目标是巩固和加深对HTML的理解。在学习HTML的过程中,我们通过了解HTML的语法规则、标签和属性等,掌握了如何创建网页的结构和内容。通过复盘回顾,可以巩固这些知识点,提高对HTML的理解和应用能力。 其次,复盘回顾的目标是发现和纠正自己在学习HTML过程中存在的问题和不足之处。可能在学习HTML的过程中,我们遇到了某些困难,或者对某些知识点理解不够透彻,或者在实践中出现了一些错误。通过复盘回顾,可以仔细检查自己的学习过程,找出问题所在,从而有针对性地进行纠正和改进。 另外,复盘回顾的目标是提升自己的实践能力。学习HTML不仅是理论知识的学习,更重要的是能够将所学知识应用到实际项目中。通过复盘回顾,可以回顾自己在实践中的表现,发现自己在实践中的不足之处,并通过实践的经验不断提升自己的实践能力。 最后,复盘回顾的目标还可以包括对学习HTML的感悟和未来的规划。通过复盘回顾,可以总结自己在学习HTML过程中的体会和收获,为以后的学习和发展做好规划。同时,也可以思考并规划下一个阶段的学习目标和计划,为之后的学习打下坚实的基础。 ### 回答2: 学习前端第一个阶段的HTML项目的复盘回顾目标主要包括以下几个方面。 首先,目标是回顾并巩固HTML的基本知识和技能。在这个阶段,我学习HTML的基本标签、元素和属性的用法,以及如何创建网页的结构和布局。通过实际项目的练习,我巩固了这些知识,提高了对HTML的熟练程度。 其次,目标是学会使用常用的HTML标签和元素来构建网页内容。在项目中,我学习了如何使用标题、段落、链接、图片、表格等标签和元素来创建丰富多样的网页内容。我学会了使用这些标签和元素实现文本、图片和表格的显示和排版,同时也学会了如何添加链接和导航等功能。 另外,目标是了解并掌握HTML的语义化。在项目中,我学习了如何正确选择和使用HTML标签和元素,以达到更好的语义化效果。我了解到使用适当的标签能够提高网页的可读性和可访问性,对搜索引擎优化也有一定的帮助。 最后,目标是培养自我实践和解决问题的能力。在项目中,我遇到了一些技术问题和困难,但通过查找文档、搜索和尝试,我成功地解决了这些问题。这个过程提高了我自主学习和解决问题的能力,也为接下来的学习和项目打下了坚实的基础。 总的来说,学习前端第一个阶段的HTML项目的复盘回顾目标是回顾并巩固HTML的基本知识和技能,学会使用常用的HTML标签和元素,了解并掌握HTML的语义化,以及培养自我实践和解决问题的能力。通过这个项目的学习,我对HTML有了更深的理解和掌握,为接下来的学习打下了坚实的基础。 ### 回答3: 学习前端的第一个阶段,主要是学习HTML的基础知识和技能。在完成第一个HTML项目后,进行复盘回顾是为了总结学习经验并确定进一步的目标。 首先,复盘回顾的目标是回顾项目的整体结构和设计,并评估自己对HTML基础知识的掌握程度。通过回顾项目,可以了解自己在项目中的表现,发现并改正可能存在的问题,并提升项目的整体质量。同时,回顾还可以帮助我们深入了解HTML的各种标签和属性的使用方法,以及它们之间的关系和作用。 其次,复盘回顾的目标是梳理学习过程中遇到的困难和问题。学习HTML的过程中,可能会遇到一些难以理解或掌握的概念和技术,或者在项目中遇到了一些难以解决的问题。通过回顾这些困难和问题,可以找到学习的瓶颈和不足之处,然后有针对性地进行学习和提升。 最后,复盘回顾的目标是制定下一阶段学习的目标和计划。通过回顾项目,我们可以更好地了解自己在前端学习的过程中的进步和不足,并且确定下一个阶段需要学习和提升的重点。在制定学习目标和计划时,我们可以考虑自己的兴趣和职业发展方向,并选择相应的学习资源和实践项目。 总而言之,学习前端的第一个阶段完成一个HTML项目后,进行复盘回顾的目标是总结、评估和改进学习过程和成果,并制定下一阶段的学习目标和计划。通过不断的回顾和提升,我们可以逐渐成为一名优秀的前端开发者。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值