2010-06-29 99 views
1

这里是我的HTML:高级选择 - 隐藏父

<td> 
<a class="button" href="#"> 
    <input id="download">...</input> 
</a> 
<a class="button" href="#"> 
    <input id="downloadcsv">...</input> 
</a> 
</td> 

使用CSS我想隐藏其中包含与ID = downloadcsv

input是否有CSS父选项<a>

编辑:由于当前aswers表明你不能隐藏一个父元素的基础上它的一个孩子的类。

是否有可能简单地在Javascript中执行此操作,而不是使用像jQuery这样的框架?

回答

8

假设<a>downloadcsv - 输入的直接父,你可以只使用

document.getElementById("downloadcsv").parentNode.style.display = "none" 
+0

这是一个用JS获得DOM节点的父的正确方法。 CSS无法实现的原因是因为当前选择器允许您定位元素,子级,兄弟姐妹 - 但不是父母。 – 2010-06-29 21:10:53

1

这对CSS(2)是不可能的。但是,有可能与jQuery

0

要在弗兰的回答扩大,jQuery的解决办法是这样的:

$("a:has(#downloadcsv)").hide(); 

否则,你需要把一个类上,表明它是#downloadscv父父<a>