源码网,源码论坛,源码之家,商业源码,游戏源码下载,discuz插件,棋牌源码下载,精品源码论坛

 找回密码
 立即注册
楼主: ttx9n

[HTML/Xhtml] HTML初学者适用的十五条最佳实践

[复制链接]

7万

主题

861

回帖

32万

积分

论坛元老

Rank: 8Rank: 8

积分
329525
发表于 2016-2-17 09:53:38 | 显示全部楼层 |阅读模式
这篇文章主要为HTML初学者推荐了适用的三十条最佳实践,感兴趣的小伙伴们可以参考一下

以下就是HTML初学者适用的三十条最佳实践,分享给大家供大家参考,具体内容如下

1.保持标签闭合

以前,经常见到类似下面的代码(译注:这是多久以前啊……):

XML/HTML Code复制内容到剪贴板
  1. <li>Some text here.     
  2. <li>Some new text here.     
  3. <li>You get the idea.   

注意外面包裹的UL/OL标签被遗漏了(谁知是故意还是无意的),而且还忘记了关闭LI标签。按今天的标准来看,这是很明显的糟糕做法,应该100%避免。总之,保持闭合标签。否则,你验证html标签的时候可能遇到问题。

更好的方式

XML/HTML Code复制内容到剪贴板
  1. <ul>     
  2.   <li>Some text here. </li>     
  3.   <li>Some new text here. </li>     
  4.   <li>You get the idea. </li>     
  5. </ul>    

2.声明正确的文档类型

笔者早先曾加入过许多CSS论坛,每当用户遇到问题,我们会建议他首先做两件事:

1. 验证CSS文件,保证没有错误。

2. 确认添加了正确的doctype

DOCTYPE 出现在HTML标签之前,它告诉浏览器这个页面包含的是HTML,XHTML,还是两者混合,这样浏览器才能正确解析。

通常有四种文档类型可供选择:

XML/HTML Code复制内容到剪贴板
  1. <!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01//EN” “http://www.w3.org/TR/html4/strict.dtd”>  
  2.   
  3.   
  4. <!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN” “http://www.w3.org/TR/html4/loose.dtd”>  
  5.   
  6.   
  7. <!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>  
  8.   
  9.   
  10. <!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Strict//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd”>  
  11.   

关于该使用什么样的文档类型声明,一直有不同的说法。通常认为使用最严格的声明是最佳选择,但研究表明,大部分浏览器会使用普通的方式解析这种声明,所以很多人选择使用HTML4.01标准。选择声明的底线是,它是不是真的适合你,所以你要综合考虑来选择适合你得项目的声明。

3.永远不要使用内联样式

当你在埋头写代码时,可能会经常顺手或偷懒的加上一点行内css代码,就像这样:

XML/HTML Code复制内容到剪贴板
  1. <p style="color: red;">I'm going to make this text red so that it really stands out and makes people take notice! </p>     

这样看起来即方便又没有问题。然而,这在你的编码实践中是个错误。

在你写代码时,在内容结构完成之前最好不要加入样式代码。

这样的编码方式就像打游击,是一种很山寨的做法。——Chris Coyier

更好的做法是,完成标签部分后,再把这个P的样式定义在外部样式表文件里。

建议

XML/HTML Code复制内容到剪贴板
  1. #someElement > p {     
  2.   color: red;     
  3. }  

4.将所有外部css文件放入head标签内

理论上讲,你可以在任何位置引入CSS样式表,但HTML规范建议在网页的head标记中引入,这样可以加快页面的渲染速度。

雅虎的开发过程中,我们发现,在head标签中引入样式表,会加快网页加载速度,因为这样可以使页面逐步渲染。 —— ySlow团队

XML/HTML Code复制内容到剪贴板
  1. <head>     
  2. <title>My Favorites Kinds of Corn</title>     
  3. <link rel="stylesheet" type="text/css" media="screen" href="path/to/file.css" />     
  4. <link rel="stylesheet" type="text/css" media="screen" href="path/to/anotherFile.css" />     
  5. </head>    

5.javascript文件放在底部

要记住一个原则,就是让页面以最快的速度呈现在用户面前。当加载一个脚本时,页面会暂停加载,直到脚本完全载入并执行完成。因此会浪费用户更多的时间。

如果你的JS文件只是要实现某些功能,(比如点击按钮事件),那就放心的在body底部引入它,这绝对是最佳的方法。

建议

JavaScript Code复制内容到剪贴板
  1. <p>And now you know my favorite kinds of corn. </p>     
  2. <script type="text/javascript" src="path/to/file.js"></script>     
  3. <script type="text/javascript" src="path/to/anotherFile.js"></script>     
  4. </body>     
  5. </html>    

6.永远不要使用内联javascript。现在不是1996年了!

许多年以前,还存在一种这样的方式,就是直接将JS代码加入到HTML标签中。尤其是在简单的图片相册中非常常见。本质上讲,一个“onclick”事件是附加在 标签上的,其效果等同于一些JS代码。不需要讨论太多,非常不应该使用这样的方式,应该把代码转移到一个外部JS文件中,然后使用“ addEventListener / attachEvent ”加入事件监听器。或者使用jquery等框架,只需要使用“click”方法。

JavaScript Code复制内容到剪贴板
  1. $('a#moreCornInfoLink').click(function() {     
  2.   alert('Want to learn more about corn?');     
  3. });    

7.边开发,边验证

