2011-03-18 87 views
0

我想通过指定ID在div中选择一个div。如何选择内部div与ID?

HTML与指定的ID

<div id="divOuter"> 
    <div id="divInner"> 
    </div> 
</div> 

如果我要选择通过使用ID选择divInner更重要的是风格我应该用什么?

我试图

div#divOuter> div#divInner 

,但不能使它工作。

+2

为什么不'#divInner'?应该只有一个带有该ID的人,对吧? – 2011-03-18 14:18:42

+0

'div#divOuter> div#divInner'如何工作? – BoltClock 2011-03-18 14:20:02

+0

另外,“divInner”和“divOuter”是您的元素的不好的ID。 “内”和“外”就足够了。 – meagar 2011-03-18 14:20:13

回答

4

至于标识必须是唯一的,

#divInner 

就足够了。

如果你有更多元素具有相同的ID,你必须改变它(你可能想改为使用类)。

更新:

好吧,我得到了你的观点。但是你的选择是正确的:http://jsfiddle.net/fkling/AsPam/

要么你有另一个规则覆盖这个,或者你的结构是不同的。

更新2:

哦,正如其他人所指出的,the child selector is not supported by IE6。你必须忽略它,然后:

div#divOuter div#divInner 
+0

在同一页中是的,唯一的。但是如果我有很多可能有这个ID的页面,并且如果我有一个单独的style.cs样式?我正在考虑以这种方式指定ID可以减少压倒其他人的风险。 – pencilCake 2011-03-18 14:22:40

+0

菲利克斯,我认为div#divOuter div#divInner不起作用。我不得不使用div#divInner来选择divInner。不知道为什么......但很高兴知道>在一些IE版本中不支持childe选择器。 – pencilCake 2011-03-18 14:45:17

1

由于ID是唯一的你真正需要的是

#divInner 
{ 
    /*styles*/ 
} 

这将选择HTML元素的ID属性和应用的样式。

如果您需要重复样式的多个元素,使用类

.divInner 
{ 
    /*styles*/ 
} 
0

对于初学者来说(我知道这可能是一个错字) ,你检查过拼写吗?

当谈到选择,你似乎想用id标签,换句话说,你需要的是做如上大家说:#idInner{...}