Html 使用CSS缩进h2后面的所有标记,直到命中下一个h2为止
在我们的项目中,我想以不同的方式设计我们的强氧输出。 当前生成的html如下所示:Html 使用CSS缩进h2后面的所有标记,直到命中下一个h2为止,html,css,layout,doxygen,Html,Css,Layout,Doxygen,在我们的项目中,我想以不同的方式设计我们的强氧输出。 当前生成的html如下所示: <html> <body> <h1> Heading 1 </h1> <h2> Heading 2.1 </h2> <p> Paragraph 2.1.1 </p> <p> Paragraph 2.1.2 </p> <p> Paragraph
<html>
<body>
<h1> Heading 1 </h1>
<h2> Heading 2.1 </h2>
<p> Paragraph 2.1.1 </p>
<p> Paragraph 2.1.2 </p>
<p> Paragraph 2.1.3 </p>
<h2> Heading 2.2 </h2>
<p> Paragraph 2.2.1 </p>
<p> Paragraph 2.2.2 </p>
<p> Paragraph 2.2.3 </p>
</body>
</html>
之所以使用*
,是因为除了
标记之外,还有其他标记。
但是,此规则仅缩进
标记后面的第一段,而不是将所有标记缩进下一个
标记
还应该提到的是,html的结构不能更改为将每个部分包装在
中。例如,听起来像是要将第一个h2之后的所有同级缩进,但其他h2除外,在这种情况下,这应该可以完成以下工作:
h2 ~ *:not(h2) {
margin-left: 10px;
}
请参见和。有两个复杂程度不同的选项,第一个是:
h2 ~ *:not(h2) {
margin-left: 1em;
}
此方法选择本身不是h2
的h2
的以下所有同级元素
第二个稍微简单一些:
body {
padding-left: 1em;
}
body h2 {
margin-left: -1em;
}
这种方法本质上意味着除了
h2
之外的所有内容都将缩进;因此,它不太适合您的用例,但可能适合您的特定需求)。效果很好。同时感谢您提供相关文档的链接。
body {
padding-left: 1em;
}
body h2 {
margin-left: -1em;
}