网络编程
位置:首页>> 网络编程>> 网页设计>> class和id命名探讨

class和id命名探讨

作者:tyhouse 来源:twocity.cn 发布时间:2007-10-16 17:55:00 

标签:命名,class,id,css

class和id的命名,如果合理,可以使得文档具有清晰的结构

我们现在解决办法就是使用现有的元素,通过给他们id或class而得到额外的信息。这样就使得文档具有清晰的结构。比如,我们通过一个简单的无序列表UL,可以创建出一个导航元素的信息:


 程序代码
<ul id="nav">
    <li><a href="http://www.twocity.cn/">twocity.cn教程</a></li>
    <li><a href="http://www.twocity.cn/">twocity.cn实例</a></li>
    <li><a href="http://www.twocity.cn/">twocity.cn布局</a></li>
    <li><a href="http://www.twocity.cn/">twocity.cn欣赏</a></li>
    <li><a href="http://www.twocity.cn/">twocity.cn下载</a></li>
</ul>


  我们一直强调以提醒你的注意,id是页面上单独的元素,必须是唯一的,这样的益处在于程序或脚本的控制与选择。id我们通常用来标记结构性的元素,如上面提到的头部导航、侧边栏、内容区域等。


  一个id只能应用于同一个页面上的一个元素。从理论上说,不同的页面,完全可以使用同一个id。例如列表页面的标签与内容显示页面的标题,或者是首页的联系方式与内页的联系方式。需要你注意的是,这样确实能省事简化代码提高效率。但如果将来需要根据页面不同单独定义他们的外观,你将会遇到棘手的问题。我们建议你建立不同的id,但在CSS代码编写时,可以运用群组选择符进行外观的设置,即使有变化,也可以非常方便的区分开来。例如:

列表页的标题:<p id="listtitle">www.twocity.cn</p>
  内容页的标题:<p id="showtitle">www.twocity.cn</p>
  CSS则可以这样写:#listtitle,#showtitle {font-size:1.2em; color:red; ...}
  类class是一个非常灵活的东东,你可以将它应用于页面上任意数量的元素。类class非常适合相似条目的定义。例如,我们需要在列表页标识出文章的作者,我们不必为每一个人建立id。我们只需要建立类author分配给每一位作者即可。

  需要注意的是,不管你用id还是class,请不要让它的名字与它的表现有任何的关联,应该让这个名字更有意义。例如我们在处理侧边栏时,或许它是在左侧,你会给它一个leftsider的名字,但如果我们经过运行发现它处于右侧更恰当。此时leftsider居于了右侧,就显得不是非常得体与恰当了。比如我们希望我们的关键内容加粗显示,或许你会建立一个class类命名为bold800。如果我们将来将它不加粗而是赋予不同的色彩,这个类名也不合适了。

  我们说说命名的大小写问题,我们的id名与class类名,一般情况下是不区分大小写的,但不是一个好习惯。我们如果使用XHTML那么id名与class类名是区分大小写的,如果是使用HTML,那么大小写是没有区别的。我们处理这样问题的方法就是全部采用小写,当然,你也可以按你的习惯,但要注意与开发团队的其他成员协调。

  我们的id与class类都是比较灵活的东西,只要你愿意,你爱怎么用就怎么用,但问题就出现了。我们的页面代码中到处充斥着这些东西,我们的出发点是想更加精确的选择和控制我们的页面元素,但这好象又回到了表格时代,一切变的难以理解和不可阅读,例如下面的代码:

 程序代码
HTML:

<div id="about52css">
<h1 class="title">Div+CSS教程 www.52css.com</h1>
<p class="abouttext">52css.com是一个非常专业的CSS站点</p>
<p class="abouttext">52css.com的Div+CSS教程栏目有丰富的教程</p>
</div>


CSS:

.title {font-size:13px; color:#f60;}
.abouttext {font-size:12px; color:#666;}

  我们进行一下优化,去掉一些不必要的命名。代码如下:


 程序代码

HTML:
<div id="about52css">
<h1>Div+CSS教程 www.twocity.cn</h1>
<p>twocity.cn是一个非常专业的CSS站点</p>
<p>twocity.cn的Div+CSS教程栏目有丰富的教程</p>
</div>


CSS:

#about52css h1 {font-size:13px; color:#f60;}
#about52css p {font-size:12px; color:#666;}


  优化后的方式代码更加的简洁,我们只需要通过选择器准确的找到样式的应用目标就可以了。不必过份的依赖于id名或class类名。我们只有在不得已,不得不使用id或class标识的时候才使用它们。正常情况下,我们的文件只需要几个或十来个id名与class名就完全能满足需要了。如果你发现你的这些名字很多。要么是你就是有多id多class结合症,要么就是你的HTML文档的结构出现了问题。我们将在以后twocity.cn的教程文章中,详细的讲解选择符的相关知识与技术,让你可以非常简单而精确的选择到样式的作用目标。


0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com