html - 缩进 h2 之后的所有标签,直到使用 CSS 命中下一个 h2

标签 html css layout doxygen

在我们的元素中,我想以不同的方式设置 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 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>

<h2>仅使用 font-size 设置样式属性和所有 <h2><p>标签在文档的左侧对齐。

让下面的内容任意<h2>标签在视觉上脱颖而出 我想缩进标签直到下一个 <h2>标签。

到目前为止我尝试的是以下 CSS 规则:

h2 + * {
    margin-left: 10px;
}

*使用是因为除了 <p> 之外还有其他标签标签。 但是,此规则仅缩进 <h2> 之后的第一段标签而不是所有标签到下一个 <h2>标签。

还应该提到的是,不能更改 html 的结构以将每个部分包装在 <div> 中。例如。

最佳答案

听起来您想在第一个 h2 之后缩进所有 sibling ,但其他 h2 除外,在这种情况下,这应该可以完成工作:

h2 ~ *:not(h2) {
    margin-left: 10px;
}

参见 the general sibling combinatorthe negation pseudo-class以及a live demo on jsbin .

关于html - 缩进 h2 之后的所有标签,直到使用 CSS 命中下一个 h2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13359776/

相关文章:

.net - HTML 和编译器

html - 无法制作粘性页脚。我的代码中有大错误吗?

html - Bootstrap : add spacing between columns

php - 如何在 Jquery : 48 function calls (96 lines each) for HTML class variable 中管理空间

css - 如何让 PrimeNg VirtualScroller 响应高度?

html - 在 CSS 布局、内联 block 方面遇到问题

html - 如何在另一个 DIV 内并排对齐 3 个 DIV 并右对齐最后一个 DIV?

html - 检查选择框具有 Webrat 的某些选项

html - 如何修复变换比例上的模糊图像

android - 如何使RealtiveLayout中的ToggleButton和ImageButton高度相同?