首页  >  文章  >  web前端  >  第6天:XHTML代码规范_基础教程

第6天:XHTML代码规范_基础教程

WBOY
WBOY原创
2016-05-16 12:09:581507浏览

在开始正式内容制作之前,我们必须先了解一下web标准有关代码的规范。了解这些规范可以帮助你少走弯路,尽快通过代码校验。

1.所有的标记都必须要有一个相应的结束标记

以前在HTML中,你可以打开许多标签,例如

  • 而不一定写对应的

  • 来关闭它们。但在XHTML中这是不合法的。XHTML要求有严谨的结构,所有标签必须关闭。如果是单独不成对的标签,在标签最后加一个"/"来关闭它。例如:


    网页设计师

    2.所有标签的元素和属性的名字都必须使用小写

    与HTML不一样,XHTML对大小写是敏感的,和<TITLE>是不同的标签。XHTML要求所有的标签和属性的名字都必须使用小写。例如:<BODY>必须写成<body> 。大小写夹杂也是不被认可的,通常dreamweaver自动生成的属性名字"onMouseOver"也必须修改成"onmouseover"。</p> <h3>3.所有的XML标记都必须合理嵌套</h3> <p>同样因为XHTML要求有严谨的结构,因此所有的嵌套都必须按顺序,以前我们这样写的代码:</p> <span class="code"><p><b></p>/b></span> <p>必须修改为:</p> <span class="code"><p><b></b>/p></span> <p>就是说,一层一层的嵌套必须是严格对称。</p> <h3>4.所有的属性必须用引号""括起来</h3> <p>在HTML中,你可以不需要给属性值加引号,但是在XHTML中,它们必须被加引号。例如:</p> <span class="code"><height=80></span> <p>必须修改为:</p> <span class="code"><height="80"></span> <p>特殊情况,你需要在属性值里使用双引号,你可以用",单引号可以使用',例如:</p> <span class="code"><alt="say'hello'"></span> <h3>5.把所有<和&特殊符号用编码表示</H3> <UL> <LI>任何小于号(<),不是标签的一部分,都必须被编码为<SPAN class=code>& l t ;</SPAN> <LI>任何大于号(>),不是标签的一部分,都必须被编码为<span class="code">& g t ;</span> </h3> <li>任何与号(&),不是实体的一部分的,都必须被编码为<span class="code">& a m p;</span> </li> <p>注:以上字符之间无空格。</p> <h3>6.给所有属性赋一个值</h3> <p>XHTML规定所有属性都必须有一个值,没有值的就重复本身。例如:</p> <span class="code"><td nowrap></span> <span class="code"><input type="checkbox" name="shirt" value="medium" checked></span> <p>必须修改为:</p> <span class="code"><td nowrap="nowrap"></span> <span class="code"><input type="checkbox" name="shirt" value="medium" checked="checked"></span> <h3>7.不要在注释内容中使“--”</h3> <p>“--”只能发生在XHTML注释的开头和结束,也就是说,在内容中它们不再有效。例如下面的代码是无效的:</p> <span class="code"><!--这里是注释-----------这里是注释--></span> <p>用等号或者空格替换内部的虚线。</p> <span class="code"><!--这里是注释============这里是注释--></span> <p>以上这些规范有的看上去比较奇怪,但这一切都是为了使我们的代码有一个统一、唯一的标准,便于以后的数据再利用。</p></div><div class="nphpQianMsg"><div class="clear"></div></div><div class="nphpQianSheng"><span>声明:</span><div>本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn</div></div></div><div class="nphpSytBox"><span>上一篇:<a class="dBlack" title="韩国商业网站设计分析" href="http://m.php.cn/zh/faq/1162.html">韩国商业网站设计分析</a></span><span>下一篇:<a class="dBlack" title="详细解读Silverlight Line对象使用技巧" href="http://m.php.cn/zh/faq/1164.html">详细解读Silverlight Line对象使用技巧</a></span></div><div class="nphpSytBox2"><div class="nphpZbktTitle"><h2>相关文章</h2><em><a href="http://m.php.cn/zh/article.html" class="bBlack"><i>查看更多</i><b></b></a></em><div class="clear"></div></div><ul class="nphpXgwzList"><li><b></b><a href="http://m.php.cn/zh/faq/1796689187.html" title="如何用纯CSS创建等高列?" class="aBlack">如何用纯CSS创建等高列?</a><div class="clear"></div></li><li><b></b><a href="http://m.php.cn/zh/faq/1796689160.html" title="如何正确使用 Font Awesome 图标作为 CSS 内容?" class="aBlack">如何正确使用 Font Awesome 图标作为 CSS 内容?</a><div class="clear"></div></li><li><b></b><a href="http://m.php.cn/zh/faq/1796689173.html" title="如何在 CSS Div 元素中仅显示水平滚动条?" class="aBlack">如何在 CSS Div 元素中仅显示水平滚动条?</a><div class="clear"></div></li><li><b></b><a href="http://m.php.cn/zh/faq/1796689177.html" title="重要的 CSS 资源" class="aBlack">重要的 CSS 资源</a><div class="clear"></div></li><li><b></b><a href="http://m.php.cn/zh/faq/1796689178.html" title="为什么我的粘滞按钮在 IE 11 中不起作用?" class="aBlack">为什么我的粘滞按钮在 IE 11 中不起作用?</a><div class="clear"></div></li></ul></div></div><footer><div class="footer"><div class="footertop"><img src="/static/imghwm/logo.png" alt=""><p>公益在线PHP培训,帮助PHP学习者快速成长!</p></div><div class="footermid"><a href="http://m.php.cn/zh/about/us.html">关于我们</a><a href="http://m.php.cn/zh/about/disclaimer.html">免责声明</a><a href="http://m.php.cn/zh/update/article_0_1.html">Sitemap</a></div><div class="footerbottom"><p> © php.cn All rights reserved </p></div></div></footer><script>isLogin = 0;</script><script type="text/javascript" src="/static/layui/layui.js"></script><script type="text/javascript" src="/static/js/global.js?4.9.47"></script></div><script src="https://vdse.bdstatic.com//search-video.v1.min.js"></script><link rel='stylesheet' id='_main-css' href='/static/css/viewer.min.css' type='text/css' media='all'/><script type='text/javascript' src='/static/js/viewer.min.js?1'></script><script type='text/javascript' src='/static/js/jquery-viewer.min.js'></script><script>jQuery.fn.wait = function (func, times, interval) { var _times = times || -1, //100次 _interval = interval || 20, //20毫秒每次 _self = this, _selector = this.selector, //选择器 _iIntervalID; //定时器id if( this.length ){ //如果已经获取到了,就直接执行函数 func && func.call(this); } else { _iIntervalID = setInterval(function() { if(!_times) { //是0就退出 clearInterval(_iIntervalID); } _times <= 0 || _times--; //如果是正数就 -- _self = $(_selector); //再次选择 if( _self.length ) { //判断是否取到 func && func.call(_self); clearInterval(_iIntervalID); } }, _interval); } return this; } $("table.syntaxhighlighter").wait(function() { $('table.syntaxhighlighter').append("<p class='cnblogs_code_footer'><span class='cnblogs_code_footer_icon'></span></p>"); }); $(document).on("click", ".cnblogs_code_footer",function(){ $(this).parents('table.syntaxhighlighter').css('display','inline-table');$(this).hide(); }); $('.nphpQianCont').viewer({navbar:true,title:false,toolbar:false,movable:false,viewed:function(){$('img').click(function(){$('.viewer-close').trigger('click');});}}); </script></body></html>