html <!-- --> 规范

本文介绍了HTML5文档结构的最佳实践,包括文档类型声明、语言属性、兼容模式、字符编码等关键元素,并提供了针对不同浏览器的支持方案。

暂时先这么多,后面遇到再补充

<!DOCTYPE html>
<html lang="zh-CN">
  <head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=Edge">
    <title>Page title</title>

    <link href="//cdn.bootcss.com/normalize/5.0.0/normalize.css" rel="stylesheet">
    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
    <!--[if lt IE 9]>
      <script src="http://cdn.bootcss.com/html5shiv/3.7.3/html5shiv.min.js"></script>
      <script src="http://cdn.bootcss.com/respond.js/1.4.2/respond.min.js"></script>
    <![endif]-->
    <noscript>
        <style>
            body * { display:none; }
            .noscript { display:block; width: 50%; height: 20%; text-align: center; }
            .absolute-center {
              margin: auto;
              position: absolute;
              top: 0; left: 0; bottom: 0; right: 0;
            }
        </style> 
    </noscript>
  </head>
  <body>
    <noscript class="absolute-center noscript">你的浏览器不支持Javascript或关闭了Javascript,暂时无法浏览</noscript>
  </body>
</html>

h5

<!DOCTYPE html>
<html lang="zh-CN">
  <head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=Edge">
    <meta content="initial-scale=1.0,user-scalable=no,maximum-scale=1,width=device-width" name="viewport" />
    <meta content="telephone=no" name="format-detection" />
    <script type="text/javascript">
        var debounce = function(idle, action){
          var last
          return function(){
            var ctx = this, args = arguments
            clearTimeout(last)
            last = setTimeout(function(){
                action.apply(ctx, args)
            }, idle)
          }
        };

        (function() {
          // deicePixelRatio :设备像素
          var scale = 1 / devicePixelRatio;
          //设置meta 压缩界面 模拟设备的高分辨率
            document.querySelector('meta[name="viewport"]').setAttribute('content', 'initial-scale=' + scale + ', maximum-scale=' + scale + ', minimum-scale=' + scale + ', user-scalable=no');
          //debounce 为节流函数,自己实现。或者引入underscoure即可。
          var reSize = debounce(function() {
              var deviceWidth = document.documentElement.clientWidth > 1300 ? 1300 : document.documentElement.clientWidth;
              //按照640像素下字体为100px的标准来,得到一个字体缩放比例值 6.4
              document.documentElement.style.fontSize = (deviceWidth / 6.4) + 'px';
          }, 50);
      window.onresize = reSize;
    })();
  </script>
    <title>Page title</title>
    <link href="//cdn.bootcss.com/normalize/5.0.0/normalize.css" rel="stylesheet">
    <noscript>
        <style>
            body * { display:none; }
            .noscript { display:block; width: 50%; height: 20%; text-align: center; }
            .absolute-center {
              margin: auto;
              position: absolute;
              top: 0; left: 0; bottom: 0; right: 0;
            }
        </style> 
    </noscript>
  </head>
  <body>
    <noscript class="absolute-center noscript">你的浏览器不支持Javascript或关闭了Javascript,暂时无法浏览</noscript>
  </body>
</html>

1 . HTML5 doctype
为每个 HTML 页面的第一行添加标准模式(standard mode)的声明,这样能够确保在每个浏览器中拥有一致的展现。

<!DOCTYPE html>
<html>
  <head>
  </head>
</html>

2 . lang=”zh-CN”
强烈建议为 html 根元素指定 lang 属性,从而为文档设置正确的语言。这将有助于语音合成工具确定其所应该采用的发音,有助于翻译工具确定其翻译时所应遵守的规则等等。

<html lang="zh-CN">
  <!-- ... -->
</html>

3 . IE 兼容模式
IE 支持通过特定的 标签来确定绘制当前页面所应该采用的 IE 版本。除非有强烈的特殊需求,否则最好是设置为 edge mode,从而通知 IE 采用其所支持的最新的模式。

<meta http-equiv="X-UA-Compatible" content="IE=Edge">

4 . 字符编码
通过明确声明字符编码,能够确保浏览器快速并容易的判断页面内容的渲染方式。这样做的好处是,可以避免在 HTML 中使用字符实体标记(character entity),从而全部与文档编码一致(一般采用 UTF-8 编码)。

<head>
  <meta charset="UTF-8">
</head>

5 . <noscript>元素
当浏览器不支持Javascript或者Javascript被禁用时,包含在中的元素才会显示出来,否则得话尽管页面中包含,但其中的内容并不会被显示。

<html> 
<head> 
<title></tilte>
<noscript>
    <!-- * display:none; -->
    <link href="aHaHaHaHaHaHaEvilLaugh.css" rel="stylesheet">
    or
    <style>
        * display:none;
    </style>
</noscript>
<script src="example.js" defer="defer" />
</head>
<body> 
<noscript> 
<p>本页面需要浏览器支持(启用)Javascript。</p> 
</noscript> 
</body> 
</html> 

