HTML初识

感觉今天有点慌乱。

1. HTML、XML、XHTML有什么区别?

distingush

下面从几个方面来比较一下。


  • HTML:HyperText Markup Language

扩展性:不支持扩展。

侧重点:侧重于如何表现信息

语法要求:html语言语法要求不严格,但由于先实践后制定标准,支持的浏览器较多,不能一下推翻重来。

可读性:html可读性较差,不利于维护。

数据和显示关系:内容描述和显示整合唯一,网络数据的描述和转换方面不如XML


  • XML:Extensible Markup Language

扩展性:支持扩展,可定义新的语言。

侧重点:如何结构化的描述信息。

语法要求:较为严格,严格要求嵌套、配对、遵循DTD树形结构
可读性:xml可读性好,利于维护。
数据和显示关系:内容描述和显示分离。常用于网络数据的描述和转换


** 既然XML这么好,为什么还在用HTML? **

那是因为HTML先使用再制定的标准,然后废除HTML的代价是很多网站都要重做。


  • XHTML:
    基于XML的标记语言。

本质上是一个过渡品,实现HTML向XML过渡。它结合部分XML的强大功能和大多数HTML简单特性,语言要求规范严格,算是更严谨更纯净的HTML,大多数浏览器也支持。


参考:http://wenda.so.com/q/1398092980061230?src=110

2. 怎样理解语义化

语义化在我的理解就是用正确的标签做正确的事情,即根据内容结构选择合适的标签。

暂时想到的:

  1. 对于文章标题可以用专门的标签来写,当然你也可以用其他标签例如等标签来实现。
  2. 邮箱地址等。

语义化好处:

  • 便于搜索引擎及爬虫工具更容易读懂页面代码。爬虫依赖的是标签的权重值,不会关注页面本身。
  • 便于屏幕阅读器读懂,就类似于读句子和读单词的区别。
  • 便于开发者开发和维护,阅读者阅读源代码。

以后写代码要注意的事
能不写

就不写,因为它也是无意义的。

对于id等其他类命名的时候多用合理的语言解释。这应该也是语义化吧?

参考:http://www.jianshu.com/p/55a7e598957f

3.怎样理解样式分离

html负责结构,CSS负责样式,JS负责行为

样式分离我的低级理解就是,在写HTML结构的时候,不要加样式,样式通过外部式样式link到网页结构中去,更要避免内联式CSS。类似于设计框架结构的房屋的时候,先做梁、柱,基础。其他的墙怎么砌,怎么装修完全等框架搭建好再做。

分离的好处

结构清晰,便于开发和维护。如果整体布局不变,只替换CSS效果就可以实现,节省很多时间。

4.常见的标签有哪些?

标签定义与文章想关联的名称/值

基本用法:

常见的标签:

  • //字符编码为UTF-8.
  • //告知浏览器用新版本的IE和CHROME来渲染页面
  • //经常用在移动端开发要用的,具体是告诉浏览器,窗口宽度=浏览器宽度,初始缩放比例是100%,禁止用户放大。

5.文档声明的作用?严格模式和混杂模式指的是什么?的作用。

  • 文档声明的作用?

    文档声明的作用是让浏览器知道这是一个什么样的文档类型,从而能够切换到合适的显示模式来正确显示文档内容。

  • 严格模式和混杂模式指的是什么?

    • 严格模式:
      浏览器会严格按照HTML标准和CSS标准解析和渲染。
    • 混杂模式:
      浏览器模拟Navigator4和IE5的非标准行为来解析,渲染页面为了兼容在W3C标准出现之前存在的不标准页面。
  • `的作用
    让浏览器进入标准模式,告诉浏览器这是HTML5的标准文件。

6. 浏览器乱码的原因是什么

首先,我们先大概理解我们当我们写一个HTML时和编码有关的内容。

  1. 写HTML文档时,首先文档声明,接着标签一般就要声明用的是什么字符集编码
  2. 保存时可以选择编辑的字符集编码。
  3. 浏览器解析时也会用到字符集编码。

那么出现问题的可能就有如下几种情况

  1. 保存使用的字符集编码和标签的字符集编码有冲突。
  2. 浏览器解码出现问题。浏览器解码优先级如下:
    2.1 如果用户指定了编码,则按用户指定的编码进行解码。
    2.2 先对文件进行预解析,如果文件存在BOM(BYTE ORDER MARK),则按BOM确定的编码解码。
    2.3 如果HTTP响应头中存在编码信息,则按响应头中的编码进行解码。
    2.4 先按浏览器的编码选择算法选择一个编码进行预解析,如果解析处标签存在字符集设置,则按标签的字符集进行解码。
    2.5 按浏览器的默认编码。

这就让我突然想起为什么编写HTML文件要把尽可能早的地方,因为浏览器缓存的字节流就可以让它来确定用什么来解码

7. 常见的浏览器有那些,用什么内核?

  1. Trident(MSHTML)
    微软开发,只能用于Windows平台

曾经几乎与W3C脱节,尽管已经做了变动,但是仍然落后与 Gecko,WebCore,KHTMLI及Presto。

(MAXTHON/软媒的闪游浏览器/腾讯的TT/GreenBrowser)

  1. Gecko
    代码完全公开,跨多平台

(火狐/网景6-9/等)

  1. Presto
    渲染速度优化达到了极致,浏览速度最快,执行JS速度很快,但是兼容性不好。

    (Opera)

  2. WebKit

开放源代码。

(Safari/chrome)

8. 常见标签有那些?

  • //用于文档的头部,描述文档的属性和信息,通常不可见。
  • //网页标题
  • //定义与文章相关的名称和值
  • //写样式
  • //内容标签,构成网页的“身体”。
  • //文章标题
  • //段落
  • //强调
  • //强调
  • //盒子标签,常用来布局
    //无序列表
      1. //有序列表
      2. //插入图片
      3. //表单,与用户交互时常用到。
      4. //插入代码用的

      5. //换行,
        分隔线
      6. //表格

        暂时先写这么多吧!

        你可能感兴趣的:(HTML初识)