最近做网站的时候,经常搞不清id、class和name之间的区别,于是就在网上搜集资料学习,整合出下面的版本,以防自己忘记的同时帮助到有需求的人。
id选择器
唯一标识一个元素的,只能针对某一个样式进行控制即在同一个HTML页面只能调用一次,具有唯一性。id选择器是以 “ # ” 开头。
eg. CSS定义 #headerline1 {width: 100%;height: 80px;}
调用 <div id="headerline1">这是id的例子</div>
class选择器
可以针对多个即在同一个HTML页面可以多次调用相同的class类。class选择器是以 “ . ” 开头。
eg. CSS定义 .header {background-color: #04D9B3;position: relative;}
调用 <div class="headerline1">这是class的例子</div>
name属性
相对于前两个而言,name主要用于获取某表单域信息,但它的用途比较广泛,主要包括:
- 作为可与服务器交互数据的HTML元素的服务器端的标示,比如input、select、textarea、button等。我们可以在服务器端根据其name通过Request.Params取得元素提交的值。
- HTML元素 input type=“radio” 分组,radio button控件在同一个分组类,check操作是mutex的,同一时间只能选中一个radio,这个分组就是根据相同的Name属性来实现的。
- 建立页面中的锚点,我们知道
<a href="URL"></a>
是获得一个页面超级链接,如果改用name,如:<a name="PageBottom"></a>
,我们就获得了一个页面锚点(即从一个链接跳转到一个位置或其他网页,所要跳转到的那个位置就叫做锚点,它是一种在页面内部定位的方式)。 - 作为对象的identity,如applet、object、embed等元素。比如在applet对象实例中,我们将使用其name来引用该对象。
- 在img元素和map元素之间关联的时候,如果要定义img的热点区域,需要使用其属性usemap,使usemap="#name"(被关联的map元素的Name)。
- 某些特定元素的属性,如attribute,meta和param。例如:
为object定义参数<param name = "appletParameter" value = "value">
或meta中<meta name = "Author" content = "Dave Raggett">
。