web前端总结HTML篇

HTML:

1. 什么是语义化的HTML?有何意义?为什么要做到语义化?

<基本上都是围绕着几个主要的标签,像标题(H1~H6)、列表(li)、强调(strong em)等等>

根据内容的结构化(内容语义化),选择合适的标签(代码语义化),说白了写语义化的 HTML 结构其实很简单,首先掌握 HTML 中各个标签的语义,在看到内容的时候想想用什么标签能更好的描述它,是什么就用什么标签。

这样为了方便开发者阅读和写出更优雅的代码,还能让浏览器的爬虫和机器很好地解析。
为什么要语义化?

  • 为了在没有CSS的情况下,页面也能呈现出很好地内容结构、代码结构:为了裸奔时好看;
  • 用户体验:例如title、alt用于解释名词或解释图片信息、label标签的活用;
  • 有利于SEO:和搜索引擎建立良好沟通,有助于爬虫抓取更多的有效信息:爬虫依赖于标签来确定上下文和各个关键字的权重;
  • 方便其他设备解析(如屏幕阅读器、盲人阅读器、移动设备)以意义的方式来渲染网页;
  • 便于团队开发和维护,语义化更具可读性,是下一步吧网页的重要动向,遵循W3C标准的团队都遵循这个标准,可以减少差异化。

2. 行内元素和块元素分别有哪些?

块级元素:块级大多为结构性标记

  1.总是从新的一行开始

  2.高度、宽度都是可控的

  3.宽度没有设置时,默认为100%

  4.块级元素中可以包含块级元素和行内元素

  <address>...</adderss>   地址    <center>...</center>  文字 <h1>...</h1>  标题一~六级   <hr>  水平分割线 <p>...</p>  段落

  <pre>...</pre>  预格式化   <blockquote>...</blockquote>  段落缩进   前后5个字符   <marquee>...</marquee>  滚动文本

  <ul>...</ul>  无序列表  <ol>...</ol>  有序列表  <dl>...</dl>  定义列表   <table>...</table>  表格  <form>...</form>  表单

 <div>...</div>

行内元素:行内大多为描述性标记

  1.和其他元素都在一行

  2.高度、宽度以及内边距都是不可控的

  3.宽高就是内容的高度,不可以改变

  4.行内元素只能行内元素,不能包含块级元素

  <span>...</span>  <a>...</a>  链接  <br>  换行  <b>...</b>  加粗  <strong>...</strong>  加粗   <img >  图片

  <sup>...</sup>  上标  <sub>...</sub>  下标  <i>...</i>  斜体  <em>...</em>  斜体  <del>...</del>  删除线  <u>...</u>  下划线

  <input>...</input>  文本框  <textarea>...</textarea>  多行文本   <select>...</select>  下拉列表

3. 严格模式与混杂模式的区分?如何触发这两种模式

在前端开发的调试中,有可能会要求知道严格模式和混杂模式,而要知道严格模式和混杂模式,首先要知道DOCTYPE。

  • DOCTYPE的定义

DOCTYPE(是Document Type文档类型的简写)是一组机器可读的规则,它们指示(X)HTML文档中允许有什么,不允许有什么,DOCTYPE正是用来告诉浏览器使用哪种DTD,一般放在(X)HTML文档开头声明)用以告诉其他人这个文档的类型风格。

  • 严格模式

严格模式是浏览器根据web标准去解析页面,是一种要求严格的DTD,不允许使用任何表现层的语法,触发严格模式很简单,就是正常的建立网页,声明正确的DTD,便是严格模式

  • 混杂模式

混杂模式则是一种向后兼容的解析方法,说的透明点就是可以实现IE5.5以下版本浏览器的渲染模式。混杂模式的触发可以通过在HTML文档开始不声明DTD,或者在DOCTYPE前加入XML声明l<?xml version=”1.0〃 encoding=”utf-8〃?>来实现

4.HTML和XHTML的区别

1.HTML标签不区分大小写XHTML所有标签都必须小写。

2.XHTML标签必须成双成对.

3.html对标签顺序要求不严格,XHTML标签顺序必须正确。

总而言之xhtml比html更加规范。xhtml与html严格意义区别并不大,xhtml1.0的开发实际上是作为html4.01与xml2.0的一个过渡的网页版本而存在的,因为xml的解析语法过于苛刻,简单一句话就是:只要网页中出现一处错误,则浏览器停止解析,而HTML语言不会出现这种情况。

5.HTML5以什么标签开头

<!DOCTYPE html> 声明我们使用的标准HTML,浏览会最大程序地使用该信息

6.DIV与SPAN的区别

div占用的位置是一行,是块级标签
span占用的是内容有多宽就占用多宽的空间距离,是行内标签

7.IMG的alt和title有啥区别?各自作用?

alt是在图片不能正常加载时候显示的提示语,title属性是鼠标划上去显示的内容

8.HTML5的离线储存

不需要每次都向服务器发送请求。这时应运而生的离线缓存就显得尤为突出。通过把需要离线缓存储的文件列在一个manifest配置文件中。这样在离线情况下也可以使用,站点离线存储的容量限制是5M

manifest 文件是简单的文本文件,它告知浏览器被缓存的内容(以及不缓存的内容)。

manifest 文件可分为三个部分:

  • CACHE MANIFEST - 在此标题下列出的文件将在首次下载后进行缓存
  • NETWORK - 在此标题下列出的文件需要与服务器的连接,且不会被缓存
  • FALLBACK - 在此标题下列出的文件规定当页面无法访问时的回退页面(比如 404 页面)

在线的情况下,用户代理每次访问页面,都会去读一次manifest.如果发现其改变, 则重新加载全部清单中的资源

应用程序缓存为应用带来三个优势:

1.离线浏览--用户可在离线时使用它们。

2.速度--已经缓存的资源加载得更快。

3.减少服务器负载--浏览器将只从服务器下载更改过的资源。


9.iframe有哪些缺点?

1. iframe会阻塞主页面的onload事件

2.搜索引擎的检索程序无法解读这种页面,不利于seo

3.会影响页面的并行加载   

iframe和主页面共享连接池,而浏览器对相同域的连接有限制,所以会影响页面的并行加载

使用iframe之前需要考虑这两个缺点,如果需要使用iframe,最好是通过JavaScript动态给iframe添加src属性值,这样可以绕开以上两个问题

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值