如果你刚开始从事网页制作,那强烈建议你下载Web Developer Toolbar(chrome用户请自行在应用商店搜索,ie用户可能就杯具了) ,并在编码过程中随时使用”HTML标准验证”和“CSS标准验证”。如果你认为CSS是一种非常好学的语言,那么它会把你整的死去活来。你不严谨的代码会让你的页面漏洞百出,问题不断,一个好的方法就是—— 验证,验证,再验证。

8.下载firebug

Firebug是当之无愧的网页开发最佳插件,它不但可以调试JavaScript,还可以直观的让你了解页面标记的属性和位置。不用多说, 下载!

9.使用firebug

据笔者观察,大部分的使用者仅仅使用了Firebug 20%的功能,那真是太浪费了,你不妨花几个小时的时间来系统学习这个工具,相信会让你事半功倍。

10.保持标签名小写

理论上讲,html不区分大小写,你可以随意书写,例如:

XML/HTML Code复制内容到剪贴板
  1. <DIV>     
  2. <P>Here's an interesting fact about corn. </P>     
  3. </DIV>  

但最好不要这样写,费力气输入大些字母没有任何用处,并且会让代码很难看.

建议

XML/HTML Code复制内容到剪贴板
  1. <div>     
  2.   <p>Here's an interesting fact about corn. </p>     
  3. </div>   

11.使用H1-H6标签

建议你在网页中使用其中全部六种标记,虽然大部分人只会用到前四个,但使用最多的H会有很多好处,比如设备友好、搜索引擎友好等,不妨把你的P标签都替换成H6。

XML/HTML Code复制内容到剪贴板
  1. <h1>This is a really important corn fact! </h1>     
  2. <h6>Small, but still significant corn fact goes here. </h6>  

12.使用无序列表(UL)包裹导航菜单

通常网站都会有导航菜单,你可以用这样的方式定义:

XML/HTML Code复制内容到剪贴板
  1. <div id="nav">     
  2.  <a href="#">Home </a>     
  3.   <a href="#">About </a>     
  4.   <a href="#">Contact </a>     
  5. </div>  

如果你想书写优美的代码,那最好不要用这种方式。

为什么要用UL布局导航菜单? ——因为UL生来就是为定义列表准备的

最好这样定义:

XML/HTML Code复制内容到剪贴板
  1. <ul id="nav">     
  2.   <li><a href="#">Home</a></li>     
  3.   <li><a href="#">About</a></li>     
  4.   <li><a href="#">Contact</a></li>     
  5. </ul>    

15.学习如何应对IE

IE一直以来都是前端开发人员的噩梦!

如果你的CSS样式表基本定型了,那么可以为IE单独建立一个样式表,然后这样仅对IE生效:

CSS Code复制内容到剪贴板
  1. <!--[if lt IE 7]>     
  2.    <link rel="stylesheet" type="text/css" media="screen" href="path/to/ie.css" />     
  3. <![endif]-->   

 这些代码的意思是:如果用户浏览器是IE6及以下,那这段代码才会生效。如果你想把IE7也包含进来,那么就把“[if lt IE 7]”改为“[if lte IE 7]”。

以上就是本文的全部内容,希望对大家学习有所帮助。

回复

使用道具 举报

1

主题

2万

回帖

69

积分

注册会员

Rank: 2

积分
69
发表于 2022-8-12 04:08:17 | 显示全部楼层
可以,看卡巴
回复 支持 反对

使用道具 举报

0

主题

2万

回帖

0

积分

中级会员

Rank: 3Rank: 3

积分
0
发表于 2022-9-6 20:01:10 | 显示全部楼层
看到这帖子真是高兴!
回复 支持 反对

使用道具 举报

16

主题

2万

回帖

376

积分

中级会员

Rank: 3Rank: 3

积分
376
发表于 2022-10-24 16:41:01 | 显示全部楼层
呵呵呵呵呵呵
回复 支持 反对

使用道具 举报

2

主题

2万

回帖

499

积分

中级会员

Rank: 3Rank: 3

积分
499
发表于 2022-12-14 19:38:13 | 显示全部楼层
先把创新班才能下班才能下班
回复 支持 反对

使用道具 举报

1

主题

2万

回帖

362

积分

中级会员

Rank: 3Rank: 3

积分
362
发表于 2022-12-16 16:20:41 | 显示全部楼层
女生看了弄丢了卡萨诺的卡洛斯
回复 支持 反对

使用道具 举报

0

主题

2万

回帖

0

积分

中级会员

Rank: 3Rank: 3

积分
0
发表于 2022-12-17 10:41:46 | 显示全部楼层
强烈支持楼主ing……
回复 支持 反对

使用道具 举报

0

主题

2万

回帖

55

积分

注册会员

Rank: 2

积分
55
发表于 2023-2-13 19:09:54 | 显示全部楼层
这个源码还可以
回复 支持 反对

使用道具 举报

2

主题

2万

回帖

380

积分

中级会员

Rank: 3Rank: 3

积分
380
发表于 2023-5-15 17:19:47 | 显示全部楼层
看看看看
回复 支持 反对

使用道具 举报

3

主题

2万

回帖

294

积分

中级会员

Rank: 3Rank: 3

积分
294
发表于 2023-9-15 03:32:07 | 显示全部楼层
hi哦和烦恼农家女
回复 支持 反对

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies

本版积分规则

手机版|小黑屋|网站地图|源码论坛 ( 海外版 )

GMT+8, 2024-11-24 09:35 , Processed in 0.162556 second(s), 44 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表