zoukankan      html  css  js  c++  java
  • XML、HTML、XHTML的关系

    标记语言

    XML、HTML、XHTML这三者都有ML。ML(Markup Language)标记语言在维基百科中的解释是:

    一种将文本以及文本相关的信息结合起来,展示出关于文档结构和数据处理细节的计算机文字编码。与文本相关的其他信息(包括文本的结构和表示信息等)与原本的文本结合在一起,但是使用标记(markup)进行标识。
    用html举个例子:

    <h1>我爱我家</h1>
    

    上面的例子中的”我爱我家“就是文本,与文本相关的其他信息”这段文本是个标题“就用标记h1进行标识。

    HTML

    HTML(Hyper Text Markup Language),即超文本标记语言。

    • HTML的标签是固定的,只能用已经规定好的标签来对文本进行特定的描述
    • HTML被设计用来显示数据。

    XML

    XML(Extensible Markup Language),即可扩展标记语言。可扩展体现在XML的标签不是固定的,需要自己定义。
    比如描述一张桌子的相关信息:

    <table>
        <name>African Coffee Table</name>
        <width>80</width>
        <length>120</length>
    </table>
    

    我们可以根据自己的需要,定义自己的标签。
    命名空间
    为了防止大家定义的标签名重复(比如在A的命名里,table表示桌子;而在B的命名里,table表示表格),XML采用命名空间来避免命名冲突。为了区分世界各地的命名,需要一个独一无二的标识来区分不同的文件的命名,而域名无疑是一个完美的选择。
    为标签添加一个xmlns属性

    <table xmlns="http://www.baidu.com">
        <name>African Coffee Table</name>
        <width>80</width>
        <length>120</length>
    </table>
    

    这样不同域名下的命名就不会冲突了。

    XML与HTML的区别

    XML和HTML都是标记语言,但两者可以说完全不一样

    • HTML的标签固定的,XML的标签是自定义的
    • XML旨在传输和存储数据;HTML旨在显示数据

    XML与json

    我目前的理解是,XML与json的设计初衷都是,实现一种通用且可读性高的数据格式。这两个目的XML和json都做到了,但是XML更像是先行者,在微软的推动下,开启了通用格式思想的大门,但相比json,还是有一些不足:

    • XML标签冗余高,数据体积大,传输速度慢
    • XML解析较难,json解析难度几乎为0

    XHTML

    简单来说,XHTML就是更严格更纯净的HTML版本。
    与HTML的区别:

    • 文档结构
      XHTML DOCTYPE 是强制性的
      <html> 中的 XML namespace 属性是强制性的
      <html><head><title> 以及 <body> 也是强制性的
    • 元素语法
      XHTML 元素必须正确嵌套
      XHTML 元素必须始终关闭
      XHTML 元素必须小写
      XHTML 文档必须有一个根元素
    • 属性语法
      XHTML 属性必须使用小写
      XHTML 属性值必须用引号包围
      XHTML 属性最小化也是禁止的
  • 相关阅读:
    解决Hexo博客模板hexo-theme-next的翻页按钮不正常显示问题
    通过filebeat、logstash、rsyslog采集nginx日志的几种方式
    浅析SIEM、态势感知平台、安全运营中心
    解决layui表单ajax提交回调函数不起作用问题的两种方式
    LVM简介及CentOS7 LVM操作实战
    JAVA设计模式总结之23种设计模式
    JAVA设计模式总结之六大设计原则
    SpringMVC学习笔记_02
    SpringMVC学习笔记_01
    Mybatis 学习总结
  • 原文地址:https://www.cnblogs.com/youhong/p/10901687.html
Copyright © 2011-2022 走看看