重置和规范化CSS之间的区别
开发人员希望HTML元素在每个浏览器上看起来都是一样的,尽管这取决于,因为每个浏览器的功能都不同。当浏览器渲染一个HTML页面时,它将应用自己的默认样式。像标题标签这样的样式,根据浏览器的类型,有不同的尺寸和字体。这意味着,标题可以有边距或额外的填充,甚至不需要你写代码。
在本教程中,我们将看看如何重置和规范化CSS,以及它们之间有什么区别。
正常化和重设的区别
在使用CSS时,开发者可能会遇到一些浏览器的问题,比如他们可能会有不同的标题字体和大小等。上下边距和默认的填充也可能不同。这时,重设和规范化的作用就体现出来了,因为它们可以使默认的CSS在所有的浏览器中更加一致,但是关于使用哪种方法的争论还在继续。让我们详细了解一下规范化和重设,以便确定它们之间的区别。
在CSS中重新设置
为了避免跨浏览器的差异,在这种技术中,CSS作者通过使用CSS重置使浏览器的所有样式无效。不同的浏览器会有自己不同的用户代理样式表;以使网站看起来更加清晰。例如,你可能已经看到大多数浏览器中的超链接是蓝色的,而被访问的超链接显示为紫色。
默认样式的一个例子可以是–
font-weight: bold;
font-size: 10px;
所有的浏览器都会应用这种类型的默认样式,尽管这取决于浏览器要应用哪种样式。有些浏览器可能会应用额外的填充,有些浏览器可能会改变页边距,有些浏览器甚至可能有不同的字体风格。
CSS重置将迫使浏览器应用所有的样式重置为空,这就避免了由于浏览器的默认样式而出现的差异。
让我们看看这个例子,我们把所有元素的权重和样式都设置为相同。
font-weight: inherit;
font-style: inherit;
font-family: inherit;
CSS开发者发现不一致的地方,因为他们的网站在不同的浏览器中看起来是不同的。重置有助于将默认的浏览器样式设置为空,这就消除了因不同浏览器样式而可能出现的不一致。
注意 – Internet explorer不支持inherit属性,这就是为什么继承的值没有被应用,并且在Internet explorer上的用户界面受到影响。重置将帮助我们在使用internet explorer时解决这个问题。
示例
让我们看一个例子,看看我们如何重置默认的浏览器样式。
<!DOCTYPE html>
<html lang="en">
<head>
<title>Example of resetting!!</title>
</head>
<body>
<h1>Hi welcome to another tutorial</h1>
<h3>How is your day going?</h3>
<h2>We Are learning how to Reset CSS</h2>
<h4>It will reset the default CSS by the browser</h4>
</body>
</html>
我们导入的链接将重置浏览器的默认样式。重置的样式会先于其他样式加载,这就导致了浏览器默认样式的删除。
上述输出在每个浏览器上看起来都是一样的,因为我们在代码中使用了重置。使用重置后,输出的差异将是最小的。
在CSS中进行规范化处理
为了提高跨浏览器的兼容性,我们对HTML元素进行了规范化处理,并取代了HTML中的重置。归一化是为了让浏览器保留有用的默认值,而不是将它们全部删除。让我们来看看规范化的用法。
- 它使HTML中许多元素的样式标准化。
-
删除了普通浏览器的错误。
-
通过文档简要解释代码,提高可用性。
示例
下面是一个理解规范化概念的例子。在这个例子中,我们导入了规范化,它不会重置浏览器的样式,但它会在所有的浏览器中显示相同的输出,没有任何区别。
<!DOCTYPE html>
<html lang="en">
<head>
<title>Example of normalizing CSS</title>
<link rel="stylesheet" href= "https://necolas.github.io/normalize.css/7.0.0/normalize.css">
</head>
<body>
<h1>Hi welcome to another tutorial</h1>
<h1>How is your day going?</h1>
<h2>We Are learning how to Reset CSS</h2>
<h4>It will reset the default CSS by the browser</h4>
</body>
</html>
以上是在所有浏览器中看起来相同的输出。
开发人员之间一直在争论选择哪种方式,哪种方式更有利于实现流畅的流程。
归一化保留了那些有用的默认样式,并删除了那些没用的样式,而重置则删除了浏览器的所有样式。在重置中,我们必须在重置浏览器后重新声明所有的样式,而归一化将保留需要的样式,只删除不需要的样式。正则化很容易使用,是一种现代技术类型。
结论
正常化和重设之间没有太大的区别,因为两者的目的是相同的,都是为了保留网站的用户界面,并使其与所有的浏览器兼容,所以网站在每个浏览器上看起来都是一样的。两者都有不同的方法,取决于用户的偏好。