'#'是ID选择器,是CSS语言的基本部分。它将HTML元素与给定的id相匹配。我知道它,但在.css文件中使用.classname {...}
或#idselector
之间的主要区别是什么。.class和#id:什么区别/何时使用?
.hello { color:000000;}
或
#hello { color:000000;}
'#'是ID选择器,是CSS语言的基本部分。它将HTML元素与给定的id相匹配。我知道它,但在.css文件中使用.classname {...}
或#idselector
之间的主要区别是什么。.class和#id:什么区别/何时使用?
.hello { color:000000;}
或
#hello { color:000000;}
优先。 ID有更高的优先级,然后是类选择器。如果你有以下的CSS:
.hello { color:#000000;}
#hello { color:#ff0000;}
假设相同的元素具有“你好”的ID和阶级的“你好”该元素的字体颜色,因为ID具有更高的优先级,则类将是红色的选择。
此外,您只能在页面上拥有一个ID为'hello'的元素。但是,您可以拥有无限数量的“hello”类元素。
第一与CSS类中的任何元件你好,第二配衬与值你好的ID的任何元件相匹配。例如:
<div class="hello"></div>
<div id="hello"></div>
ID(#hello
)只能用于唯一唯一元素(例如:登录按钮)。
类别(.hello
)应该用于可重复的元素(例如:导航菜单按钮)。
这个回答非常好。但我不能投票你知道。我是一个新用户,sory。我已经了解了其中的差异:) – hakiko 2012-04-28 14:41:45
ID是唯一的,某种元素可能只有一个ID,并且只有一个相同的ID可能存在于页面上。所以以下是无效的:
<div id="first_id second_id"></div>
<div id="third_id"></div>
<div id="third_id"></div>
然而,类名却完全相反。一个元素可能有多个类名,并且同一个类名可以在文档中多次出现。
ID的目的,是要表示网页(即,首标,主内容的div,页脚),或内容(消息数149632)的独特部分的独特部分。
一个classname的用途是描述多个相同的含义对象。 (即对话框,帖子,菜单项)。
在CSS中,一个#id
具有更高特异性价值,这意味着以下几点:
<div id="id" class="class">Test</div>
#id { background: red; }
.class { background: green; }
将使股利红色,因为ID比类更加具体。
这很清楚,谢谢朋友:) – hakiko 2012-04-28 14:48:32
+1提到特异性http://www.w3.org/TR/css3-selectors/#specificity – 2012-04-28 14:53:07
请注意,一个HTML文档只能有**一个**元素和一个特定的ID。这应该解释两者之间的最大区别... – Oded 2012-04-28 14:37:29
[类或ID]可能的重复(http://stackoverflow.com/questions/719588/class-or-id) – 2012-04-28 17:11:46