zoukankan      html  css  js  c++  java
  • 说说html 的<!DOCTYPE>声明&标准模式与兼容模式

    我们都知道<!DOCTYPE>声明位于文档的最前面,处于<html>标签之前。

    <!DOCTYPE>声明不是html标签,它的作用:告知web浏览界面应该使用哪个html版本

    例如:

    <!DOCTYPE html>  则是告诉浏览器应使用html5。

    建议:总是给html文件加上<!DOCTYPE>声明,确保浏览器能预先知道文档类型。

    在html 4.0.1中,<!DOCTYPE>声明需引用DTD(文档类型说明),因为html 4.0.1是基于SGML(Standard Generalized Markup Language,标准通用标记语言)。DTD指定了标记语言的规则,确保了浏览器能正确的渲染内容。

    而html5不是基于SGML,不用引入DTD

    下面是具体的html版本需要的<!DOCTYPE>声明:

    html5:(!tab或者html:5)

    <!DOCTYPE html>
    

    html 4.0.1有 strict,transitional,frameset三种格式:

    html 4.0.1 strict:(html:4s tab)

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
    

    html 4.0.1 transitional:(html:4t tab) 

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    

    html 4.0.1 frameset:

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
    

    XHTML 1.0 Strict:(html:xs tab)

    <!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">
    

    XHTML 1.0 Transitional:(html:xt tab)

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
    

    XHTML 1.0 Frameset

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
    

    XHTML 1.1:(html:xxs)

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
    

          ps:以上括号中,均为sublime text3下的快捷键生成!

    更多关于sublime text3快捷键操作点击此处!

    标准模式与兼容模式区别:

    当doctype申明缺失或者格式不正确时,文档会以兼容模式呈现。

    标准模式:排版以及js运行模式都是以浏览器支持的最高标准运行;

    兼容模式:页面以宽松的向后兼容方式显示,模拟老浏览器的行为防止站点无法正常工作。

     

      

  • 相关阅读:
    ARM六种寻址方式的汇编实现
    生产者消费者
    哲学家问题
    linux进程的问题
    linux信号量使用
    linux进程创建
    Ubuntu下编写C语言程序
    Android使用图表库简单教程
    不需要SDK调用图灵机器人的方法
    robotframework接口测试实例
  • 原文地址:https://www.cnblogs.com/why-not-try/p/7845873.html
Copyright © 2011-2022 走看看