我想根据文本的重要性来组织页面。 即我想使最重要的文本h1
,等等。我想这样做,以便搜索引擎能够找到要在结果摘录文本中显示的正确文本。
但是,我不想让这些样式来指示文本的显示方式,所以我在 CSS 中为 .html
和 .body
设置了某些默认值,并希望标题 ( h1
...( 从它们继承。(我会根据需要为页面定制样式。
不幸的是,无论如何,标题的显示方式似乎有所不同,例如以较大的字体显示。那么有没有办法告诉浏览器在样式方面将标题视为正文文本呢?(我知道我可以为标题设置 CSS,但是当有人更改.body
CSS 但忘记更改 CSS h1
时会发生什么......
您可以像这样简单地在 CSS 工作表的顶部设置设置样式。
h1{}
h2{}
body{}
或
body h1{}
body h2{}
要在以后调整这些样式,只需在 CSS 工作表下方添加新样式即可。自从你的CSS 工作表是一个级联样式表,它从工作表顶部向下继承样式。
试试这个,现在你不需要到处更改类,因为 js 会改变它,并且你完成了使正文和标头具有相同的样式,但仍然可以有差异:
window.onload = function() {
document.getElementsByTagName("body")[0].className = "myClass";
let h1s = document.getElementsByTagName("h1");
for (let i = 0; i < h1s.length; i++) {
h1s[i].className = "myClass";
}
};
.myClass {
font-size: 30px;
color: red;
font-weight: normal;
}
<!DOCTYPE html>
<html>
<body>
<h1>My First Heading</h1>
<p>My first paragraph.</p>
</body>
</html>