`

Web开发者不可不知的15条编码原则(转自http://www.admin10000.com/document/325.html)

阅读更多
1、善用DIV来布局
  当开发一个Web页面时,要考虑第一件事就是区分页面重点。将这些内容用DIV标签包含起来,页面的代码会呈现出整洁、缩进良好的风格。

?123456 <div id="header"></div>   <div id="body-container">           <div id="content"> <!-- Content -- > </div>             <div id="right-side-bar"> <!-- Right Side Bar Content Area -- ></div>   </div>     <div id="footer"></div>

 2、将HTML标签和CSS样式表分割开来
  好的页面应该将HTML标签和CSS样式表分割开来。这是每一个Web开发者在首次接触Web开发时就应该知道的一条原则。然而,直到今天,仍然有很多开发者没有严格遵循这一原则。

不要在HTML标签里内嵌样式表代码。开发者应该养成习惯,单独建立文件,用以存放CSS样式表。而这也将方便其他开发者在修改你的代码时,能迅速完成工作。

?12 <p style="color: #CCC; font-size:16px; font-family: arial">     An example to illustrate inline style in html</p>

 3、优化CSS代码
  现如今,为网站添加多个CSS文件的做法已经很普遍。但是,当网站包含的CSS文件过多时,会降低网站的响应速度。解决办法是:精简代码并对多个CSS文件进行优化,将其合并成一个文件。这个办法能显著提升网站的加载速度。此外,有很多工具可以用来优化CSS文件,例如CSS Optimizer、Clean CSS等。

 4、优化Javascript文件,并将其放到页面底部
  和CSS一样,为页面添加多个Javascript文件也是很普遍的做法。但这同样会降低网站的响应速度。为此,开发者应该精简、优化这些Javascript文件。

  但有一点和CSS不同,浏览器通常不支持并行加载。这也就是说,当浏览器加载Javascript文件时,将不再同时加载其它内容。而这就导致了网页的加载速度好像变慢了。

  一个好的解决办法是:将Javascript文件的加载顺序放在最后。为了实现这一目标,开发者可以把Javascript代码放在HTML文档的底部,而最好的位置是放在接近</body>标签的地方。

 5、善用标题元素
  <h1> 到 <h6>这些元素用来突出页面的重点内容。这有助于用户更加关注页面的重点部分。对于博客,我(指本文作者)推荐使用<h1>标签来突出博客标题。因为,博客标题几乎是页面中最重要的部分。

?123 <h1>This is the topmost heading</h1> <h2>This is a sub-heading underneath the topmost heading.</h2> <h3>This is a sub-heading underneath the h2 heading.</h3>

 6、在合适的地方使用合适的HTML标签
  HTML标签是构造规范内容结构的关键。例如,<em>标签用来强调重点内容。<p>标签适用于突出文章段落。如果想要在段落间加空行,就不要使用<br />标签。

?12 <em>emphasized text</em> <strong>strongly emphasized text</strong>

  对于一组相关的元素,建议使用<ul>、<ol>或 <dl>标签。但是,不要错误的使用<blockquote>标签,因为它原本是用来定义块应用的。

 7、避免滥用<div>标签
  并不是所有块元素都应该用<div>标签来创建。例如,可以在内联元素的属性里添加display:block,将其以块元素的方式显示。

 8、使用列表创建导航
  使用<ul>列表标签,再配以相应的CSS样式,可以创建美观的导航菜单。

 9、别忘了封闭标签
  现在,每当我回忆起在大学里学到的关于Web开发的第一堂课时,教授提到的HTML结构的重要性总是浮现在我的脑海。根据W3C标准,标签应该被封闭。那是因为,在一些浏览器下,如果没有按照标准来将标签封闭,会出现显示不正常的问题。而这一情况在IE6、7和8里尤为明显。

 10、标签小写语法
  标签采用小写语法是一项行业标准。虽然大写语法并不影响页面的显示效果,但是,代码的可读性很差。下面这段代码可读性就非常差:

?12345 <DIV> <IMG SRC="images/demo_image.jpg" alt="demo image"/> <A HREF="#" TITLE="click here">Click Here</A> <P>some sample text</P> </DIV>

 11、为图片标签添加alt属性
  在<img>标签里,alt属性通常非常有用。因为搜索引擎通常无法直接抓取图片文件。但是,如果开发者在alt属性里添加了图片的描述内容,将会方便搜索引擎的抓取。

?12345 <!-- has an alt attribute, which will validate, but alt value is meaningless -- > <img id="logo" src="images/bgr_logo.png" alt="brg_logo.png" />   <!-- The correct way -- >  <img id="logo" src="images/bgr_logo.png" alt="Anson Cheung - Web Development" />

 12、在表格里使用<label> 和 <fieldset>
  为了提高代码质量,并让用户容易理解表格内容,我们应该用<label> 和 <fieldset>标签创建表格元素。

?12345678 <fieldset>     <legend>Personal Particular</legend>     <label for="name">Name</label><input type="text" id="name" name="name" />     <label for="email">E-mail</label><input type="text" id="email" name="email" />     <label for="subject">Subject</label><input type="text" id="subject" name="subject" />     <label for="message" >Message Body</label>   <textarea rows="10" cols="20" id="message" name="message" ></textarea> </fieldset>

 13、将浏览器兼容代码标明信息并相互分开
  对一名Web开发者来说,跨浏览器兼容是一个被重点关注的问题。通常,开发者会针对不同的浏览器来编码,也即是CSS hack。但是,如果开发者在编码时,能注明代码为哪一个版本的浏览器所写,会为以后的维护工作带来极大方便。下面就是一个很好的示例:

?123 <!--[if IE 7]> <link rel="stylesheet" href="css/ie-7.css" media="all"> <![endif]-->

?1234567 <!--[if IE 6]> <link rel="stylesheet" href="css/ie-6.css" media="all"> <script type="text/javascript" src="js/DD_belatedPNG_0.0.8a-min.js"></script> <script type="text/javascript">         DD_belatedPNG.fix('#logo'); </script> <![endif]-->

 14、避免过度注释
  作为一名开发者,在代码中添加注释是一个好习惯,能方便理解并易于维护。这在其它编程语言如PHP、JAVA 和 C#里很普遍。但是,HTML/XHTML是文本标记语言,非常容易理解。因此,无需为每行代码都添加注释。

 15、测试代码
  推荐开发者使用W3C文本标记验证服务来测试代码。它是一个高效的测试工具,能帮助你发现页面中存在的错误。而且,它还能从页面错误出发,帮你定位到相应的代码。这一点通常在编码完成后很难做到。但开发者需要注意的是,验证通过的代码并非就是性能优异的代码。

英文原文:10+ HTML Best practices for Web Developer
分享到:
评论

相关推荐

    jquery-ui.min.js

    jQuery UI是基于JavaScript库jQuery的一款强大的用户界面插件集,它提供了丰富的交互效果、可自定义的主题以及多种可重用的UI小部件。在本文中,我们将深入探讨jQuery UI的核心功能,尤其是标题所提及的`jquery-ui....

    Altium DXP Protel 最全元件封装库大全最新

    这些库是由经验丰富的开发者经过多年实践积累而形成的,虽然可能有些部分尚未完全整理,但仍然提供了大量元件模型,适用于各种电子设计项目。 1. **Altium Designer和Protel**:这两者是同一系列的软件,起初名为...

    微信小程序-微信小程序-教务系统

    微信web开发者工具 v0.11.112301 项目截图: https://www.getweapp.com/project?projectId=584050e7e8ff074c22472f53 感谢: 本项目原始版本由zh-h提供:...

    Visual Studio版本互转工具-支持2005/2008/2010

    然而,在实际开发过程中,开发者可能需要将项目从一个版本转换到另一个版本,这就需要用到Visual Studio版本互转工具。本文将详细介绍这款工具,以及如何利用它来实现不同版本间的转换。 该工具主要支持Visual ...

    .net学习网站总结

    ASP.NET是Microsoft提供的一个用于构建动态Web应用的框架,其官方网站提供了大量的资源,包括教程、案例和社区支持,对于从事Web开发的.NET开发者而言,这里是一个不可或缺的学习和交流平台。 ### 10. Windows ...

    JAVA商业项目源代码--商铺经营管理系统(解压密码https://www.baidu.com/)

    此项目旨在实现一个完整的商铺管理功能,包括但不限于商品管理、订单处理、库存控制、会员管理等多个模块,对于学习和理解企业级Java应用开发具有很高的参考价值。 1. **Java基础**:项目的基础是Java编程语言,这...

    webView谷歌离线调试包

    调试基于WebView的App最舒服的工具Chrome自带的开发者工具,其中有我们熟悉的Dom树调试,JS调试,Network监视等等功能。 Google提供的调试Android上WebView的步骤: 1.开启手机上的USB调试功能并且连接计算机手机端...

    Proxy SwitchOmega 2.5.15 Chrome离线插件(谷歌浏览器proxy插件)

    Google Chrome插件: Proxy SwitchOmega 2.5.15. 轻松快捷地管理和切换多个代理设置. 离线插件使用方法: 1. 打开Chrome -&gt; 自定义及控制按钮(右上角) -&gt; 更多工具 -&gt; 扩展程序 (有可能需要打开开发者模式) 2. 拖拽...

    cocos creator微信小游戏接入文档

    - **微信Web开发者工具API**:具体到canvas等组件的使用,如wx.createCanvas,可查看https://developers.weixin.qq.com/minigame/dev/document/render/canvas/wx.createCanvas.html?t=2018329。 - **微信开发者...

    Homebrew 软件管理工具

    这使得开发者可以轻松分享和安装非官方或特定项目的软件包。例如,要安装 Homebrew 官方维护之外的软件包,可以使用 `brew tap` 命令: ```bash brew tap homebrew/services ``` ## Homebrew 的维护与清理 定期运行...

    10套精美的后台管理系统网站模版

    后台管理系统网站模板是用于构建企业或组织内部管理系统的界面设计框架,它们通常包含一系列预设的页面布局、组件和样式,以帮助开发者快速构建功能齐全、界面美观的管理平台。这些模版通常涵盖登录注册、数据展示、...

    三维码介绍

    识别技术愈演愈烈的,三维码开发者平台为各行业提供可识别,可设计的三维码应用工具。 1. 平台完全免费:平台提供开放的SDK供大家下载应用,用户登录平台后即可申请使用三维码。 2. 平台地址:http://app.vvang.cn ...

    IDEA下开发webservice(axis)文档

    - 官方文档与教程页面:[http://www.jetbrains.com/idea/training/demos.html](http://www.jetbrains.com/idea/training/demos.html) 和 [http://www.jetbrains.com/idea/documentation/documentation.html]...

    Android 集成融云IM(一) 前提准备和获取Token

    在Android应用开发中,融云IM(RongCloud Instant Messaging)是一个常见的第三方即时通讯解决方案,它为开发者提供了丰富的API和SDK,使得在Android应用中快速实现聊天功能成为可能。本篇将详细介绍如何进行Android...

    gradle-3.2-bin.zip

    离线包的提供使得在没有网络或网络不稳定的情况下也能顺利完成Gradle的安装,保障了开发工作的连续性。对于Android Studio用户,保持Gradle版本的更新对于充分利用新特性、提高开发效率和优化构建流程至关重要。

    clipboard.min.js下载

    "clipboard.min.js"是一个JavaScript库,专门用于实现网页中的复制和粘贴功能,极大地简化了开发者的工作。这个库是轻量级的,优化过后的“min”版本意味着它已经过压缩,体积小但功能强大。 "clipboard.min.js"的...

    MDK最新5.23(2017.02)下载地址

    6. **优化工具**:该版本还包含了一系列性能分析和优化工具,如µVision的RTX实时操作系统,可帮助开发者优化程序结构,提高运行效率。 ### 应用场景 MDK 5.23广泛应用于各种基于ARM Cortex内核的微控制器开发中,...

    RTMP直播例子--基于FLASH/FLEX(含源代码) 下载

    在直播场景中,视频源(如摄像头)捕获的音视频数据会被编码并推送到RTMP服务器,然后服务器将这些数据分发给订阅的客户端。客户端通过RTMP协议接收数据并在本地解码播放。 FLEX是一种基于ActionScript 3的开放源...

    gradle-2.14-all.zip工具下载

    总的来说,Gradle 2.14是Android开发中不可或缺的工具,它的功能强大、灵活性高,能够帮助开发者高效地管理项目构建。了解并熟练掌握Gradle的使用,对于提升开发效率具有重要意义。同时,离线包的下载和配置也是...

    《诗意的边缘》实例的CSS文件

    总的来说,《诗意的边缘》实例的CSS文件为学习和实践 Zend Framework 开发提供了实用的视觉设计工具,通过深入理解和应用这些样式规则,开发者能够创建出既美观又功能丰富的Web应用,同时领略到编程艺术的诗意一面。

Global site tag (gtag.js) - Google Analytics