6 . 注释
无法识别<script>标签的浏览器会把标签的内容显示到页面上。
为了避免浏览器这样做,您应当在注释标签中隐藏脚本。老式的(无法识别 <script> 标签的)浏览器会忽略注释,这样就不会把标签的内容写到页面上,而新式的浏览器则懂得执行这些脚本,即使它们被包围在注释标签中!

<script>
<!--
function displayMsg()
{
alert("Hello World!")
}
//-->
</script> 

7 . IE9一下,支持html5和media queries

<!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
    <!--[if lt IE 9]>
      <script src="http://cdn.bootcss.com/html5shiv/3.7.3/html5shiv.min.js"></script>
      <script src="http://cdn.bootcss.com/respond.js/1.4.2/respond.min.js"></script>
    <![endif]-->

8 . CDATA

在XHTML(XML)中,CData片段是文档中的一个特殊区域,这个区域中可以包含不需要解析的任意格式的文本内容。因此,在CData片段中就可以使用任意字符,而且不会导致语法错误。

<script> 
// <![CDATA[ 
function compare(a,b){ 
if(a<b){ 
alert(“A is less than B”) ; 
}else if(a>b){ 
alert(“A is greater than B”) ; 
}else { 
alert(“A is equal to B”) ; 
} 
} 
//]]> 
</script> 

9 . 重置浏览器的默认样式

<link href="//cdn.bootcss.com/normalize/5.0.0/normalize.css" rel="stylesheet">
  1. 5.

应用的文章连接

http://www.jb51.net/article/35462.htm
http://codeguide.bootcss.com/

<think>好的,用户想了解HTML或XML中的注释符号<!-->的用法和功能。首先,我需要确认正确的注释符号是什么。HTML和XML的注释都是使用<!--开头和-->结尾,中间是注释内容。用户提到的<!-->可能是个笔误,或者对正确语法的误解。 接下来,我要检查提供的引用内容。引用[1]提到XML注重数据存储,文档声明等,但没有直接涉及注释。引用[2]、[3]、[4]讨论了JSP中的脚本元素和注释,比如<%= %>和<%-- --%>,这可能让用户混淆不同技术的注释方式。引用[5]关于WebP图片的支持,可能不相关。 需要明确区分HTML/XML注释与JSP注释。用户可能看到类似<!-- -->的结构,但在JSP中,<%-- --%>是服务器端注释,不会发送到客户端,而HTML/XML的注释会留在客户端代码中。因此,需要指出两者的不同。 还要注意正确语法,比如注释不能嵌套,避免出现--在注释内容中,可能导致解析错误。例如,在XML中,注释必须符合规范,否则文档可能无法解析。 另外,用户可能关心注释的功能,比如临时屏蔽代码、添加说明或调试。需要举例说明正确的注释格式,并提醒注意事项,如IDE中的注释快捷键(引用[4]提到IDEA修改注释样式,可能相关)。 最后,生成相关问题时要覆盖常见疑问,比如注释是否可见、不同技术的注释差异、错误使用的影响等,帮助用户全面理解。</think>### HTML/XML注释符号`<!-- -->`的用法与功能 在HTML和XML中,注释符号的正确格式为`<!-- 注释内容 -->`,而非`<!-->`。其核心功能是**添加说明性文字或临时禁用代码片段**,这些内容不会被浏览器或解析器渲染/解析[^1][^4]。 --- #### 一、基础语法 1. **单行注释** ```html <!-- 这是单行注释 --> ``` 2. **多行注释** ```html <!-- 这是多行注释, 可以跨越多行 --> ``` --- #### 二、核心功能 1. **代码说明** 用于解释代码逻辑或标注版本信息,例如: ```html <!-- 导航栏组件,版本v1.2 --> <nav>...</nav> ``` 2. **调试与临时屏蔽** 在开发中快速禁用代码段而不删除: ```html <!-- <div class="test-section"> 此区块暂未完成 </div> --> ``` 3. **兼容性标注** 标注特定代码的适用环境: ```html <!-- 仅IE9以下生效 --> <!--[if lt IE 9]> <script src="legacy.js"></script> <![endif]--> ``` --- #### 三、注意事项 1. **XML严格性** 在XML中,注释内容不可包含`--`,否则会导致解析错误: ```xml <!-- 错误示例:包含连字符 -- --> <!-- 正确示例:避免连续短横线 --> ``` 2. **注释不可嵌套** 以下写法会导致语法错误: ```html <!-- <!-- 内部注释无效 --> --> ``` 3. **敏感信息风险** HTML注释会随源代码发送到客户端,需避免暴露敏感信息[^2][^4]。 --- #### 四、与其他技术的对比 | 技术 | 注释语法 | 作用范围 | |--------|------------------|----------------| | HTML | `<!-- -->` | 客户端可见 | | XML | `<!-- -->` | 数据文件内 | | JSP | `<%-- --%>` | 服务器端处理 | | JavaScript | `//` 或 `/* */` | 脚本内生效 | ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值