是否可以将父元素中文本之前的HTML标记作为目标?
我想针对示例1中的是否可以将父元素中文本之前的HTML标记作为目标?,html,css,css-selectors,Html,Css,Css Selectors,我想针对示例1中的标记,但不是示例2: Sample 1: <p><code>foo()</code> describes the function</p> Sample 2: <p>Other text comes first, <code>bar()</code> is not at the beginning</p> code:first child选择器不将文本节点“其他文本优先”视为子元素
标记,但不是示例2:
Sample 1: <p><code>foo()</code> describes the function</p>
Sample 2: <p>Other text comes first, <code>bar()</code> is not at the beginning</p>
code:first child
选择器不将文本节点“其他文本优先”视为子元素
关于我是否可以在纯CSS中处理这个问题,有什么想法吗(我知道如何使用JS或修改HTML代码,但这不是必需的)不幸的是,没有
不使用纯CSS。没有“父元素的第一个节点之前没有任何文本”选择器
即使使用和各种同级选择器(和/或)的组合,这也是不可能的
事实上,对于作者来说,javascript解决方案是非常重要的,即使使用jQuery。在给定的上下文中,我也不认为这是可能的
如果您能够管理单个元素(在本例中为单数
元素)中的所有内容,则可以使用CSS:first of type
选择器,该选择器匹配其父元素的特定类型的第一个子元素:
.colorMe代码:类型的第一个{
背景:红色;
}
foo()
描述函数
其他文本位于第一位,bar()
不在开头
foo()
描述函数
其他文本位于第一位,bar()
不在开头
在这种情况下,CSS
只针对第一个code
元素。你可以在行动中看到这一点。更多信息
希望这有帮助:)