11.4 对默认样式进行重置或标准化

前面提到,每个浏览器都有内置的默认样式表。HTML会遵照该样式表显示,除非你自己编写的CSS覆盖了它们。整体上,不同浏览器提供的默认样式表是相似的,但也存在一定的差异。为此,开发人员在应用他们自己的CSS之前,常常需要抹平这些差异。

有两种主要的抹平差异的方法。

CSS重置可以有效地将所有默认样式都设为“零”,如图11.4.1所示。第二种方法,即normalize.css,则采取了不同的方式。它并不对所有样式进行重置,而是对默认样式进行微调,使它们在不同的浏览器中有相似的外观,参见图11.4.2。

11.4 对默认样式进行重置或标准化 - 图1

图11.4.1 这是应用了重置的示例页面。最大的变化是所有的字体大小都变成一样的了,所有的外边距和内边距都设成0了

11.4 对默认样式进行重置或标准化 - 图2

图11.4.2 这是使用了normalize.css(而不是重置)的示例页面。它与无样式的默认显示效果很相似,但也有差异。更重要的是,这个版本与使用当今常见的浏览器查看的效果是极为相似的

并非一定要用到这两种方法中的一种。保留浏览器的默认样式,并自己编写相应的CSS也是很好的。

在本章中,我使用Meyer重置开始编写页面,并对文本添加了一些样式。因此,在应用余下的样式之前,页面如图11.4.3所示。由于使用了重置,你可以更清晰地看到本章介绍的CSS是如何影响布局的。在阅读本章内容的过程中,你需要了解如何在用到重置的情况对页面进行布局。由于这种方法非常流行,因此这也是一项重要的技能。

11.4 对默认样式进行重置或标准化 - 图3

图11.4.3 这是使用了重置并对文本应用了一些样式的示例页面。可以从这里起步,随着本章的介绍逐步为页面添加余下的样式