前端入门HTML5扩展知识(一)
一、 请描述一个网页从开始请求到最终显示的完整过程?
1. 在浏览器中输入网址;
2. 发送至 DNS 服务器并获得域名对应的 WEB 服务器的 IP 地址;
3. 与 WEB 服务器建立 TCP 连接;
4. 浏览器向 WEB 服务器的 IP 地址发送相应的 HTTP 请求;
5. WEB 服务器响应请求并返回指定 URL 的数据,或错误信息,如果设定重定向,则重定向到新的 URL 地址。
6. 浏览器下载数据后解析 HTML 源文件,解析的过程中实现对页面的排版,解析完成后在浏览器中显示基础页面。
7. 分析页面中的超链接并显示在当前页面,重复以上过程直至无超链接需要发送,完成全部显示。
二、浏览器加载渲染网页的过程及其了解意义
1. 浏览器下载的顺序是从上到下,渲染的顺序也是从上到下,下载和渲染是同时进行的;
2. 在下载过程中,如果遇到某一标签是嵌入文件,并且文件是具有语义解释性的(例如:JS脚本,CSS样式),那么下载过程会启用单独连接进行下载并进行解析,解析过程中,停止页面所有往下元素的下载;
3.样式表文件比较特殊,在其下载完成后,将和以前下载的所有样式表一起进行解析,解析完成后,将对此前所有元素(含以前已经渲染的)重新进行样式渲染,直到整个页面渲染结束。
了解意义:提高网页加载速度,方法如下:
(1)压缩javascript和CSS;
(2)合并外部javascript和CSS;
(3)减少DNS寻址时间;这条与将图片分散到不同的域名存储这条折中处理;
(4)使用缓存;
(5)尽量避免CSS表达式;
(6)为图片增加宽度和高度属性;
(7)将css放在网页头部,合理放置js的位置。
三、DOCTYPE 声明的作用是什么? 严格模式与混杂模式如何区分和触发,有何意义?
1、<!DOCTYPE> 声明告知浏览器的解析器,用什么文档类型规范来解析这个文档。
2、在严格模式(标准模式)中,浏览器根据规范呈现页面;在混杂模式中,页面以向后兼容的方式显示,以防止老站点无法工作。
3、如果 HTML 文档包含形式完整的 DOCTYPE,那么它一般以标准模式呈现。对于 HTML 4.01 文档,包含严格 DTD 的 DOCTYPE 常常导致页面以标准模式呈现。DOCTYPE 不存在或格式不正确会导致文档以混杂模式呈现。
意义:决定浏览器如何渲染页面。
四、如何理解 html 标签语义化?
1、语义化的主要目的在于,直观的认识标签(markup)和属性(attribute)的用途和作用。可以概括为:用正确的标签做正确的事情。
2、html 语义化可以让页面的内容结构化,便于浏览器解析,便于搜索引擎解析,并提高代码的可维护度和可重用性。
五、锚点的作用是什么?如何创建锚点?
锚点是文档中某行的一个记号,类似于书签,用于链接到文档中的某个位置。当定义了锚点后,我们可以创建直接跳至该锚点(比如页面中某个小节)的链接,这样使用者就无需
不停地滚动页面来寻找他们需要的信息了。
在使用 <a> 元素创建锚点时,需要使用 name 属性为其命名,代码如下所示:
<a name=”anchorname1”>锚点一</a>
然后就可以创建链接,直接跳转到锚点,代码如下所示:
<a href=”#anchorname1”>回到锚点一</a>
六、使用 <label> 元素显示文本与使用其他文本标记显示文本有什么不同?
<label> 元素的直观效果是直接显示标记之间的文本,而且不会为文本呈现任何特殊效果。但是,它和其他文本标记所不同的是,它为鼠标用户改进了用户体验性。
这是因为, <label> 元素可以附带一个 for 属性,只要将该属性的值设置为表单中任何一个控件的 id 属性的值,则当用户点击该标签(文本)时,就会触发此控件。
七、列举常用的结构标记,并描述其作用。
结构标记专门用于标识页面的不同结构,相对于使用 <div> 元素而言,可以实现语义化的标签。
常用的结构标记有:
<header> 元素:用于定义文档的页眉;
<nav> 元素:用于定义页面的导航链接部分;
<section> 元素:用于定义文档中的节,表示文档中的一个具体的组成部分;
<article> 元素:常用于定义独立于文档的其他部分的内容;
<footer> 元素:常用于定义某区域的脚注信息;
<aside> 元素:常用于定义页面的一些额外组成部分,如广告栏、侧边栏和相关引用信息等。
八、超级链接有哪些常见的表现形式?
<a> 元素用于创建超级链接,常见的表现形式有:
1、普通超级链接,语法为: <a href="" target="">文本</a>
2、下载链接,即目标文档为下载资源,语法如: <a href="DAY02.zip">下载</a>
3、电子邮件链接,用于链接到 email,语法如: <a href="mailto:tarena@tarena.com.cn">联系我们</a>
4、空链接,用于返回页面顶部,语法如: <a href="#">...</a>
5、链接到 JavaScript,以实现特定的代码功能,语法如: <a href="javascript : …">JS 功能</a>
九、简要描述行内元素和块级元素的区别。
1、块级元素的前后都会自动换行,如同存在换行符一样。默认情况下,块级元素会独占一行。例如,<p>、<hn>、<div> 都是块级元素。在显示这些元素中间的文本时,都将从新行中开始显示,其后的内容也将在新行中显示。
2、行内元素可以和其他行内元素位于同一行,在浏览器中显示时不会换行。例如,<a>、<span> 等。对于行内元素,不能设置其高度和宽度。
3、还有一种元素,为行内块级元素,比如 <img> 、<input> 元素等。这些元素可以和其他行内元素位于同一行,同时可以设置其高度和宽度。
十、表单向服务器提交数据有几种方式?这些方式有什么区别?
1、将表单数据发送给服务器的常用方式有两种:Get 和 Post。
2、两种方式的区别主要在于发送数据方式不同。 使用 Get 方式向服务器发送表单数据时,表单数据将附加在POST 方法发送数据时,数据会放置在主体中发送。 URL 属性的末端;采用POST 方法发送数据时,数据会放置在主体中发送。同时,POST方法安全性高于Get方式。
3、浏览器发送给服务器的 HTTP 请求分为请求头(header)和请求主体(body)两部分。其中,必须包含头部分,用于指定发送请求的方式、目的地以及其他关键信息;而主体是可选的。在头数据和主体数据之间用一个空白行来隔开。
比如,需要发送请求到页面 GetStockPrice.php,且需要附带数据 Symbol=MSFT。
那么如果使用 Get 方式发送数据,则简化后的请求数据内容如下所示:
GET /Trading/GetStockPrice.aspx?Symbol=MSFT HTTP/1.1 Host: localhost
如果使用 Post 方式发送数据,则简化后的请求数据内容如下所示:
POST /Trading/GetStockPrice.aspx HTTP/1.1 Host: localhost Content-Type: application/x-www-form-urlencoded Content-Length: 11 Symbol=MSFT
2016-04-23 15:06:29
前端入门HTML5扩展知识(一)的更多相关文章
- Web前端入门必学知识
入门主要有三个部分 一.html+css部分: 1.前端的入门门槛极低,体现在HTML和CSS上运行环境就是浏览器,html+css这部分特别简单,网上搜资料,书籍视频非常多.css中盒 ...
- 结合个人经历总结的前端入门方法 (转自https://github.com/qiu-deqing/FE-learning)
结合个人经历总结的前端入门方法 (https://github.com/qiu-deqing/FE-learning),里面有很详细的介绍. 之前一直想学习前端的,都不知道怎么下手都一年了啥也没学到, ...
- github上最全的资源教程-前端涉及的所有知识体系
前面分享了前端入门资源汇总,今天分享下前端所有的知识体系. 个人站长对个人综合素质要求还是比较高的,要想打造多拉斯自媒体网站,不花点心血是很难成功的,学习前端是必不可少的一个环节, 当然你不一定要成为 ...
- github上最全的资源教程-前端涉及的所有知识体系【转】
github上最全的资源教程-前端涉及的所有知识体系[转自:蓝猫的博客] 综合类 综合类 地址 前端知识体系 http://www.cnblogs.com/sb19871023/p/3894452.h ...
- 前端入门3-CSS基础
本篇文章已授权微信公众号 dasu_Android(大苏)独家发布 声明 本系列文章内容全部梳理自以下四个来源: <HTML5权威指南> <JavaScript权威指南> MD ...
- Web前端,HTML5开发,前端资源,前端网址,前端博客,前端框架整理 - 转改
Web前端/H5开发,前端资源,前端网址,前端博客,前端框架整理 综合类 前端知识体系 前端知识结构 Web前端开发大系概览 Web前端开发大系概览-中文版 Web Front-end Stack v ...
- Linux快速入门04-扩展知识
这部分是快速学习的最后一部分知识,其中最重要的内容就是源码的打包和软件的安装的学习,由于个人的Linux学习目的就是自己能在阿里云Ubuntu上搭建一个简单的nodejs发布环境. Linux系列文章 ...
- web前端入门:一小时学会写页面
一小时学会写页面 作为一个懒癌晚期患者,总是习惯找各种简单的解决问题的方法,也习惯性把问题简单化,所以今天想分享给大家简单的web前端入门方法.既然题目已经定了一个小时那么废话就不多说了,计时开始 1 ...
- Sublime Text 前端开发常用扩展插件推荐
Sublime Text 前端开发常用扩展插件推荐 Sublime Text Sublime Text 是程序员们公认的编码神奇,拥有漂亮的用户界面和强大的功能 更重要的是,Sublime Text ...
随机推荐
- poj 3233 Matrix Power Series
A为一个n*n的矩阵,求A+A^2+A^3+...+A^n Sk = A + A2 + A3 + - + Ak =(1+Ak/2)*(A + A2 + A3 + - + Ak/2 )+{ ...
- windows Oracle DBases auto backUp
- sysbench的安装与使用
sysbench是一款开源的多线程性能测试工具,可以执行CPU/内存/线程/IO/数据库等方面的性能测试.数据库目前支持MySQL/Oracle/PostgreSQL 安装过程(rhel5.8+mys ...
- Windows下安装Python3.4.2
一.Windows下安装Python3.4.2 1.下载Windows下的Python3.4.2.exe 2.指定一个目录安装,然后下一步 3.配置环境变量包括Python.exe的文件.目录如下图所 ...
- ubuntu高版本环境变量问题
在ubuntu较高的版本(博主使用的是14.10)下,可以在/etc/environment中配置环境变量,这个环境变量可能会覆盖用户~/.bashrc中配置的环境变量,这个应该引起注意.
- C#委托 Lamda表达式
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- 用于Lucene的各中文分词比较
对几种中文分析器,从分词准确性和效率两方面进行比较.分析器依次为:StandardAnalyzer.ChineseAnalyzer.CJKAnalyzer.IK_CAnalyzer.MIK_CAnal ...
- 安卓模拟器创建和使用SD卡的方法
安卓模拟器创建和使用SD卡的方法: 创建一个SD卡镜像文件 打开cmd,进入Android SDK安装路径下的tools目录下,输入如下命令:mksdcard 1024M sdcard.img 该命令 ...
- JavaScript经典代码总结
1. oncontextmenu="window.event.returnvalue=false" 将彻底屏蔽鼠标右键<table border oncontextmenu= ...
- 关于ECharts Java类库的一个jquery插件
在项目中开发图表功能时用到了Echars和一个关于Echars的java类库(http://git.oschina.net/free/ECharts).这个类库主要目的是方便在Java中构造EChar ...