Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/39.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
Html 为页面的第一个blockquote定义样式_Html_Css_Css Selectors - Fatal编程技术网

Html 为页面的第一个blockquote定义样式

Html 为页面的第一个blockquote定义样式,html,css,css-selectors,Html,Css,Css Selectors,假设我有一个包含3个块引号的html页面。如何在不使用类的情况下使用css将(页面的)第一个blockquote的背景设置为红色 我已经试过了 body blockquote: first-child { background-color: red; } …没有成功 谢谢。在一般情况下,仅使用CSS无法做到这一点。没有“类型的第一个子代”选择器,只有“类型的第一个子代” 但是,通常可以对标记进行假设。为了明确起见,假设页面内容在…内,并且所有blockquote元素都显示为该元

假设我有一个包含3个块引号的html页面。如何在不使用类的情况下使用css将(页面的)第一个blockquote的背景设置为红色

我已经试过了

body blockquote: first-child {
    background-color: red;    
}
…没有成功


谢谢。

在一般情况下,仅使用CSS无法做到这一点。没有“类型的第一个子代”选择器,只有“类型的第一个子代”

但是,通常可以对标记进行假设。为了明确起见,假设页面内容在
内,并且所有
blockquote
元素都显示为该元素的子元素。然后,您只需使用类型选择器的
:第一个:


#内容块引号:类型的第一个{
背景色:红色;
}
一些东西
有人引用我的话。
再来点东西
我也被引用。
CSS不起作用的原因: 您的HTML结构:

body
__ parent
____ blockquote
__ parent
____ blockquote
CSS:

body blockquote: first-child {
    background-color: red;    
}
这个CSS选择器实际上做的是-它选择每个
块引号
,它首先出现在其父对象中非主体中

当元素嵌套在其他元素中时,第一个子元素与body标记各自不起作用。它分别对父对象起作用

尝试改用此选项

td.wsite-multicol-col:first-child blockquote {
    background: red;
}

这将选择第一个
,并为其子项设置样式(
blockquote
)。它不会将样式设置为页面的第一个块引号。

我按照您的建议尝试了。。。这是测试页面:问题是我尝试使用的父内容是
.container
,但这不是blockquote的直接父内容,而且似乎不起作用。无论如何,谢谢。@Bronzato,在这种情况下,答案的一般部分适用:你不能。正如你所说,它适用于第一个
col
的第一个blockquote。但是如何为页面的第一个blockquote设置样式呢?假设页面上可能有多个
col
?无论如何,谢谢。我更新了演示页面,以显示当我只需要第一个块引号时,有两个块引号获得样式的问题。你不能在CSS中使用如此深的嵌套标记。你可以尝试JS。可能的副本(不是vtc'ed,只是链接)。