Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/40.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
CSS-基于第一个子项修改父项_Css - Fatal编程技术网

CSS-基于第一个子项修改父项

CSS-基于第一个子项修改父项,css,Css,在CSS中,有没有一种方法可以在给定第一个子元素的情况下修改父元素 在我的例子中,如果第一个子元素是链接,那么这将是以不同的格式设置表单元格 <td>Hello</td> <td><a href="go.html">Go here!</a></td> <style> td { padding: 5px; } /* Normal cell */ ?? { padding: 0px; } /* Cell with

在CSS中,有没有一种方法可以在给定第一个子元素的情况下修改父元素

在我的例子中,如果第一个子元素是链接,那么这将是以不同的格式设置表单元格

<td>Hello</td>
<td><a href="go.html">Go here!</a></td>

<style>
td { padding: 5px; } /* Normal cell */
?? { padding: 0px; } /* Cell with link as first child */
</style>
你好 td{padding:5px;}/*正常单元格*/ ?? {padding:0px;}/*链接为第一个子元素的单元格*/
没有,但您可以想出一种不同的方法并执行以下操作:

td { padding: 5px; } /* Normal cell */
td a { margin: -5px; } /* Cell with link as first child */
当然,还有很多其他方法可以做到类似的事情


CSS4应该提供一个
:具有
伪类,它将完全满足您的需求,但我们需要等待它。

这两个选项都回答了我的问题:短期和长期解决方案。我知道曾经有:包含;我想:has也会这么做。非常感谢!不客气。如果您的项目比这里的示例复杂得多,那么我建议您将一个类设置为所有内部有锚的td元素,然后简单地执行
td.hasAnchorClass{padding:0}
,这可能是最简单的方法。感谢您的反馈。看起来我比我自己强。下次可能会少点屈尊俯就的语气。没问题,@BJack。很抱歉我的语气,但相信我,我的语气比你可能在几分钟内得到的猛烈的反对票要温和得多。